[devel] kdenonbeta/kdedebian/kapture/kapture
Peter Rockai <[email protected]> Wed, 9 Feb 2005 23:00:44 +0100 (CET)
| Newsgroups | gmane.comp.kde.devel.debian |
|---|---|
| Message-ID | <20050209220044.ABC9E1BB65__37932.3332258084$1107986447$gmane$org@office.kde.org> |
CVS commit by mornfall:
Unbreak "tab foregrounding" in case you try to open already-open package...
The idea seems broken though, i'll try to re-think.
M +16 -5 kapture.cpp 1.48
M +4 -2 kapture.h 1.23
--- kdenonbeta/kdedebian/kapture/kapture/kapture.cpp #1.47:1.48
@@ -130,8 +130,7 @@ Kapture::Kapture()
}
-void Kapture::newIteratorView (Iterator i)
+bool Kapture::foregroundIterator( Iterator i )
{
- if (i == Iterator ()) return;
- kdDebug() << "Kapture::newIteratorView (nonempty iterator)" << endl;
+ if (i == Iterator ()) return false;
IteratorView *v = 0;
for (int j = 0; j <= m_iteratorsShown; j ++) {
@@ -140,11 +139,21 @@ void Kapture::newIteratorView (Iterator
m_iteratorTabs -> setCurrentPage (j);
iteratorTabChanged (v);
- return;
+ return true;
}
} // XXX: fix this... uptade: huh?
- m_iteratorsShown ++;
+ return false;
+}
+
+void Kapture::newIteratorView (Iterator i)
+{
+ if (i == Iterator ()) return;
+ kdDebug() << "Kapture::newIteratorView (nonempty iterator)" << endl;
+ if (foregroundIterator( i ))
+ return;
+ IteratorView *v = 0;
v = m_iteratorViewFact -> create (this, i, true);
kdDebug() << "iteratorView: " << v << endl;
if (v) {
+ m_iteratorsShown ++;
v -> setUseHistory (true);
v -> setIteratorActor (this);
@@ -173,4 +182,6 @@ void Kapture::iteratorTabChanged (QWidge
void Kapture::showIterator (Iterator i)
{
+ if (foregroundIterator( i ))
+ return;
if (m_curIteratorView) {
m_curIteratorView -> showIterator (i);
--- kdenonbeta/kdedebian/kapture/kapture/kapture.h #1.22:1.23
@@ -1,2 +1,3 @@
+// -*- C++ -*-
#ifndef KAPTURE_H
#define KAPTURE_H
@@ -43,6 +44,7 @@ class Kapture : public KDockMainWindow,
public slots:
- void newIteratorView (aptFront::Iterator);
- void showIterator (aptFront::Iterator);
+ void newIteratorView( aptFront::Iterator );
+ void showIterator( aptFront::Iterator );
+ bool foregroundIterator( aptFront::Iterator );
void closeNodeView ();