Changeset 6239

Show
Ignore:
Timestamp:
06/06/08 07:23:44 (4 months ago)
Author:
eugene
Message:

Introduced Fixed font setting and made it to be used in network log and file editors.
Default fixed font is constructed by taking global qApp->font() and setting Monospace family on it.

Location:
trunk/qt4-gui/src
Files:
8 modified

Legend:

Unmodified
Added
Removed
  • trunk/qt4-gui/src/config/general.cpp

    r6139 r6239  
    4848    myDockModeHasChanged(false), 
    4949    myFontHasChanged(false), 
     50    myFixedFontHasChanged(false), 
    5051    myBlockUpdates(false) 
    5152{ 
     
    5556  myDefaultFont = qApp->font(); 
    5657#endif 
     58 
     59  myDefaultFixedFont = QFont(myDefaultFont); 
     60  myDefaultFixedFont.setFamily("Monospace"); 
    5761} 
    5862 
     
    7074 
    7175  iniFile.ReadStr("Font", szTemp, "default"); 
    72   if (strcmp(szTemp, "default") != 0) 
    73   { 
    74     QFont f; 
    75     f.fromString(szTemp); 
    76     qApp->setFont(f); 
    77   } 
     76  if (strcmp(szTemp, "default") == 0) 
     77    szTemp[0] = '\0'; 
     78  setNormalFont(szTemp); 
    7879  iniFile.ReadStr("EditFont", szTemp, "default"); 
    79   if(!strcmp(szTemp, "default")) 
    80     myEditFont = myDefaultFont; 
    81   else 
    82     myEditFont.fromString(szTemp); 
     80  if (strcmp(szTemp, "default") == 0) 
     81    szTemp[0] = '\0'; 
     82  setEditFont(szTemp); 
     83  iniFile.ReadStr("FixedFont", szTemp, "default"); 
     84  if (strcmp(szTemp, "default") == 0) 
     85    szTemp[0] = '\0'; 
     86  setFixedFont(szTemp); 
    8387 
    8488  iniFile.ReadBool("InMiniMode", myMiniMode, false); 
     
    128132  emit dockModeChanged(); 
    129133  emit fontChanged(); 
     134  emit fixedFontChanged(); 
    130135} 
    131136 
     
    143148  iniFile.WriteStr("EditFont", myEditFont == myDefaultFont ? 
    144149      "default" : myEditFont.toString().toLatin1()); 
     150  iniFile.WriteStr("FixedFont", myFixedFont == myDefaultFixedFont ? 
     151      "default" : myFixedFont.toString().toLatin1()); 
    145152 
    146153  iniFile.WriteBool("InMiniMode", myMiniMode); 
     
    177184void Config::General::blockUpdates(bool block) 
    178185{ 
    179   myBlockUpdates = block; 
    180  
    181   if (!block && myMainwinHasChanged) 
     186  if ((myBlockUpdates = block)) 
     187    return; 
     188 
     189  if (myMainwinHasChanged) 
    182190  { 
    183191    myMainwinHasChanged = false; 
    184192    emit mainwinChanged(); 
    185193  } 
    186   if (!block && myDockModeHasChanged) 
     194  if (myDockModeHasChanged) 
    187195  { 
    188196    myDockModeHasChanged = false; 
     
    190198    emit dockModeChanged(); 
    191199  } 
    192   if (!block && myDockHasChanged) 
     200  if (myDockHasChanged) 
    193201  { 
    194202    myDockHasChanged = false; 
    195203    emit dockChanged(); 
    196204  } 
    197   if (!block && myFontHasChanged) 
     205  if (myFontHasChanged) 
    198206  { 
    199207    myFontHasChanged = false; 
    200208    emit fontChanged(); 
    201209  } 
     210  if (myFixedFontHasChanged) 
     211  { 
     212    myFixedFontHasChanged = false; 
     213    emit fixedFontChanged(); 
     214  } 
    202215} 
    203216 
     
    235248{ 
    236249  QFont f; 
    237   if (normalFont.isNull()) 
     250  if (normalFont.isEmpty()) 
    238251    f = myDefaultFont; 
    239252  else 
     
    250263{ 
    251264  QFont f; 
    252   if (editFont.isNull()) 
     265  if (editFont.isEmpty()) 
    253266    f = myDefaultFont; 
    254267  else 
     
    263276  else 
    264277    emit fontChanged(); 
     278} 
     279 
     280void Config::General::setFixedFont(QString fixedFont) 
     281{ 
     282  QFont f; 
     283  if (fixedFont.isEmpty()) 
     284    f = myDefaultFixedFont; 
     285  else 
     286    f.fromString(fixedFont); 
     287 
     288  if (f == myFixedFont) 
     289    return; 
     290 
     291  myFixedFont = f; 
     292  if (myBlockUpdates) 
     293    myFixedFontHasChanged = true; 
     294  else 
     295    emit fixedFontChanged(); 
    265296} 
    266297 
  • trunk/qt4-gui/src/config/general.h

    r6139 r6239  
    8080  bool delayStatusChange() const { return myDelayStatusChange; } 
    8181  QFont defaultFont() const { return myDefaultFont; } 
     82  QFont defaultFixedFont() const { return myDefaultFixedFont; } 
    8283  QFont normalFont() const; 
    8384  QFont editFont() const { return myEditFont; } 
     85  QFont fixedFont() const { return myFixedFont; } 
    8486 
    8587  bool miniMode() const { return myMiniMode; } 
     
    124126  void setNormalFont(QString normalFont); 
    125127  void setEditFont(QString editFont); 
     128  void setFixedFont(QString fixedFont); 
    126129 
    127130  void setMiniMode(bool miniMode); 
     
    174177 
    175178  /** 
     179   * Fixed Font configuration has changed (not emitted for normal font) 
     180   */ 
     181  void fixedFontChanged(); 
     182 
     183  /** 
    176184   * Popup key has changed 
    177185   */ 
     
    186194  bool myDockModeHasChanged; 
    187195  bool myFontHasChanged; 
     196  bool myFixedFontHasChanged; 
    188197  bool myBlockUpdates; 
    189198 
     
    193202  bool myDelayStatusChange; 
    194203  QFont myDefaultFont; 
     204  QFont myDefaultFixedFont; 
    195205  QFont myEditFont; 
     206  QFont myFixedFont; 
    196207 
    197208  // Mainwin configuration 
  • trunk/qt4-gui/src/dialogs/editfiledlg.cpp

    r5857 r6239  
    4848  QVBoxLayout* top_lay = new QVBoxLayout(this); 
    4949 
    50   myFileEdit = new MLEdit(false, this, false); 
     50  myFileEdit = new MLEdit(false, this, true); 
    5151  myFileEdit->setMinimumHeight(myFileEdit->frameWidth() * 2 + 20 * myFileEdit->fontMetrics().lineSpacing()); 
    5252  myFileEdit->setMinimumWidth(myFileEdit->fontMetrics().width("_") * 80); 
  • trunk/qt4-gui/src/settings/general.cpp

    r6091 r6239  
    140140  myFontLayout->addWidget(myEditFontLabel, 1, 0); 
    141141  myEditFontEdit = new FontEdit(); 
    142   myEditFontEdit->setToolTip(myFontLabel->toolTip()); 
    143   myFontLabel->setBuddy(myEditFontEdit); 
     142  myEditFontEdit->setToolTip(myEditFontLabel->toolTip()); 
     143  myEditFontLabel->setBuddy(myEditFontEdit); 
    144144  myFontLayout->addWidget(myEditFontEdit, 1, 1); 
     145 
     146  // Fixed font 
     147  myFixedFontLabel = new QLabel(tr("Fixed:")); 
     148  myFixedFontLabel->setToolTip(tr("Used in file editor and network log.")); 
     149  myFontLayout->addWidget(myFixedFontLabel, 2, 0); 
     150  myFixedFontEdit = new FontEdit(); 
     151  myFixedFontEdit->setToolTip(myFixedFontLabel->toolTip()); 
     152  myFixedFontLabel->setBuddy(myFixedFontEdit); 
     153  myFontLayout->addWidget(myFixedFontEdit, 2, 1); 
    145154 
    146155  myPageFontsLayout->addWidget(myFontBox); 
     
    234243  myNormalFontEdit->setFont(QFont(generalConfig->normalFont())); 
    235244  myEditFontEdit->setFont(QFont(generalConfig->editFont())); 
     245  myFixedFontEdit->setFont(QFont(generalConfig->fixedFont())); 
    236246} 
    237247 
     
    265275 
    266276  if (myNormalFontEdit->font() == Config::General::instance()->defaultFont()) 
    267     generalConfig->setNormalFont(QString()); 
     277    generalConfig->setNormalFont(QString::null); 
    268278  else 
    269279    generalConfig->setNormalFont(myNormalFontEdit->font().toString()); 
    270280 
    271281  if (myEditFontEdit->font() == Config::General::instance()->defaultFont()) 
    272     generalConfig->setEditFont(QString()); 
     282    generalConfig->setEditFont(QString::null); 
    273283  else 
    274284    generalConfig->setEditFont(myEditFontEdit->font().toString()); 
    275285 
     286  if (myFixedFontEdit->font() == Config::General::instance()->defaultFixedFont()) 
     287    generalConfig->setFixedFont(QString::null); 
     288  else 
     289    generalConfig->setFixedFont(myFixedFontEdit->font().toString()); 
     290 
    276291  generalConfig->blockUpdates(false); 
    277292} 
  • trunk/qt4-gui/src/settings/general.h

    r6091 r6239  
    9595  QLabel* myFontLabel; 
    9696  QLabel* myEditFontLabel; 
     97  QLabel* myFixedFontLabel; 
    9798  FontEdit* myNormalFontEdit; 
    9899  FontEdit* myEditFontEdit; 
     100  FontEdit* myFixedFontEdit; 
    99101  QLabel* myDefaultEncodingLabel; 
    100102  QCheckBox* myShowAllEncodingsCheck; 
  • trunk/qt4-gui/src/userevents/usersendcommon.cpp

    r6218 r6239  
    415415  myPictureSplitter = new QSplitter(myViewSplitter); 
    416416 
    417   myMessageEdit = new MLEdit(true, myPictureSplitter, true); 
     417  myMessageEdit = new MLEdit(true, myPictureSplitter); 
    418418  myMessageEdit->setSizeHintLines(3); 
    419419  myMessageEdit->setCheckSpellingEnabled(Config::Chat::instance()->checkSpelling()); 
  • trunk/qt4-gui/src/widgets/mledit.cpp

    r6111 r6239  
    3232/* TRANSLATOR LicqQtGui::MLEdit */ 
    3333 
    34 MLEdit::MLEdit(bool wordWrap, QWidget* parent, bool /* doQuotes */, const char* name) 
     34MLEdit::MLEdit(bool wordWrap, QWidget* parent, bool useFixedFont, const char* name) 
    3535  : MLEDIT_BASE(parent), 
     36    myUseFixedFont(useFixedFont), 
    3637    myFixSetTextNewlines(true), 
    3738    myLastKeyWasReturn(false), 
     
    4647 
    4748  updateFont(); 
    48   connect(Config::General::instance(), SIGNAL(fontChanged()), SLOT(updateFont())); 
     49  connect(Config::General::instance(), 
     50      myUseFixedFont ? SIGNAL(fixedFontChanged()) : SIGNAL(fontChanged()), 
     51      SLOT(updateFont())); 
    4952} 
    5053 
     
    210213void MLEdit::updateFont() 
    211214{ 
    212   setFont(Config::General::instance()->editFont()); 
     215  setFont(myUseFixedFont ? Config::General::instance()->fixedFont() : 
     216      Config::General::instance()->editFont()); 
    213217 
    214218  // Get height of current font 
  • trunk/qt4-gui/src/widgets/mledit.h

    r6111 r6239  
    4141 
    4242public: 
    43   MLEdit(bool wordWrap, QWidget* parent = 0, bool handlequotes = false, const char* name = 0); 
     43  MLEdit(bool wordWrap, QWidget* parent = 0, bool useFixedFont = false, const char* name = 0); 
    4444  virtual ~MLEdit(); 
    4545 
     
    8383 
    8484private: 
     85  bool myUseFixedFont; 
    8586  bool myFixSetTextNewlines; 
    8687  bool myLastKeyWasReturn;