-statusbar can now be hidden (you can find it in views at the bottom)
authorAlexander von Renteln <phon@quassel-irc.org>
Thu, 10 Apr 2008 13:00:36 +0000 (13:00 +0000)
committerAlexander von Renteln <phon@quassel-irc.org>
Thu, 10 Apr 2008 13:00:36 +0000 (13:00 +0000)
src/qtui/mainwin.cpp
src/qtui/mainwin.h
version.inc

index 669261c..b87d31c 100644 (file)
@@ -87,11 +87,6 @@ MainWin::MainWin(QtUi *_gui, QWidget *parent)
   if(style != "") {
     QApplication::setStyle(style);
   }
-
-  connect(Client::instance(), SIGNAL(securedConnection()), this, SLOT(securedConnection()));
-  sslLabel->setPixmap(QPixmap());
-  statusBar()->addPermanentWidget(sslLabel);
-
 }
 
 void MainWin::init() {
@@ -126,6 +121,7 @@ void MainWin::init() {
   setupTopicWidget();
   setupChatMonitor();
   setupInputWidget();
+  setupStatusBar();
   setupSystray();
 
   setupSettingsDlg();
@@ -290,6 +286,31 @@ void MainWin::setupTopicWidget() {
   ui.menuViews->addAction(dock->toggleViewAction());
 }
 
+void MainWin::setupStatusBar() {
+  connect(Client::instance(), SIGNAL(securedConnection()), this, SLOT(securedConnection()));
+  sslLabel->setPixmap(QPixmap());
+  statusBar()->addPermanentWidget(sslLabel);
+
+  ui.menuViews->addSeparator();
+  QAction *showStatusbar = ui.menuViews->addAction(tr("Statusbar"));
+  showStatusbar->setCheckable(true);
+
+  UiSettings uiSettings;
+
+  //TODO: save status
+  bool enabled = uiSettings.value("ShowStatusBar", QVariant(true)).toBool();
+  showStatusbar->setChecked(enabled);
+  enabled ? statusBar()->show() : statusBar()->hide();
+
+  connect(showStatusbar, SIGNAL(toggled(bool)), statusBar(), SLOT(setVisible(bool)));
+  connect(showStatusbar, SIGNAL(toggled(bool)), this, SLOT(saveStatusBarStatus(bool)));
+}
+
+void MainWin::saveStatusBarStatus(bool enabled) {
+  UiSettings uiSettings;
+  uiSettings.setValue("ShowStatusBar", enabled);
+}
+
 void MainWin::setupSystray() {
   connect(timer, SIGNAL(timeout()), this, SLOT(makeTrayIconBlink()));
   connect(Client::instance(), SIGNAL(messageReceived(const Message &)), this, SLOT(receiveMessage(const Message &)));
index a317c77..c2cdfce 100644 (file)
@@ -84,6 +84,7 @@ class MainWin : public QMainWindow {
 
     void changeTopic(const QString &topic);
     void makeTrayIconBlink();
+    void saveStatusBarStatus(bool enabled);
 
   signals:
     void connectToCore(const QVariantMap &connInfo);
@@ -103,6 +104,7 @@ class MainWin : public QMainWindow {
     void setupChatMonitor();
     void setupInputWidget();
     void setupTopicWidget();
+    void setupStatusBar();
     void setupSystray();
 
     void setupSettingsDlg();
index b074a0a..365cfb2 100644 (file)
@@ -5,7 +5,7 @@
 
   quasselVersion = "0.2.0-alpha5";
   quasselDate = "2008-04-09";
-  quasselBuild = 718;
+  quasselBuild = 721;
 
   //! Minimum client build number the core needs
   clientBuildNeeded = 642;