void AGE_Frame::OnSoundItemsInsert(wxCommandEvent &Event) { auto selections = Sounds_Items_List->GetSelections(Items); if(selections < 1) return; wxBusyCursor WaitCursor; InsertToList(GenieFile->Sounds[SoundIDs[0]].Items, SoundItemIDs[0]); ListSoundItems(); }
TApiStatus GetEmptyFilter(TFilterData** filter) { *filter = (TFilterData*)(malloc(sizeof(TFilterData))); if(*filter == NULL) { PrintErrorMessage("GetEmptyFilter", "malloc"); return API_ERROR; } (*filter)->src_ip = NULL; (*filter)->src_mask = NONDEF; (*filter)->dst_ip = NULL; (*filter)->dst_mask = NONDEF; (*filter)->src_port = NONDEF; (*filter)->dst_port = NONDEF; (*filter)->l3_protocol = ONEP_PROTOCOL_ALL; (*filter)->protocol = NONE; (*filter)->default_filter = false; return InsertToList(*filter); }
BOOL OUAssetsTabDlg::OnInitDialog() { CDialog::OnInitDialog(); m_AssetsImages.Create(64, 64, ILC_COLOR32 /** | ILC_MASK */, 0, 4); m_AssetsList.SetImageList(&m_AssetsImages, LVSIL_NORMAL); m_AssetsList.SetBkColor(0x000000); m_AssetsList.SetTextBkColor(0x000000); m_AssetsList.SetTextColor(0xffffff); //m_AssetsList.SetExtendedStyle(m_AssetsList.GetExtendedStyle()); /** 载入资源 */ vector<string> filenames; static char name[512]; OUFileList(m_szPath.GetBuffer(), m_arrExts, filenames); OUStringFunc func1, func2; /** 寻找每个文件的合法性 */ for(int i = 0; i < filenames.size(); i++) { bool flag = false; func1 = filenames[i]; func1.ToUppercase(); /** 是否桌子 */ if(m_emLayer == OUASSETSTAB_LAYER::OUAT_BUILDING) { for(int j = 1; j <= 10; j++) { sprintf(name, "table%d.ini", j); func2.SetString(string(name)); func2.ToUppercase(); if(func1.GetString() == func2.GetString()) { flag = true; OUASSETSITEM item; item.filename = func2.GetString(); item.id = 2147483647 - j + 1; /** 载入图片资源 */ OUIniFile ini(string("tile\\building\\" + func2.GetString()).c_str()); CString path = "tile\\table\\"; item.img = new CImage(); item.img->Load(path + ini.GetString("table", "img").c_str()); item.bitmap = ScaleBitmap(item.img, 64, 64); /** 加入list */ item.imgid = m_AssetsImages.Add(item.bitmap, 0xff00ff); InsertToList(item); m_Items[item.id] = item; break; } } if(flag) continue; } /** ID从1到MAXID枚举 */ for(int j = 1; j <= OUASSETS_MAXID; j++) { sprintf(name, m_szFormat, j); /** 贴上后缀 */ for(int k = 0; k < m_arrExts.size(); k++) { func2.SetString(name + m_arrExts[k]); func2.ToUppercase(); /** 若文件名合法 */ if(func1.GetString() == func2.GetString()) { flag = true; if(m_Items.find(j) == m_Items.end()) { OUASSETSITEM item; item.filename = func1.GetString(); item.id = j; /** 载入图片资源 */ item.img = new CImage(); item.img->Load(m_szPath + func1.GetString().c_str()); item.bitmap = ScaleBitmap(item.img, 64, 64); /** 加入ImageList */ item.imgid = m_AssetsImages.Add(item.bitmap, 0xff00ff); /** 存入Map */ InsertToList(item); m_Items[item.id] = item; } break; } } if(flag) break; } } /** 资源数 */ sprintf(name, "资源数:%d", m_Items.size()); m_AssetsCount.SetWindowText(name); return TRUE; // return TRUE unless you set the focus to a control // 异常: OCX 属性页应返回 FALSE }