--- np2/win9x/toolwin.cpp 2007/01/08 08:52:21 1.23 +++ np2/win9x/toolwin.cpp 2007/12/28 20:36:40 1.25 @@ -34,12 +34,7 @@ enum { IDC_TOOLPOWER, IDC_MAXITEMS, - IDC_BASE = 3000, - - IDM_SKINSEL = 3100, - IDM_SKINDEF = 3101, - IDM_SKINMRU = 3102, - IDM_TOOLCLOSE = IDM_SKINMRU + SKINMRU_MAX + IDC_BASE = 3000 }; enum { @@ -153,13 +148,13 @@ static HBITMAP skinload(const OEMCHAR *p #else const TCHAR *tchr = fname; #endif - ret = (HBITMAP)LoadImage(hInst, tchr, IMAGE_BITMAP, + ret = (HBITMAP)LoadImage(g_hInstance, tchr, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE); if (ret != NULL) { return(ret); } } - return(LoadBitmap(hInst, _T("NP2TOOL"))); + return(LoadBitmap(g_hInstance, _T("NP2TOOL"))); } @@ -457,7 +452,7 @@ static void toolwincreate(HWND hWnd) { #endif sub = CreateWindow(cls, ptext, WS_CHILD | WS_VISIBLE | style, p->posx, p->posy, p->width, p->height, - hWnd, (HMENU)(i + IDC_BASE), hInst, NULL); + hWnd, (HMENU)(i + IDC_BASE), g_hInstance, NULL); } toolwin.sub[i] = sub; toolwin.subproc[i] = NULL; @@ -562,58 +557,127 @@ static void tooldrawbutton(HWND hWnd, UI // ---- -static HMENU createskinmenu(void) { - - HMENU ret; - UINT cnt; -const OEMCHAR *base; - UINT flag; - OEMCHAR *p; +static void setSkinMruMenu(HMENU hMenu) +{ + HMENU hmenuSub; +const OEMCHAR *pcszBase; + UINT uCount; + OEMCHAR *pszMru; +const OEMCHAR *pcszMruList[SKINMRU_MAX]; UINT i; + UINT uID[SKINMRU_MAX]; UINT j; - UINT id[SKINMRU_MAX]; -const OEMCHAR *file[SKINMRU_MAX]; + UINT uFlag; - ret = CreatePopupMenu(); - AppendMenu(ret, MF_STRING, IDM_SKINSEL, str_skinsel); - AppendMenu(ret, MF_SEPARATOR, 0, NULL); - - base = np2tool.skin; - flag = (base[0] == '\0')?MF_CHECKED:0; - AppendMenu(ret, MF_STRING + flag, IDM_SKINDEF, str_skindef); - for (cnt=0; cnti; j--) { - id[j] = id[j-1]; - } - id[i] = cnt; - file[cnt] = p; + for (j=uCount; j>i; j--) + { + uID[j] = uID[j-1]; + } + uID[i] = uCount; + pcszMruList[uCount] = pszMru; } - for (i=0; ii; j--) + { + uID[j] = uID[j-1]; + } + uID[i] = uCount; + pcszMruList[uCount] = pszMru; + } + for (i=0; i