Пример #1
0
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();
}
Пример #2
0
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);
}
Пример #3
0
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
}