Changeset 5881

Show
Ignore:
Timestamp:
11/28/07 02:53:13 (12 months ago)
Author:
eugene
Message:

Made tabbed dialog position to be saved and restored.

Location:
branches/qt-gui_qt4/src
Files:
5 modified

Legend:

Unmodified
Added
Removed
  • branches/qt-gui_qt4/src/config/chat.cpp

    r5861 r5881  
    2222 
    2323#include "config.h" 
     24 
     25#include <QApplication> 
     26#include <QDesktopWidget> 
    2427 
    2528#include <licq_file.h> 
     
    100103  myDefaultEncoding = szTemp; 
    101104  iniFile.ReadBool("ShowAllEncodings", myShowAllEncodings, false); 
     105 
     106  iniFile.SetSection("dialog"); 
     107  short xPos, yPos, wVal, hVal; 
     108  iniFile.ReadNum("x", xPos, 0); 
     109  iniFile.ReadNum("y", yPos, 0); 
     110  iniFile.ReadNum("w", wVal, 0); 
     111  iniFile.ReadNum("h", hVal, 0); 
     112  if (xPos > QApplication::desktop()->width() - 16) 
     113    xPos = 0; 
     114  if (yPos > QApplication::desktop()->height() - 16) 
     115    yPos = 0; 
     116  myDialogRect.setRect(xPos, yPos, wVal, hVal); 
    102117} 
    103118 
     
    146161  iniFile.WriteStr("DefaultEncoding", myDefaultEncoding); 
    147162  iniFile.WriteBool("ShowAllEncodings", myShowAllEncodings); 
     163 
     164  iniFile.SetSection("dialog"); 
     165  iniFile.WriteNum("x", static_cast<short>(myDialogRect.x())); 
     166  iniFile.WriteNum("y", static_cast<short>(myDialogRect.y())); 
     167  iniFile.WriteNum("w", static_cast<short>(myDialogRect.width())); 
     168  iniFile.WriteNum("h", static_cast<short>(myDialogRect.height())); 
    148169} 
    149170 
     
    457478} 
    458479 
     480void Config::Chat::setDialogRect(QRect geometry) 
     481{ 
     482  if (geometry.isValid()) 
     483    myDialogRect = geometry; 
     484} 
     485 
    459486void Config::Chat::changeChatColors() 
    460487{ 
  • branches/qt-gui_qt4/src/config/chat.h

    r5861 r5881  
    2525 
    2626#include <QObject> 
     27#include <QRect> 
    2728 
    2829class CIniFile; 
     
    101102  QString tabTypingColor() const { return myTabTypingColor; } 
    102103  QString chatBackColor() const { return myChatBackColor; } 
     104  QRect dialogRect() const { return myDialogRect; } 
    103105 
    104106public slots: 
     
    150152  void setTabTypingColor(QString tabTypingColor); 
    151153  void setChatBackColor(QString chatBackColor); 
     154  void setDialogRect(QRect geometry); 
    152155 
    153156signals: 
     
    202205  QByteArray myDefaultEncoding; 
    203206 
     207  QRect myDialogRect; 
     208 
    204209  void changeChatColors(); 
    205210}; 
  • branches/qt-gui_qt4/src/core/licqgui.cpp

    r5846 r5881  
    255255LicqGui::~LicqGui() 
    256256{ 
     257  saveConfig(); 
    257258  delete mySignalManager; 
    258259  delete myLogWindow; 
     
    278279    licqConf.CreateSection("floaties"); 
    279280    licqConf.CreateSection("geometry"); 
     281    licqConf.CreateSection("dialog"); 
    280282    licqConf.FlushFile(); 
    281283 
  • branches/qt-gui_qt4/src/userevents/usereventtabdlg.cpp

    r5837 r5881  
    4848  lay->setContentsMargins(0, 0, 0, 0); 
    4949 
     50  if (Config::Chat::instance()->dialogRect().isValid()) 
     51    setGeometry(Config::Chat::instance()->dialogRect()); 
     52 
    5053  tabw = new TabWidget(); 
    5154  lay->addWidget(tabw); 
     
    5962UserEventTabDlg::~UserEventTabDlg() 
    6063{ 
     64  saveGeometry(); 
    6165  emit signal_done(); 
    6266} 
     
    275279  QTimer::singleShot(e->clearDelay, e, SLOT(slotClearNewEvents())); 
    276280} 
     281 
     282void UserEventTabDlg::saveGeometry() 
     283{ 
     284  Config::Chat::instance()->setDialogRect(geometry()); 
     285} 
     286 
     287void UserEventTabDlg::moveEvent(QMoveEvent* /* e */) 
     288{ 
     289  saveGeometry(); 
     290} 
     291 
     292void UserEventTabDlg::resizeEvent(QResizeEvent* /* e */) 
     293{ 
     294  saveGeometry(); 
     295} 
  • branches/qt-gui_qt4/src/userevents/usereventtabdlg.h

    r5837 r5881  
    6969  void updateTitle(QWidget* tab); 
    7070  void clearEvents(QWidget* tab); 
     71  void saveGeometry(); 
     72 
     73  virtual void moveEvent(QMoveEvent* e); 
     74  virtual void resizeEvent(QResizeEvent* e); 
    7175}; 
    7276