From: Jon K. <em...@us...> - 2005-05-20 04:40:35
|
Update of /cvsroot/licq/qt-gui/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4615 Modified Files: awaymsgdlg.cpp awaymsgdlg.h mainwin.cpp mainwin.h Log Message: Update to not use the timer when we are just changing the auto response. Patch by the original author. Index: awaymsgdlg.cpp =================================================================== RCS file: /cvsroot/licq/qt-gui/src/awaymsgdlg.cpp,v retrieving revision 1.56 retrieving revision 1.57 diff -u -d -r1.56 -r1.57 --- awaymsgdlg.cpp 9 May 2005 23:41:59 -0000 1.56 +++ awaymsgdlg.cpp 20 May 2005 04:40:03 -0000 1.57 @@ -105,12 +105,19 @@ l->addSpacing(20); l->addWidget(btnOk); l->addWidget(btnCancel); + + m_autocloseCounter = -1; + installEventFilter(this); + mleAwayMsg->installEventFilter(this); + connect(mleAwayMsg, SIGNAL(clicked(int, int)), SLOT(slot_autocloseStop())); + connect(mnuSelect, SIGNAL(aboutToShow()), SLOT(slot_autocloseStop())); + connect(btnHints, SIGNAL(clicked()), SLOT(slot_autocloseStop())); } // ----------------------------------------------------------------------------- -void AwayMsgDlg::SelectAutoResponse(unsigned short _status) +void AwayMsgDlg::SelectAutoResponse(unsigned short _status, bool autoclose) { if((_status & 0xFF) == ICQ_STATUS_ONLINE || _status == ICQ_STATUS_OFFLINE) _status = (_status & 0xFF00) | ICQ_STATUS_AWAY; @@ -156,14 +163,10 @@ mleAwayMsg->setFocus(); QTimer::singleShot(0, mleAwayMsg, SLOT(selectAll())); - installEventFilter(this); - mleAwayMsg->installEventFilter(this); - connect(mleAwayMsg, SIGNAL(clicked(int, int)), - this, SLOT(slot_autocloseStop())); - connect(mnuSelect, SIGNAL(aboutToShow()), - this, SLOT(slot_autocloseStop())); - m_autocloseCounter = 9; - slot_autocloseTick(); + if (autoclose) { + m_autocloseCounter = 9; + slot_autocloseTick(); + } if (!isVisible()) { Index: awaymsgdlg.h =================================================================== RCS file: /cvsroot/licq/qt-gui/src/awaymsgdlg.h,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -r1.26 -r1.27 --- awaymsgdlg.h 9 May 2005 14:26:11 -0000 1.26 +++ awaymsgdlg.h 20 May 2005 04:40:03 -0000 1.27 @@ -13,7 +13,7 @@ public: AwayMsgDlg(QWidget *parent = 0); ~AwayMsgDlg(); - void SelectAutoResponse(unsigned short status); + void SelectAutoResponse(unsigned short status, bool autoclose = false); protected: MLEditWrap *mleAwayMsg; Index: mainwin.cpp =================================================================== RCS file: /cvsroot/licq/qt-gui/src/mainwin.cpp,v retrieving revision 1.361 retrieving revision 1.362 diff -u -d -r1.361 -r1.362 --- mainwin.cpp 16 May 2005 02:15:25 -0000 1.361 +++ mainwin.cpp 20 May 2005 04:40:03 -0000 1.362 @@ -2208,7 +2208,7 @@ } -void CMainWindow::showAwayMsgDlg(unsigned short nStatus) +void CMainWindow::showAwayMsgDlg(unsigned short nStatus, bool autoclose) { if(awayMsgDlg == NULL) { awayMsgDlg = new AwayMsgDlg(); @@ -2218,7 +2218,7 @@ else awayMsgDlg->raise(); - awayMsgDlg->SelectAutoResponse(nStatus); + awayMsgDlg->SelectAutoResponse(nStatus, autoclose); } @@ -2248,7 +2248,7 @@ nRealID |= ICQ_STATUS_NA; if (nRealID != ICQ_STATUS_OFFLINE && (nRealID & 0xFF) != ICQ_STATUS_ONLINE) - showAwayMsgDlg(nRealID); + showAwayMsgDlg(nRealID, true); changeStatus(nRealID, nPPID); } @@ -2257,7 +2257,7 @@ void CMainWindow::changeStatusManual(int id) { if (id != ICQ_STATUS_OFFLINE && (id & 0xFF) != ICQ_STATUS_ONLINE) - showAwayMsgDlg(id); + showAwayMsgDlg(id, true); changeStatus(id); } Index: mainwin.h =================================================================== RCS file: /cvsroot/licq/qt-gui/src/mainwin.h,v retrieving revision 1.142 retrieving revision 1.143 diff -u -d -r1.142 -r1.143 --- mainwin.h 3 May 2005 08:52:01 -0000 1.142 +++ mainwin.h 20 May 2005 04:40:04 -0000 1.143 @@ -348,7 +348,7 @@ void showPluginDlg(); void showGPGKeyManager(); void slot_AwayMsgDlg(); - void showAwayMsgDlg(unsigned short status); + void showAwayMsgDlg(unsigned short status, bool autoclose = false); void showOptionsDlg(int); void popupOptionsDlg() { emit showOptionsDlg(0); }; void showAuthUserDlg(); |