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: