OSSP CVS Repository

ossp - Check-in [4674]
Not logged in
[Honeypot]  [Browse]  [Home]  [Login]  [Reports
[Search]  [Ticket]  [Timeline
  [Patchset]  [Tagging/Branching

Check-in Number: 4674
Date: 2004-Aug-12 18:23:26 (local)
2004-Aug-12 16:23:26 (UTC)
User:ms
Branch:
Comment: work around a Trolltech bug causing erroneous row selections in member m_pMaintable of class Titraqform
Tickets:
Inspections:
Files:
ossp-pkg/as/as-gui/ChangeLog      1.51 -> 1.52     6 inserted, 0 deleted
ossp-pkg/as/as-gui/as_slot.cpp      1.141 -> 1.142     12 inserted, 0 deleted

ossp-pkg/as/as-gui/ChangeLog 1.51 -> 1.52

--- ChangeLog    2003/11/20 11:44:15     1.51
+++ ChangeLog    2004/08/12 16:23:26     1.52
@@ -1,5 +1,11 @@
 Geschichte des OSSP titraq in Vorwaerts Cronordnung
 
+040812 Work around a bug (in Qt? since 3.2.?) causing erroneous row
+       selections when inserting (adding or copying) rows.
+
+040528 More closely adhere to C++ standard (currently ISO 14882) by
+       removing all fundemental type variables of 'long long'.
+
 031120 Handle the time consuming bureaucracy of changing a company name.
 
 031118 More reliably detect X11 features like Xft and Xrender, and


ossp-pkg/as/as-gui/as_slot.cpp 1.141 -> 1.142

--- as_slot.cpp  2004/05/27 21:48:41     1.141
+++ as_slot.cpp  2004/08/12 16:23:26     1.142
@@ -168,6 +168,12 @@
         m_pMaintable->setDirty();   // Set data to dirty state
         m_pMaintable->setCurrentCell(Select.topRow(), m_pMaintable->currentColumn());
 
+        // According to Trolltech, insertRows() ''clears the selection(s)´´.
+        // They are pretty wrong about that, so unfortunately we'll have to
+        // take care of the dirty work ourselves with a clearSelection().
+        m_pMaintable->clearSelection(false);
+        m_pMaintable->selectRow(m_pMaintable->currentRow());
+
         // Update relevant data fields for all new rows
         for (int nIter = 0; nIter < nTotal; nIter++) {
             m_pMaintable->setText(Select.topRow() + nIter, TITRAQ_IDXSTATUS, QString(QChar('W')));
@@ -192,6 +198,12 @@
         m_pMaintable->setDirty();   // Set data to dirty state
         m_pMaintable->setCurrentCell(Select.bottomRow() + 1, m_pMaintable->currentColumn());
 
+        // According to Trolltech, insertRows() ''clears the selection(s)´´.
+        // They are pretty wrong about that, so unfortunately we'll have to
+        // take care of the dirty work ourselves with a clearSelection().
+        m_pMaintable->clearSelection(false);
+        m_pMaintable->selectRow(m_pMaintable->currentRow());
+
         // Update relevant data fields for all new rows
         for (int nIter = 1; nIter <= nTotal; nIter++) {
             m_pMaintable->setText(Select.bottomRow() + nIter, TITRAQ_IDXSTATUS, QString(QChar('W')));

CVSTrac 2.0.1