[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

kdenonbeta/kdedebian/kapture



CVS commit by mornfall: 

Grant a wish to ervin: clicking on a package already having a tab just
brings the relevant tab into foreground, instead of opening new one.


  M +10 -1     kapture/kapture.cpp   1.18
  M +1 -1      libkapture/nodeview.cpp   1.3
  M +2 -0      libkapture/nodeview.h   1.2
  M +2 -0      libkapture/pkgnodeview.cpp   1.21
  M +2 -1      libkapture/pkgnodeview.h   1.7


--- kdenonbeta/kdedebian/kapture/kapture/kapture.cpp  #1.17:1.18
@@ -129,9 +129,18 @@ void Kapture::showNode (capture::TreeNod
 {
     NodeView *v = 0;
+    for (int i = 0; i <= m_nodesShown; i ++) {
+        v = dynamic_cast <NodeView *> (m_nodeTabs -> page (i));
+        if (v)
+            kdDebug () << "compare: " << v -> node () << " vs " << n << endl;
+        if (v && v -> node () == n) {
+            m_nodeTabs -> setCurrentPage (i);
+            return;
+        }
+    }
     if (n -> type () == TreeNode::PkgNode) {
         m_nodesShown ++;
         PkgNodeView *details = new kapture::PkgNodeView (this, "details");
         details -> setManager (m_man);
-        details -> setPackage ((TreePkgNode::castNode (n)) -> pkg ());
+        details -> showNode (n);
         v = details;
     }

--- kdenonbeta/kdedebian/kapture/libkapture/nodeview.cpp  #1.2:1.3
@@ -9,5 +9,5 @@ using namespace kapture;
                                                                     /* {{{ */
 NodeView::NodeView (QWidget *parent, const char *name)
-    : QWidget (parent, name), m_man (0)
+    : QWidget (parent, name), m_man (0), m_node (0)
 {
     //PkgManager::registerWatcher (this);

--- kdenonbeta/kdedebian/kapture/libkapture/nodeview.h  #1.1:1.2
@@ -33,4 +33,5 @@ namespace kapture {
             ~NodeView ();
             void setManager (KaptureManager *man);
+            TreeNode *node () { return m_node; };
             // virtual void refresh ();
             // virtual void rebuild ();
@@ -39,4 +40,5 @@ namespace kapture {
         protected:
             KaptureManager *m_man;
+            TreeNode *m_node;
     };
 };

--- kdenonbeta/kdedebian/kapture/libkapture/pkgnodeview.cpp  #1.20:1.21
@@ -100,4 +100,6 @@ void PkgNodeView::setPackage (pkgCache::
 void PkgNodeView::setPackage (TreeNode *pkg)
 {
+    m_node = pkg;
+    kdDebug () << "PkgNodeView::setPackage, m_node = " << m_node << endl;
     setPackage (TreePkgNode::castNode (pkg) -> pkg ());
 }

--- kdenonbeta/kdedebian/kapture/libkapture/pkgnodeview.h  #1.6:1.7
@@ -67,8 +67,9 @@ namespace kapture {
             virtual void rebuild ();
         public slots:
-            void setPackage (pkgCache::PkgIterator pkg);
             void setPackage (TreeNode *pkg);
             void setVersion (pkgCache::VerIterator V);
             virtual bool showNode (capture::TreeNode *n);
+        protected slots:
+            void setPackage (pkgCache::PkgIterator pkg);
         protected:
             QBoxLayout *m_layout;




Reply to: