int ShowPluginMenuW2800() { if (!InfoW2800) return -1; FarMenuItem items[] = { {ghConEmuRoot ? 0 : MIF_DISABLE, InfoW2800->GetMsg(&guid_ConEmuTh,CEMenuThumbnails)}, {ghConEmuRoot ? 0 : MIF_DISABLE, InfoW2800->GetMsg(&guid_ConEmuTh,CEMenuTiles)}, {ghConEmuRoot ? 0 : MIF_DISABLE, InfoW2800->GetMsg(&guid_ConEmuTh,CEMenuTurnOff)}, {(ghConEmuRoot && (gFarVersion.Bis)) ? 0 : MIF_DISABLE, InfoW2800->GetMsg(&guid_ConEmuTh,CEMenuIcons)}, }; size_t nCount = countof(items); CeFullPanelInfo* pi = GetFocusedThumbnails(); if (!pi) { items[0].Flags |= MIF_SELECTED; } else { if (pi->PVM == pvm_Thumbnails) { items[0].Flags |= MIF_SELECTED|MIF_CHECKED; } else if (pi->PVM == pvm_Tiles) { items[1].Flags |= MIF_SELECTED|MIF_CHECKED; } else if (pi->PVM == pvm_Icons) { items[2].Flags |= MIF_SELECTED|MIF_CHECKED; } else { items[0].Flags |= MIF_SELECTED; } } #ifndef _DEBUG nCount--; #endif GUID lguid_TypeMenu = { /* f3e4df2c-7ecc-42db-ba2e-6f43f7cd9415 */ 0xf3e4df2c, 0x7ecc, 0x42db, {0xba, 0x2e, 0x6f, 0x43, 0xf7, 0xcd, 0x94, 0x15} }; int nRc = InfoW2800->Menu(&guid_ConEmuTh, &lguid_TypeMenu, -1,-1, 0, FMENU_AUTOHIGHLIGHT|FMENU_CHANGECONSOLETITLE|FMENU_WRAPMODE, InfoW2800->GetMsg(&guid_ConEmuTh,2), NULL, NULL, NULL, NULL, (FarMenuItem*)items, nCount); return nRc; }
int ShowPluginMenuA() { if (!InfoA) return -1; FarMenuItemEx items[] = { {MIF_USETEXTPTR | (ghConEmuRoot ? 0 : MIF_DISABLE)}, {MIF_USETEXTPTR | (ghConEmuRoot ? 0 : MIF_DISABLE)}, {MIF_USETEXTPTR | (ghConEmuRoot ? 0 : MIF_DISABLE)}, {MIF_DISABLE /*MIF_USETEXTPTR | (ghConEmuRoot ? 0 : MIF_DISABLE)*/}, }; items[0].Text.TextPtr = InfoA->GetMsg(InfoA->ModuleNumber,CEMenuThumbnails); items[1].Text.TextPtr = InfoA->GetMsg(InfoA->ModuleNumber,CEMenuTiles); items[2].Text.TextPtr = InfoA->GetMsg(InfoA->ModuleNumber,CEMenuTurnOff); items[3].Text.TextPtr = InfoA->GetMsg(InfoA->ModuleNumber,CEMenuIcons); int nCount = sizeof(items)/sizeof(items[0]); CeFullPanelInfo* pi = GetFocusedThumbnails(); if (!pi) { items[0].Flags |= MIF_SELECTED; } else { if (pi->PVM == pvm_Thumbnails) { items[0].Flags |= MIF_SELECTED|MIF_CHECKED; } else if (pi->PVM == pvm_Tiles) { items[1].Flags |= MIF_SELECTED|MIF_CHECKED; } else if (pi->PVM == pvm_Icons) { items[2].Flags |= MIF_SELECTED|MIF_CHECKED; } else { items[0].Flags |= MIF_SELECTED; } } #ifndef _DEBUG nCount--; #endif int nRc = InfoA->Menu(InfoA->ModuleNumber, -1,-1, 0, FMENU_USEEXT|FMENU_AUTOHIGHLIGHT|FMENU_CHANGECONSOLETITLE|FMENU_WRAPMODE, InfoA->GetMsg(InfoA->ModuleNumber,2), NULL, NULL, NULL, NULL, (FarMenuItem*)items, nCount); return nRc; }