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

List:       kde-commits
Subject:    kdebase/kate/app
From:       Christoph Cullmann <cullmann () kde ! org>
Date:       2005-04-20 17:09:24
Message-ID: 20050420170924.3FDD9670 () office ! kde ! org
[Download RAW message or body]

CVS commit by cullmann: 

fix some typos, allow to move docks


  M +23 -1     katemdi.cpp   1.2
  M +12 -0     katemdi.h   1.2
  M +4 -0      katemditest.cpp   1.2


--- kdebase/kate/app/katemdi.cpp  #1.1:1.2
@@ -192,5 +192,5 @@ MainWindow::MainWindow ()
   m_vSplitter = new QSplitter (Qt::Vertical, vb);
 
-  m_sidebars[KMultiTabBar::Top]->setSplitter (m_hSplitter);
+  m_sidebars[KMultiTabBar::Top]->setSplitter (m_vSplitter);
 
   m_tabWidget = new KTabWidget (m_vSplitter);
@@ -226,4 +226,9 @@ bool MainWindow::addToolView (const QStr
   m_sidebars[pos]->addWidget (icon, text, widget);
 
+  WidgetData d;
+  d.icon = icon;
+  d.text = text;
+  m_widgetToData.insert (widget, d);
+
   return true;
 }
@@ -236,4 +241,5 @@ bool MainWindow::deleteToolView (QWidget
   m_idToWidget.remove (m_widgetToId[widget]);
   m_widgetToId.remove (widget);
+  m_widgetToData.remove (widget);
 
   m_sidebars[m_widgetToSide[widget]]->removeWidget (widget);
@@ -245,3 +251,19 @@ bool MainWindow::deleteToolView (QWidget
 }
 
+bool MainWindow::moveToolView (QWidget *widget, KMultiTabBar::KMultiTabBarPosition pos)
+{
+  if (!m_widgetToId.contains(widget))
+    return false;
+
+  if (m_widgetToSide[widget] == pos)
+    return true;
+
+  m_sidebars[pos]->addWidget (m_widgetToData[widget].icon, m_widgetToData[widget].text, widget);
+  m_sidebars[m_widgetToSide[widget]]->removeWidget (widget);
+
+  m_widgetToSide[widget] = pos;
+
+  return true;
+}
+
 }

--- kdebase/kate/app/katemdi.h  #1.1:1.2
@@ -29,4 +29,5 @@
 #include <qmap.h>
 #include <qsplitter.h>
+#include <qpixmap.h>
 
 namespace KateMDI {
@@ -78,7 +79,18 @@ class MainWindow : public KParts::MainWi
     bool deleteToolView (QWidget *widget);
 
+    // move a toolview to given new pos
+    bool moveToolView (QWidget *widget, KMultiTabBar::KMultiTabBarPosition pos);
+
   private:
+    class WidgetData
+    {
+      public:
+        QPixmap icon;
+        QString text;
+    };
+
     QDict<QWidget> m_idToWidget;
     QMap<QWidget*, QString> m_widgetToId;
+    QMap<QWidget*, WidgetData> m_widgetToData;
 
     QMap<QWidget*, int> m_widgetToSide;

--- kdebase/kate/app/katemditest.cpp  #1.1:1.2
@@ -110,4 +110,8 @@ KWrite::KWrite (KTextEditor::Document *d
   addToolView ("muhdfsfdsdfdfsdfd", l3, KMultiTabBar::Bottom, SmallIcon("fileopen"), "hello2");
 
+  l3 = new QLabel ("KHHHHHHHHHHHHHHHHHHHHHH", this);
+  addToolView ("muhdfsfdsdfdfsdfdfgffg", l3, KMultiTabBar::Bottom, SmallIcon("fileopen"), "hello2");
+
+  moveToolView (l3, KMultiTabBar::Top);
 
   setupActions();


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

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