author | eilers <eilers> | 2005-03-24 16:23:51 (UTC) |
---|---|---|
committer | eilers <eilers> | 2005-03-24 16:23:51 (UTC) |
commit | b390bcd32e188fc3c9fd7067bfc41b60b5e84ad4 (patch) (side-by-side diff) | |
tree | 38bc784605eb06a6669e8708c86cc9cebaa32b2a | |
parent | 29da9a4477210843435cbea3ede0d520775fe1a5 (diff) | |
download | opie-b390bcd32e188fc3c9fd7067bfc41b60b5e84ad4.zip opie-b390bcd32e188fc3c9fd7067bfc41b60b5e84ad4.tar.gz opie-b390bcd32e188fc3c9fd7067bfc41b60b5e84ad4.tar.bz2 |
In table view: Clicking on column 0 changes the sortorder.
Version of ths app was changed to 1.2.0
Requested by #1591
-rw-r--r-- | core/pim/addressbook/abtable.cpp | 93 | ||||
-rw-r--r-- | core/pim/addressbook/abtable.h | 1 | ||||
-rw-r--r-- | core/pim/addressbook/abview.cpp | 14 | ||||
-rw-r--r-- | core/pim/addressbook/abview.h | 2 | ||||
-rw-r--r-- | core/pim/addressbook/version.h | 4 |
5 files changed, 23 insertions, 91 deletions
diff --git a/core/pim/addressbook/abtable.cpp b/core/pim/addressbook/abtable.cpp index 49e66ad..60f3177 100644 --- a/core/pim/addressbook/abtable.cpp +++ b/core/pim/addressbook/abtable.cpp @@ -126,3 +126,4 @@ AbTable::AbTable( const QValueList<int> order, QWidget *parent, const char *name init(); - setSorting( TRUE ); + setSorting( false ); // The table should not sort by itself! + connect( this, SIGNAL(clicked(int,int,int,const QPoint&)), @@ -158,3 +159,2 @@ void AbTable::setContacts( const Opie::OPimContactAccess::List& viewList ) - setSorting( false ); setPaintingEnabled( FALSE ); @@ -162,9 +162,3 @@ void AbTable::setContacts( const Opie::OPimContactAccess::List& viewList ) setNumRows( m_viewList.count() ); -// int row = 0; -// for ( it = m_viewList.begin(); it != m_viewList.end(); ++it ) -// insertIntoTable( *it, row++ ); - -// setSorting( true ); -// resort(); @@ -210,28 +204,2 @@ bool AbTable::selectContact( int UID ) -#if 0 -void AbTable::insertIntoTable( const Opie::OPimContact& cnt, int row ) -{ - odebug << "void AbTable::insertIntoTable( const Opie::OPimContact& cnt, " - << row << " )" << oendl; - QString strName; - ContactItem contactItem; - - strName = findContactName( cnt ); - contactItem = findContactContact( cnt, row ); - - AbTableItem *ati; - ati = new AbTableItem( this, QTableItem::Never, strName, contactItem.value ); - contactList.insert( ati, cnt ); - setItem( row, 0, ati ); - ati = new AbTableItem( this, QTableItem::Never, contactItem.value, strName); - if ( !contactItem.icon.isNull() ) - ati->setPixmap( contactItem.icon ); - setItem( row, 1, ati ); - - //### cannot do this; table only has two columns at this point - // setItem( row, 2, new AbPickItem( this ) ); - -} -#endif - @@ -239,16 +207,9 @@ void AbTable::columnClicked( int col ) { - if ( !sorting() ) - return; - - if ( lastSortCol == -1 ) - lastSortCol = col; + odebug << "columClicked(" << col << ")" << oendl; - if ( col == lastSortCol ) { + if ( col == 0 ){ + odebug << "Change sort order: " << asc << oendl; asc = !asc; - } else { - lastSortCol = col; - asc = TRUE; + emit signalSortOrderChanged( asc ); } - //QMessageBox::information( this, "resort", "columnClicked" ); - resort(); } @@ -258,13 +219,3 @@ void AbTable::resort() owarn << "void AbTable::resort() NOT POSSIBLE !!" << oendl; -#if 0 - setPaintingEnabled( FALSE ); - if ( sorting() ) { - if ( lastSortCol == -1 ) - lastSortCol = 0; - sortColumn( lastSortCol, asc, TRUE ); - //QMessageBox::information( this, "resort", "resort" ); - updateVisible(); - } - setPaintingEnabled( TRUE ); -#endif + } @@ -359,32 +310,2 @@ void AbTable::moveTo( char /*c*/ ) -#if 0 - int rows = numRows(); - QString value; - AbTableItem *abi; - int r; - if ( asc ) { - r = 0; - while ( r < rows-1) { - abi = static_cast<AbTableItem*>( item(r, 0) ); - QChar first = abi->key()[0]; - //### is there a bug in QChar to char comparison??? - if ( first.row() || first.cell() >= c ) - break; - r++; - } - } else { - //### should probably disable reverse sorting instead - r = rows - 1; - while ( r > 0 ) { - abi = static_cast<AbTableItem*>( item(r, 0) ); - QChar first = abi->key()[0]; - //### is there a bug in QChar to char comparison??? - if ( first.row() || first.cell() >= c ) - break; - r--; - } - } - setCurrentCell( r, currentColumn() ); - -#endif } diff --git a/core/pim/addressbook/abtable.h b/core/pim/addressbook/abtable.h index 927a5a9..7d2818b 100644 --- a/core/pim/addressbook/abtable.h +++ b/core/pim/addressbook/abtable.h @@ -122,2 +122,3 @@ signals: void signalKeyUp(); + void signalSortOrderChanged( bool order ); diff --git a/core/pim/addressbook/abview.cpp b/core/pim/addressbook/abview.cpp index 8a2db96..9f7f71f 100644 --- a/core/pim/addressbook/abview.cpp +++ b/core/pim/addressbook/abview.cpp @@ -44,2 +44,3 @@ AbView::AbView ( QWidget* parent, const QValueList<int>& ordered ): m_inPersonal( false ), + m_sortOrder( true ), m_curr_category( 0 ), @@ -82,2 +83,4 @@ AbView::AbView ( QWidget* parent, const QValueList<int>& ordered ): this, SLOT( slotSwitch(void) ) ); + connect ( m_abTable, SIGNAL( signalSortOrderChanged( bool ) ), + this, SLOT( slotSetSortOrder( bool ) ) ); connect ( m_ablabel, SIGNAL( signalOkPressed(void) ), @@ -163,3 +166,3 @@ void AbView::load() // Show just unfiled contacts - m_list = m_contactdb->sorted( true, Opie::OPimContactAccess::SortFileAsName, + m_list = m_contactdb->sorted( m_sortOrder, Opie::OPimContactAccess::SortFileAsName, Opie::OPimContactAccess::DoNotShowWithCategory, 0 ); @@ -167,3 +170,3 @@ void AbView::load() // Just show all contacts - m_list = m_contactdb->sorted( true, Opie::OPimContactAccess::SortFileAsName, + m_list = m_contactdb->sorted( m_sortOrder, Opie::OPimContactAccess::SortFileAsName, Opie::OPimBase::FilterOff, 0 ); @@ -171,3 +174,3 @@ void AbView::load() // Show contacts with given categories - m_list = m_contactdb->sorted( true, Opie::OPimContactAccess::SortFileAsName, + m_list = m_contactdb->sorted( m_sortOrder, Opie::OPimContactAccess::SortFileAsName, Opie::OPimBase::FilterCategory, m_curr_category ); @@ -418,2 +421,7 @@ void AbView::slotSwitch(){ +void AbView::slotSetSortOrder( bool order ){ + m_sortOrder = order; + reload(); +} + // END: Slots diff --git a/core/pim/addressbook/abview.h b/core/pim/addressbook/abview.h index b8c8a08..07b6b28 100644 --- a/core/pim/addressbook/abview.h +++ b/core/pim/addressbook/abview.h @@ -60,2 +60,3 @@ public slots: void slotSwitch(); + void slotSetSortOrder( bool order ); @@ -72,2 +73,3 @@ private: bool m_inPersonal; + bool m_sortOrder; int m_curr_category; diff --git a/core/pim/addressbook/version.h b/core/pim/addressbook/version.h index 7ce9752..8aafc85 100644 --- a/core/pim/addressbook/version.h +++ b/core/pim/addressbook/version.h @@ -4,4 +4,4 @@ #define MAINVERSION "1" -#define SUBVERSION "1" -#define PATCHVERSION "1" +#define SUBVERSION "2" +#define PATCHVERSION "0" |