Beispiel #1
0
static GtkTreeModel *
create_items_model (void)
{
  gint i = 0;
  GtkListStore *model;
  GtkTreeIter iter;

  /* create array */
  articles = g_array_sized_new (FALSE, FALSE, sizeof (Item), 1);

  add_items ();

  /* create list store */
  model = gtk_list_store_new (NUM_ITEM_COLUMNS, G_TYPE_INT, G_TYPE_STRING,
                              G_TYPE_INT, G_TYPE_BOOLEAN);

  /* add items */
  for (i = 0; i < articles->len; i++)
    {
      gtk_list_store_append (model, &iter);

      gtk_list_store_set (model, &iter,
                          COLUMN_ITEM_NUMBER,
                          g_array_index (articles, Item, i).number,
                          COLUMN_ITEM_PRODUCT,
                          g_array_index (articles, Item, i).product,
                          COLUMN_ITEM_YUMMY,
                          g_array_index (articles, Item, i).yummy,
                          -1);
    }

  return GTK_TREE_MODEL (model);
}
Beispiel #2
0
static int btn_click1(Button* btn) {
   if(g_lv.n != g_lv.root) {
      g_lv.n = g_lv.n->p;
      add_items();
   } 
   return 0;
}
Beispiel #3
0
static __inline__ void check_sub_nodes(BBOX_TREE* bbox_tree, Uint32 sub_node, Uint32 in_mask)
{
	Uint32 out_mask, result, idx;

	if (sub_node != NO_INDEX)
	{
		idx = bbox_tree->cur_intersect_type;
		result = check_aabb_in_frustum(bbox_tree->nodes[sub_node].bbox, bbox_tree->intersect[idx].frustum, in_mask, &out_mask);
		if (result == INSIDE)
		{
			add_intersect_items(bbox_tree, bbox_tree->nodes[sub_node].items_index, bbox_tree->nodes[sub_node].items_count);
			add_dyn_intersect_items(bbox_tree, sub_node, bbox_tree->nodes[sub_node].dynamic_objects.index);
		}
		else
		{
			if (result == INTERSECT)
			{
				add_dyn_items(bbox_tree, sub_node, out_mask);
				if (	(bbox_tree->nodes[sub_node].nodes[0] == NO_INDEX) &&
					(bbox_tree->nodes[sub_node].nodes[1] == NO_INDEX)) add_items(bbox_tree, sub_node, out_mask);
				else
				{
					check_sub_nodes(bbox_tree, bbox_tree->nodes[sub_node].nodes[0], out_mask);
					check_sub_nodes(bbox_tree, bbox_tree->nodes[sub_node].nodes[1], out_mask);
				}
			}
		}
	}
}
Beispiel #4
0
static int read_file_info(unzFile uf) {
   unz_file_info fi;
   memset( &fi, 0, sizeof(fi));
   g_lv.unz = uf;
   const unsigned int MAX_COMMENT = 256;
   char fname[MAX_PATH + 1];
   char comment[MAX_COMMENT + 1];   
   unzGoToFirstFile(uf);

   do {
      if (unzGetCurrentFileInfo(uf, &fi, fname, MAX_PATH, NULL, 0, comment, MAX_COMMENT) != UNZ_OK) {
         return -1;
      }
      node* n = new node;
      std::wstring path = utf8util::UTF16FromUTF8(fname);
      wchar_t time[32];
      ::wsprintf(time, L"%d/%d/%d %d:%d", 
         fi.tmu_date.tm_year, fi.tmu_date.tm_mon, fi.tmu_date.tm_mday,
         fi.tmu_date.tm_hour, fi.tmu_date.tm_min);
      n->size = fi.uncompressed_size;
      n->tm = fi.tmu_date;
      n->sz = format_thousands_separator(n->size/1024+1);
      n->sz += L" KB";
      n->time = time;
      n->path = path;
      add_node(n, path);
   } while (unzGoToNextFile(uf) == UNZ_OK);
   add_items();

   return 0;
}
wxSizer* create_row(OuterSpacing os,
  ItemSpacing is,
  const std::vector<SizerItem>& items)
{
  wxBoxSizer* row = new wxBoxSizer(wxHORIZONTAL);
  add_items(*row, os, is, items);
  return row;
}
wxSizer* create_column(OuterSpacing os,
  ItemSpacing is,
  const std::vector<SizerItem>& items)
{
  wxBoxSizer* column = new wxBoxSizer(wxVERTICAL);
  add_items(*column, os, is, items);
  return column;
}
BaseGroupItem::BaseGroupItem(
    EntityEditorContext&    editor_context,
    const UniqueID          class_uid,
    BaseGroup&              base_group)
  : ItemBase(editor_context, class_uid)
{
    add_items(base_group);
}
	void playlist_switcher_t::refresh_all_items()
	{
		remove_items(bit_array_true(), false);

		add_items(0, m_playlist_api->get_playlist_count());

		t_size index = m_playlist_api->get_active_playlist();
		if (index != pfc_infinite)
			set_item_selected_single(index, false);
	}
ObjectInstanceCollectionItem::ObjectInstanceCollectionItem(
    Assembly&                   assembly,
    ObjectInstanceContainer&    object_instances,
    ProjectBuilder&             project_builder)
  : CollectionItemBase<ObjectInstance>(g_class_uid, "Object Instances")
  , m_assembly(assembly)
  , m_project_builder(project_builder)
{
    add_items(object_instances);
}
TextureCollectionItem::TextureCollectionItem(
    EntityEditorContext&    editor_context,
    TextureContainer&       textures,
    BaseGroup&              parent,
    BaseGroupItem*          parent_item)
    : CollectionItemBase<Texture>(editor_context, g_class_uid, "Textures")
    , m_parent(parent)
    , m_parent_item(parent_item)
{
    add_items(textures);
}
ObjectCollectionItem::ObjectCollectionItem(
    EntityEditorContext&    editor_context,
    ObjectContainer&        objects,
    Assembly&               parent,
    AssemblyItem*           parent_item)
  : CollectionItemBase<Object>(editor_context, g_class_uid, "Objects")
  , m_parent(parent)
  , m_parent_item(parent_item)
{
    add_items(objects);
}
AssemblyCollectionItem::AssemblyCollectionItem(
    EntityEditorContext&    editor_context,
    AssemblyContainer&      assemblies,
    BaseGroup&              parent,
    BaseGroupItem*          parent_item)
  : CollectionItemBase<Assembly>(editor_context, g_class_uid, "Assemblies")
  , m_parent(parent)
  , m_parent_item(parent_item)
{
    add_items(assemblies);
}
MaterialCollectionItem::MaterialCollectionItem(
    EntityEditorContext&    editor_context,
    MaterialContainer&      materials,
    Assembly&               parent,
    AssemblyItem*           parent_item)
  : Base(editor_context, g_class_uid, "Materials", parent, parent_item)
  , m_parent(parent)
  , m_parent_item(parent_item)
{
    add_items(materials);
}
AssemblyCollectionItem::AssemblyCollectionItem(
    Scene&              scene,
    AssemblyContainer&  assemblies,
    ProjectBuilder&     project_builder,
    ParamArray&         settings)
  : CollectionItemBase<Assembly>(g_class_uid, "Assemblies")
  , m_scene(scene)
  , m_project_builder(project_builder)
  , m_settings(settings)
{
    add_items(assemblies);
}
AssemblyInstanceCollectionItem::AssemblyInstanceCollectionItem(
    AssemblyInstanceContainer&  assembly_instances,
    BaseGroup&                  parent,
    BaseGroupItem*              parent_item,
    ProjectBuilder&             project_builder)
  : CollectionItemBase<AssemblyInstance>(g_class_uid, "Assembly Instances")
  , m_parent(parent)
  , m_parent_item(parent_item)
  , m_project_builder(project_builder)
{
    add_items(assembly_instances);
}
ObjectInstanceCollectionItem::ObjectInstanceCollectionItem(
    ObjectInstanceContainer&    object_instances,
    Assembly&                   parent,
    AssemblyItem*               parent_item,
    ProjectBuilder&             project_builder)
  : CollectionItemBase<ObjectInstance>(g_class_uid, "Object Instances")
  , m_parent(parent)
  , m_parent_item(parent_item)
  , m_project_builder(project_builder)
{
    add_items(object_instances);
}
TextureCollectionItem::TextureCollectionItem(
    TextureContainer&   textures,
    BaseGroup&          parent,
    BaseGroupItem*      parent_item,
    ProjectBuilder&     project_builder,
    ParamArray&         settings)
  : CollectionItemBase<Texture>(g_class_uid, "Textures")
  , m_parent(parent)
  , m_parent_item(parent_item)
  , m_project_builder(project_builder)
  , m_settings(settings)
{
    add_items(textures);
}
AssemblyCollectionItem::AssemblyCollectionItem(
    AssemblyContainer&  assemblies,
    BaseGroup&          parent,
    BaseGroupItem*      parent_item,
    ProjectBuilder&     project_builder,
    ParamArray&         settings)
  : CollectionItemBase<Assembly>(g_class_uid, "Assemblies")
  , m_parent(parent)
  , m_parent_item(parent_item)
  , m_project_builder(project_builder)
  , m_settings(settings)
{
    add_items(assemblies);
}
Beispiel #19
0
bool RseObtainAskForHelp::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
    ::google::protobuf::uint32 tag;
    while ((tag = input->ReadTag()) != 0) {
        switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
        // repeated .Items items = 1;
        case 1: {
            if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
                    ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
                goto handle_uninterpreted;
            }
parse_items:
            DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                    input, add_items()));
            if (input->ExpectTag(10)) goto parse_items;
            if (input->ExpectTag(18)) goto parse_units;
            break;
        }

        // repeated .Units units = 2;
        case 2: {
            if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
                    ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
                goto handle_uninterpreted;
            }
parse_units:
            DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                    input, add_units()));
            if (input->ExpectTag(18)) goto parse_units;
            if (input->ExpectAtEnd()) return true;
            break;
        }

        default: {
handle_uninterpreted:
            if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
                    ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
                return true;
            }
            DO_(::google::protobuf::internal::WireFormat::SkipField(
                    input, tag, mutable_unknown_fields()));
            break;
        }
        }
    }
    return true;
