void menuChooseProfile(uint8_t flags) { if (flags & INTERFACE_MENU_INITIALIZE) { menuCreate(&s_menu, MENU_CHOOSEPROFILE_COUNT, &menuChooseProfileGetString, INTERFACE_MENU_LAST_TIMER); menuSelectOption(&s_menu, (s_selectedProfile == 0xFF ? MENU_CHOOSEPROFILE_NONE : s_selectedProfile)); } menuWrite(&s_menu); if (interfaceHandleButtonPressed(INTERFACE_BUTTON_SELECT)) { uint8_t currentOption = menuGetCurrentOption(&s_menu); if (currentOption != MENU_CHOOSEPROFILE_CANCEL) { s_selectedProfile = (currentOption == MENU_CHOOSEPROFILE_NONE ? 0xFF : currentOption); } interfaceMenuPrevious(); } else if (interfaceHandleButtonPressed(INTERFACE_BUTTON_UP)) { menuPreviousOption(&s_menu); } else if (interfaceHandleButtonPressed(INTERFACE_BUTTON_DOWN)) { menuNextOption(&s_menu); } }
CLoginButton::CLoginButton(QWidget *parent) : QToolButton(parent), isLoggedIn(false) { setPopupMode(QToolButton::InstantPopup); menuCreate(); serverNoResponse.setSingleShot(true); connect(&serverNoResponse, &QTimer::timeout, this, &CLoginButton::sendNoResponse); }
// Init the screen window (create it) int scrnInit() { if (hScrnWnd) { return 0; } if (scrnRegister() != 0) { FBAPopupAddText(PUF_TEXT_DEFAULT, MAKEINTRESOURCE(IDS_ERR_UI_WINDOW)); FBAPopupDisplay(PUF_TYPE_ERROR); return 1; } DWORD nWindowStyles, nWindowExStyles; if (nVidFullscreen) { nWindowStyles = WS_POPUP; nWindowExStyles = 0; } else { if (bMenuEnabled) { nWindowStyles = WS_OVERLAPPEDWINDOW; nWindowExStyles = 0; } else { nWindowStyles = WS_MINIMIZEBOX | WS_POPUP | WS_SYSMENU | WS_THICKFRAME; nWindowExStyles = WS_EX_CLIENTEDGE; } } hScrnWnd = CreateWindowEx(nWindowExStyles, szClass, _T(APP_TITLE), nWindowStyles, 0, 0, 0, 0, NULL, NULL, hAppInst, NULL); if (hScrnWnd == NULL) { scrnExit(); FBAPopupAddText(PUF_TEXT_DEFAULT, MAKEINTRESOURCE(IDS_ERR_UI_WINDOW)); FBAPopupDisplay(PUF_TYPE_ERROR); return 1; } if (!nVidFullscreen) { // enable drag & drop DragAcceptFiles(hScrnWnd, TRUE); // Create the menu toolbar itself menuCreate(); scrnTitle(); scrnSize(); } return 0; }
// ==> switch fullscreen, added by regret int scrnSwitchFull() { if (!hScrnWnd) { return 1; } DWORD styles, exStyles; if (nVidFullscreen) { styles = WS_POPUP; exStyles = 0; SetWindowLongPtr(hScrnWnd, GWL_STYLE, styles); SetWindowLongPtr(hScrnWnd, GWL_EXSTYLE, exStyles); SetMenu(hScrnWnd, NULL); bFakeFullscreen = false; } else { if (bMenuEnabled) { styles = WS_OVERLAPPEDWINDOW; exStyles = 0; } else { styles = WS_MINIMIZEBOX | WS_POPUP | WS_SYSMENU | WS_THICKFRAME; exStyles = WS_EX_CLIENTEDGE; } SetWindowLongPtr(hScrnWnd, GWL_STYLE, styles); SetWindowLongPtr(hScrnWnd, GWL_EXSTYLE, exStyles); menuCreate(); if (bMenuEnabled) { SetMenu(hScrnWnd, hMainMenu); } else { SetMenu(hScrnWnd, NULL); } scrnTitle(); scrnSize(); ShowWindow(hScrnWnd, SW_NORMAL); } VidReinit(); GameInpCheckMouse(); return 0; }
// fake fullscreen int scrnFakeFullscreen() { if (!hScrnWnd) { return 1; } if (nVidFullscreen) { return 0; } bFakeFullscreen = !bFakeFullscreen; DWORD styles, exStyles; if (bFakeFullscreen) { styles = WS_POPUP; exStyles = 0; SetWindowLongPtr(hScrnWnd, GWL_STYLE, styles); SetWindowLongPtr(hScrnWnd, GWL_EXSTYLE, exStyles); SetMenu(hScrnWnd, NULL); // set screen size int width = GetSystemMetrics(SM_CXSCREEN); int height = GetSystemMetrics(SM_CYSCREEN); MoveWindow(hScrnWnd, 0, 0, width, height, TRUE); if (bDrvOkay && bShowOnTop) { SetWindowPos(hScrnWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_SHOWWINDOW | SWP_NOMOVE); } // hide the cursor // while (ShowCursor(FALSE) >= 0) {} ShowWindow(hScrnWnd, SW_NORMAL); } else { if (bMenuEnabled) { styles = WS_OVERLAPPEDWINDOW; exStyles = 0; } else { styles = WS_MINIMIZEBOX | WS_POPUP | WS_SYSMENU | WS_THICKFRAME; exStyles = WS_EX_CLIENTEDGE; } SetWindowLongPtr(hScrnWnd, GWL_STYLE, styles); SetWindowLongPtr(hScrnWnd, GWL_EXSTYLE, exStyles); menuCreate(); if (bMenuEnabled) { SetMenu(hScrnWnd, hMainMenu); } else { SetMenu(hScrnWnd, NULL); } scrnTitle(); scrnSize(); ShowWindow(hScrnWnd, SW_MAXIMIZE); // refresh ShowWindow(hScrnWnd, SW_NORMAL); // show the cursor // while (ShowCursor(TRUE) < 0) {} } VidReinit(); return 0; }
static void load(Window *window) { iconsCreate(); menuCreate(); layerCreate(window); }