MRESULT _System DrvMountDrivesDlg( HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2) { if (msg == WM_TIMER && mp1 == (MP)CAM_LVMTMR) { HEV hev = WinQueryWindowULong( hwnd, QWL_USER); if (!WinWaitEventSem( hev, 0)) WinSendMsg( hwnd, WM_COMMAND, (MP)CAM_LVMTMR, 0); return (0); } if (msg == WM_COMMAND || msg == WM_SYSCOMMAND) { ULONG ulChk; if (!WinStopTimer( 0, hwnd, CAM_LVMTMR)) printf( "DrvMountDrivesDlg - WinStopTimer\n"); ulChk = (ULONG)WinSendDlgItemMsg( hwnd, IDC_AUTOMOUNT, BM_QUERYCHECK, 0, 0); DrvSetUseLvm( WinQueryWindow( hwnd, QW_OWNER), ulChk); WindowClosed( WinQueryWindowUShort( hwnd, QWS_ID)); WinDismissDlg( hwnd, (mp1 == (MP)CAM_LVMTMR)); return (0); } if (msg == WM_INITDLG) { HEV hev = (HEV)mp2; WinSetWindowULong( hwnd, QWL_USER, hev); LoadDlgStrings( hwnd, nlsMountDlg); WinSendDlgItemMsg( hwnd, IDC_AUTOMOUNT, BM_SETCHECK, (MP)(CAMDRV_IS_NOLVM ? 0 : 1), 0); ShowDialog( hwnd, 0); if (!WinWaitEventSem( hev, 0)) { WindowClosed( WinQueryWindowUShort( hwnd, QWS_ID)); WinDismissDlg( hwnd, TRUE); } else if (!WinStartTimer( 0, hwnd, CAM_LVMTMR, 250)) printf( "DrvMountDrivesDlg - WinStartTimer\n"); return (0); } if (msg == WM_FOCUSCHANGE) { if (SHORT1FROMMP(mp2) && !WinIsWindowEnabled( hwnd)) { WinPostMsg( WinQueryWindow( hwnd, QW_OWNER), CAMMSG_FOCUSCHANGE, 0, 0); return (0); } } return (WinDefDlgProc( hwnd, msg, mp1, mp2)); }
MRESULT _System DrvEjectAllDlg( HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2) { switch (msg) { case WM_INITDLG: DrvInitEjectAllDlg( hwnd, mp2); return (0); case WM_SAVEAPPLICATION: WinStoreWindowPos( CAMINI_APP, CAMINI_EJECTPOS, hwnd); return (0); case WM_SYSCOMMAND: if (SHORT1FROMMP( mp1) == SC_CLOSE) return (WinSendMsg( hwnd, WM_COMMAND, (MP)IDC_NO, 0)); break; case WM_COMMAND: if (mp1 == (MP)IDC_YES) { WinEnableWindow( WinWindowFromID( hwnd, IDC_YES), FALSE); WinEnableWindow( WinWindowFromID( hwnd, IDC_NO), FALSE); LoadDlgItemString( hwnd, IDC_TEXT1, MSG_Ejecting); LoadDlgItemString( hwnd, IDC_TEXT4, MSG_ThisMayTake); DrvEjectAllDrives( hwnd); } WindowClosed( WinQueryWindowUShort( hwnd, QWS_ID)); WinDestroyWindow( hwnd); return (0); case WM_FOCUSCHANGE: if (SHORT1FROMMP(mp2) && !WinIsWindowEnabled( hwnd)) { WinPostMsg( WinQueryWindow( hwnd, QW_OWNER), CAMMSG_FOCUSCHANGE, 0, 0); return (0); } break; case WM_DESTROY: WinPostMsg( WinQueryWindow( hwnd, QW_OWNER), CAMMSG_EXIT, (MP)TRUE, 0); break; } return (WinDefDlgProc( hwnd, msg, mp1, mp2)); }
// ========== // PUBLIC // ========== WMSession::WMSession(){ if(DEBUG){ qDebug() << "Creating Event Filter..."; } EFILTER = new EventFilter(); if(DEBUG){ qDebug() << "Creating Screen Saver..."; } SS = new LScreenSaver(); if(DEBUG){ qDebug() << "Creating Window Manager..."; } WM = new LWindowManager(); EVThread = new QThread(); EFILTER->moveToThread(EVThread); //Setup connections connect(EFILTER, SIGNAL(NewInputEvent()), SS, SLOT(newInputEvent()) ); connect(EFILTER, SIGNAL(NewManagedWindow(WId)), WM, SLOT(NewWindow(WId)) ); connect(EFILTER, SIGNAL(WindowClosed(WId)), WM, SLOT(ClosedWindow(WId)) ); connect(EFILTER, SIGNAL(ModifyWindow(WId, LWM::WindowAction)), WM, SLOT(ModifyWindow(WId,LWM::WindowAction)) ); connect(SS, SIGNAL(StartingScreenSaver()), EFILTER, SLOT(StartedSS()) ); connect(SS, SIGNAL(ClosingScreenSaver()), EFILTER, SLOT(StoppedSS()) ); connect(WM, SIGNAL(NewFullScreenWindows(QList<WId>)), EFILTER, SLOT(FullScreenChanged(QList<WId>)) ); }
void DrvInitEjectAllDlg( HWND hwnd, MPARAM mp2) { SHORT ndx; HWND hList; ULONG ctr; ULONG cntDrives = 0; char achDrives[CAM_MAXMSD+1]; char szText[256]; cntDrives = DrvMapDrives( achDrives); if (cntDrives) cntDrives = DrvValidateDrives( achDrives, cntDrives); if (!cntDrives) { WindowClosed( WinQueryWindowUShort( hwnd, QWS_ID)); WinDestroyWindow( hwnd); return; } LoadDlgStrings( hwnd, nlsEjectAllDlg); hList = WinWindowFromID( hwnd, IDC_CAMLIST); for (ctr = 0; ctr < CAM_MAXMSD && achDrives[ctr]; ctr++) { DrvGetDriveName( achDrives[ctr], szText); ndx = SHORT1FROMMR( WinSendMsg( hList, LM_INSERTITEM, (MP)LIT_END, (MP)szText)); WinSendMsg( hList, LM_SETITEMHANDLE, MPFROM2SHORT( ndx, 0), MPFROM2SHORT( achDrives[ctr], 0)); WinSendMsg( hList, LM_SELECTITEM, MPFROM2SHORT( ndx, 0), (MP)TRUE); } ShowDialog( hwnd, CAMINI_EJECTPOS); if (CAMDRV_IS_ALWAYSEJECT) WinPostMsg( hwnd, WM_COMMAND, (MP)IDC_YES, 0); return; }
void QWidgetWithCloseSignal::closeEvent(QCloseEvent *e) { emit WindowClosed(this); }
void CContextOSX::CloseWindow(void* pWnd) { WindowClosed(pWnd); ::DisposeWindow((WindowPtr)pWnd); }