#undef DO_
}
Beispiel #20
0
static int btn_click3(Button* btn) {
   if (!g_lv.dok) {
      return 0;
   }

   int style = ::SendMessage(g_lv.lv, LVM_GETVIEW, 0, 0);
   if (style == LV_VIEW_DETAILS) {
      ::SendMessage(g_lv.lv, LVM_SETVIEW, LV_VIEW_TILE, 0);
   } else if (style == LV_VIEW_TILE) {
      ::SendMessage(g_lv.lv, LVM_SETVIEW, LV_VIEW_ICON, 0);
   } else if (style == LV_VIEW_ICON) {
      ::SendMessage(g_lv.lv, LVM_SETVIEW, LV_VIEW_LIST, 0);
   } else if (style == LV_VIEW_LIST) {
      ::SendMessage(g_lv.lv, LVM_SETVIEW, LV_VIEW_DETAILS, 0);
   }
   add_items();
   return 0;
}
Beispiel #21
0
void Room::load(InputStream *stream, int notebook_version, NaturalLanguage language) {
   if (stream->get() != ROOM_MARKER) {
		log(S(IDS_BAD_ROOM_IN_CITY_FILE),FALSE,TRUE);
      return;
   };
   Sprite *saved_wall_decoration = load_item(stream,notebook_version,language);
   if (saved_wall_decoration != NULL) {
		saved_wall_decoration->recursively_propagate_changes(); // new on 160601 to get offsets right
		set_wall_decoration_sprite(saved_wall_decoration);
//		Sprites *remaining = saved_wall_decoration->pointer_to_followers();
//		while (remaining != NULL) {
//			Sprite *sprite = remaining->first();
//			position_and_add_to_wall(Sprite *wall_remote, Sprite *addition, Room *room)
	};
   Sprites *floor_items = load_items(stream,notebook_version,language);
   if (floor_items != NULL) {
      add_items(floor_items);
		floor_items->recursively_propagate_changes();
      floor_items->activate();
      floor_items->remove_all();
      delete floor_items;
   };
};
Beispiel #22
0
static int btn_click2(Button* btn) {
   g_lv.n = g_lv.root;
   add_items();
   return 0;
}
Beispiel #23
0
//
//  函数: WndProc(HWND, UINT, WPARAM, LPARAM)
//
//  目的: 处理主窗口的消息。
//
//  WM_COMMAND	- 处理应用程序菜单
//  WM_PAINT	- 绘制主窗口
//  WM_DESTROY	- 发送退出消息并返回
//
//
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
	int wmId, wmEvent;
	PAINTSTRUCT ps;
	HDC hdc;

	switch (message)
	{
	case WM_COMMAND:
		wmId    = LOWORD(wParam);
		wmEvent = HIWORD(wParam);
		// 分析菜单选择:
		switch (wmId)
		{
		case IDM_ABOUT:
			DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
			break;
		case IDM_EXIT:
			DestroyWindow(hWnd);
			break;
		default:
			return DefWindowProc(hWnd, message, wParam, lParam);
		}
		break;
	case WM_PAINT:
		hdc = BeginPaint(hWnd, &ps);
		// TODO: 在此添加任意绘图代码...
		EndPaint(hWnd, &ps);
		break;
   case WM_NOTIFY:
      {
         switch (((LPNMHDR)lParam)->code) {
         case NM_DBLCLK:
            {
               LPNMITEMACTIVATE lpnmitem = (LPNMITEMACTIVATE)lParam;
               int i = lpnmitem->iItem;
               if (i < 0) {
                  break;
               }
               node* n = g_lv.n->childs[i];
               if (n->type == 0) {
                  g_lv.n = n;
                  add_items();
               } 
               if (n->type == 1) {
                  open_exp(hWnd, n, 300, 200, 600, 500);
               }
               ::InvalidateRect(hWnd, NULL, TRUE);
            }
            break;
         case LVN_COLUMNCLICK:
            {
               LPNMLISTVIEW pnm = (LPNMLISTVIEW)lParam;
               ListView_SortItems(g_lv.lv, cmp_fn,(LPARAM)pnm->iSubItem);
               g_lv.sort = !g_lv.sort;

            }
            break;
        } // switch (((LPNMHDR)lParam)->code)
      }
      break;
   case WM_SIZE:
      do_size(hWnd, LOWORD(lParam), HIWORD(lParam));
      break;
   case WM_ERASEBKGND:
      break;
   case WM_GETMINMAXINFO:
      {
         LPMINMAXINFO mm = (LPMINMAXINFO)lParam;
         mm->ptMinTrackSize.x = 640;
         mm->ptMinTrackSize.y = 480;
      }
      break;
	case WM_DESTROY:
		PostQuitMessage(0);
		break;
	default:
		return DefWindowProc(hWnd, message, wParam, lParam);
	}
	return 0;
}
Beispiel #24
0
		virtual void add_required_panels(const pfc::list_base_const_t<GUID> & panels)
		{
			add_items(panels);
		}