static HWND qt_wce_create_menubar(HWND parentHandle, HINSTANCE resourceHandle, int toolbarID, int flags = 0) { resolveAygLibs(); if (ptrCreateMenuBar) { qt_SHMENUBARINFO mbi; memset(&mbi, 0, sizeof(qt_SHMENUBARINFO)); mbi.cbSize = sizeof(qt_SHMENUBARINFO); mbi.hwndParent = parentHandle; mbi.hInstRes = resourceHandle; mbi.dwFlags = flags; mbi.nToolBarId = toolbarID; if (ptrCreateMenuBar(&mbi)) { #ifdef Q_OS_WINCE_WM // Tell the menu bar that we want to override hot key behaviour. LPARAM lparam = MAKELPARAM(SHMBOF_NODEFAULT | SHMBOF_NOTIFY, SHMBOF_NODEFAULT | SHMBOF_NOTIFY); SendMessage(mbi.hwndMB, SHCMBM_OVERRIDEKEY, VK_TBACK, lparam); #endif return mbi.hwndMB; } } return 0; }
void qt_wince_full_screen(HWND hwnd, bool fullScreen, UINT swpf) { resolveAygLibs(); if (fullScreen) { QRect r = qApp->desktop()->screenGeometry(QWidget::find(hwnd)); SetWindowPos(hwnd, HWND_TOP, r.left(), r.top(), r.width(), r.height(), swpf); if (ptrAygFullScreen) ptrAygFullScreen(hwnd, SHFS_HIDETASKBAR | SHFS_HIDESIPBUTTON | SHFS_HIDESTARTICON); if (!qt_wince_is_mobile()) { HWND handle = FindWindow(L"HHTaskBar", L""); if (handle) { ShowWindow(handle, 0); EnableWindow(handle, false); } } } else { if (ptrAygFullScreen) ptrAygFullScreen(hwnd, SHFS_SHOWTASKBAR | SHFS_SHOWSIPBUTTON | SHFS_SHOWSTARTICON); SetWindowPos(hwnd, 0, 0, 0, 0, 0, swpf); if (!qt_wince_is_mobile()) { HWND handle = FindWindow(L"HHTaskBar", L""); if (handle) { ShowWindow(handle, 1); EnableWindow(handle, true); } } } }
void qt_wince_show_SIP(bool show) { resolveAygLibs(); if (!ptrAygSHSipInfo) return; AygSIPINFO si; memset(&si, 0, sizeof(si)); si.cbSize = sizeof(si); ptrAygSHSipInfo(SPI_GETSIPINFO, 0, &si, 0); si.cbSize = sizeof(si); si.fdwFlags = (show ? SIPF_ON : SIPF_OFF); ptrAygSHSipInfo(SPI_SETSIPINFO, 0, &si, 0); }
void qt_wince_maximize(QWidget *widget) { HWND hwnd = widget->winId(); if (qt_wince_is_mobile()) { AygSHINITDLGINFO shidi; shidi.dwMask = SHIDIM_FLAGS; shidi.hDlg = hwnd; shidi.dwFlags = SHIDIF_SIZEDLGFULLSCREEN; if (widget->windowFlags() & Qt::WindowCancelButtonHint) shidi.dwFlags |= SHIDIF_CANCELBUTTON; if (widget->windowFlags() & Qt::WindowOkButtonHint) shidi.dwFlags |= SHIDIF_DONEBUTTON; resolveAygLibs(); if (ptrAygInitDialog) ptrAygInitDialog(&shidi); } else { RECT r; SystemParametersInfo(SPI_GETWORKAREA, 0, &r, 0); MoveWindow(hwnd, r.top, r.left, r.right - r.left, r.bottom - r.top, true); SetWindowLong(hwnd, GWL_EXSTYLE, GetWindowLong (hwnd, GWL_EXSTYLE) | WS_EX_NODRAG); } }
static void qt_wce_disable_soft_key(HWND handle, uint command) { resolveAygLibs(); if (ptrEnableSoftKey) ptrEnableSoftKey(handle, command, false, false); }