[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    koffice/kexi/main
From:       Jarosław Staniek <staniek () kde ! org>
Date:       2010-01-23 21:57:06
Message-ID: 1264283826.238743.17981.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1079227 by staniek:

Main Window
*Added tabbar for the property editor pane



 M  +28 -3     KexiMainWindow.cpp  
 M  +1 -0      KexiMainWindow.h  


--- trunk/koffice/kexi/main/KexiMainWindow.cpp #1079226:1079227
@@ -1995,10 +1995,13 @@
         d->propEditorDockWidget->setVisible(set);
 }
 
+#define PROJECT_NAVIGATOR_TABBAR_ID 0
+#define PROPERTY_EDITOR_TABBAR_ID 1
+
 void KexiMainWindow::slotProjectNavigatorVisibilityChanged(bool visible)
 {
     KMultiTabBar *mtbar = d->multiTabBars[KMultiTabBar::Left];
-    int id = 0; //todo
+    int id = PROJECT_NAVIGATOR_TABBAR_ID;
     if (visible) {
         mtbar->removeTab(id);
     }
@@ -2006,17 +2009,37 @@
         QString t(d->navDockWidget->windowTitle());
         t.remove('&');
         mtbar->appendTab(QPixmap(), id, t);
-        KMultiTabBarTab *tab = mtbar->tab(0);
+        KMultiTabBarTab *tab = mtbar->tab(id);
         connect(tab, SIGNAL(clicked(int)), this, \
SLOT(slotMultiTabBarTabClicked(int)));  }
 }
 
+void KexiMainWindow::slotPropertyEditorVisibilityChanged(bool visible)
+{
+    KMultiTabBar *mtbar = d->multiTabBars[KMultiTabBar::Right];
+    int id = PROPERTY_EDITOR_TABBAR_ID;
+    if (visible) {
+        mtbar->removeTab(id);
+    }
+    else {
+        QString t(d->propEditorDockWidget->windowTitle());
+        t.remove('&');
+        mtbar->appendTab(QPixmap(), id, t);
+        KMultiTabBarTab *tab = mtbar->tab(id);
+        connect(tab, SIGNAL(clicked(int)), this, \
SLOT(slotMultiTabBarTabClicked(int))); +    }
+}
+
 void KexiMainWindow::slotMultiTabBarTabClicked(int id)
 {
-    if (id == 0) { // todo
+    if (id == PROJECT_NAVIGATOR_TABBAR_ID) {
         slotProjectNavigatorVisibilityChanged(true);
         d->navDockWidget->show();
     }
+    else if (id == PROPERTY_EDITOR_TABBAR_ID) {
+        slotPropertyEditorVisibilityChanged(true);
+        d->propEditorDockWidget->show();
+    }
 }
 
 static Qt::DockWidgetArea loadDockAreaSetting(KConfigGroup& group, const char* \
configEntry, Qt::DockWidgetArea defaultArea) @@ -2177,6 +2200,8 @@
             d->propEditorDockWidget,
             Qt::Vertical
         );
+        connect(d->propEditorDockWidget, SIGNAL(visibilityChanged(bool)),
+            this, SLOT(slotPropertyEditorVisibilityChanged(bool)));
 
         d->propEditorDockableWidget = new \
KexiDockableWidget(d->propEditorDockWidget);  \
                d->propEditorDockWidget->setWidget(d->propEditorDockableWidget);
--- trunk/koffice/kexi/main/KexiMainWindow.h #1079226:1079227
@@ -706,6 +706,7 @@
     void slotSetProjectNavigatorVisible(bool set);
     void slotSetPropertyEditorVisible(bool set);
     void slotProjectNavigatorVisibilityChanged(bool visible);
+    void slotPropertyEditorVisibilityChanged(bool visible);
     void slotMultiTabBarTabClicked(int id);
 
 private:


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic