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

kdenonbeta/kdedebian/kapture



CVS commit by mornfall: 

- fix the "tree folds on refresh" bug better (works with deep trees as
  well, the former fix worked on first level only)
- update TODO


  M +3 -0      TODO   1.26
  M +13 -0     libkapture/listtreewidget.cpp   1.16
  M +2 -4      libkapture/listtreewidget.h   1.9


--- kdenonbeta/kdedebian/kapture/TODO  #1.25:1.26
@@ -74,4 +74,7 @@
   - try to merge node production into groupers (not neccessarily feasible)
   - try to fix the "tree folds itself on refresh" issue [done]
+  - make the groupers use some sane argument passing mechanizm instead of
+    argmap (yuck...); possibly string-keyed, but using an object pointer as a
+    value (possibly of some sensible base class type)
 
 ::: 0.3 (prealfa) :::

--- kdenonbeta/kdedebian/kapture/libkapture/listtreewidget.cpp  #1.15:1.16
@@ -90,4 +90,17 @@ void ListTreeWidgetItem::setItemParent (
 }
                                                                     /* }}} */
+// detachItem - detach m_item from us (it is being deleted)            {{{
+// --------------------------------------------------------------------------
+void ListTreeWidgetItem::detachItem ()
+{
+    // *cough* our destructor will delete all m_treeNode childrens'
+    // m_item, meaning that these would go and double-delete them
+    if (m_item)
+        m_open = m_item -> isOpen ();
+    if (m_open)
+        std::cerr << "open node: " << this << std::endl;
+    m_item = 0;
+}
+                                                                    /* }}} */
 
 // ListTreeWidgetPItem

--- kdenonbeta/kdedebian/kapture/libkapture/listtreewidget.h  #1.8:1.9
@@ -54,4 +54,5 @@ namespace kapture {
             ListTreeWidgetItem (ListTreeWidget *list, TreeNode *parent);
             void setItemParent ();
+            void detachItem ();
             virtual ~ListTreeWidgetItem ();
         protected:
@@ -77,8 +78,5 @@ namespace kapture {
             virtual ~KListViewItemCustom ()
             {
-                // *cough* our destructor will delete all m_treeNode childrens'
-                // m_item, meaning that these would go and double-delete them
-                if (m_treeNode)
-                    m_treeNode -> m_item = 0;
+                m_treeNode -> detachItem ();
             }
     };




Reply to: