summaryrefslogtreecommitdiff
path: root/core/pim
authortux_mike <tux_mike>2002-04-17 20:46:18 (UTC)
committer tux_mike <tux_mike>2002-04-17 20:46:18 (UTC)
commit7b19e1d98d5acf01102ac057ec077fc036c034c6 (patch) (side-by-side diff)
treea5ec8752ba8cbf9c5c037f1ec3552be544cc8b3f /core/pim
parent106073977316103f057930daf45f3a083114d48d (diff)
downloadopie-7b19e1d98d5acf01102ac057ec077fc036c034c6.zip
opie-7b19e1d98d5acf01102ac057ec077fc036c034c6.tar.gz
opie-7b19e1d98d5acf01102ac057ec077fc036c034c6.tar.bz2
Added a Letter Picker
Diffstat (limited to 'core/pim') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/abtable.cpp86
-rw-r--r--core/pim/addressbook/addressbook.cpp27
-rw-r--r--core/pim/addressbook/addressbook.h1
-rw-r--r--core/pim/addressbook/picker.cpp7
4 files changed, 98 insertions, 23 deletions
diff --git a/core/pim/addressbook/abtable.cpp b/core/pim/addressbook/abtable.cpp
index 759cb48..124ff6c 100644
--- a/core/pim/addressbook/abtable.cpp
+++ b/core/pim/addressbook/abtable.cpp
@@ -1015,3 +1015,2 @@ void AbTable::setShowByLetter( char c )
showChar = tolower(c);
- qDebug( "AbTable::setShowByLetter %c", showChar);
updateVisible();
@@ -1079,8 +1078,85 @@ void AbTable::updateVisible()
tmpStr = tmpStr.lower();
- qDebug( "updateVisible ");
- qDebug( tmpStr );
- qDebug( "updateVisible2 %c", showChar );
- if ( tmpStr != QString(QChar(showChar)) ) {
+ if ( tmpStr != QString(QChar(showChar)) && showChar != '#' ) {
hide = true;
}
+ if ( showChar == '#' ) {
+ if (tmpStr == "a")
+ hide = true;
+
+ if (tmpStr == "b")
+ hide = true;
+
+ if (tmpStr == "c")
+ hide = true;
+
+ if (tmpStr == "d")
+ hide = true;
+
+ if (tmpStr == "e")
+ hide = true;
+
+ if (tmpStr == "f")
+ hide = true;
+
+ if (tmpStr == "g")
+ hide = true;
+
+ if (tmpStr == "h")
+ hide = true;
+
+ if (tmpStr == "i")
+ hide = true;
+
+ if (tmpStr == "j")
+ hide = true;
+
+ if (tmpStr == "k")
+ hide = true;
+
+ if (tmpStr == "l")
+ hide = true;
+
+ if (tmpStr == "m")
+ hide = true;
+
+ if (tmpStr == "n")
+ hide = true;
+
+ if (tmpStr == "o")
+ hide = true;
+
+ if (tmpStr == "p")
+ hide = true;
+
+ if (tmpStr == "q")
+ hide = true;
+
+ if (tmpStr == "r")
+ hide = true;
+
+ if (tmpStr == "s")
+ hide = true;
+
+ if (tmpStr == "t")
+ hide = true;
+
+ if (tmpStr == "u")
+ hide = true;
+
+ if (tmpStr == "v")
+ hide = true;
+
+ if (tmpStr == "w")
+ hide = true;
+
+ if (tmpStr == "x")
+ hide = true;
+
+ if (tmpStr == "y")
+ hide = true;
+
+ if (tmpStr == "z")
+ hide = true;
+ }
+
}
diff --git a/core/pim/addressbook/addressbook.cpp b/core/pim/addressbook/addressbook.cpp
index e502cf6..beb953a 100644
--- a/core/pim/addressbook/addressbook.cpp
+++ b/core/pim/addressbook/addressbook.cpp
@@ -101,3 +101,2 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name,
- QBoxLayout *vb = new QVBoxLayout( this, 0, 0 );
// Create Toolbars
@@ -192,4 +191,8 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name,
- abList = new AbTable( &orderedFields, this, "table" );
- vb->insertWidget(0,abList);
+ listContainer = new QWidget( this );
+
+ QVBoxLayout *vb = new QVBoxLayout( listContainer );
+
+ abList = new AbTable( &orderedFields, listContainer, "table" );
+ vb->addWidget(abList);
abList->setHScrollBarMode( QScrollView::AlwaysOff );
@@ -210,5 +213,5 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name,
- pLabel = new LetterPicker( abList );
+ pLabel = new LetterPicker( listContainer );
connect(pLabel, SIGNAL(letterClicked(char)), this, SLOT(slotSetLetter(char)));
- vb->insertWidget(1,pLabel);
+ vb->addWidget(pLabel);
catMenu = new QPopupMenu( this );
@@ -219,3 +222,3 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name,
mbList->insertItem( tr("View"), catMenu );
- setCentralWidget( abList );
+ setCentralWidget( listContainer );
@@ -234,3 +237,3 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name,
mbList->insertItem( tr("Font"), fontMenu);
- setCentralWidget(abList);
+ setCentralWidget(listContainer);
@@ -296,3 +299,3 @@ void AddressbookWindow::resizeEvent( QResizeEvent *e )
- if ( centralWidget() == abList )
+ if ( centralWidget() == listContainer )
showList();
@@ -318,4 +321,4 @@ void AddressbookWindow::showList()
if ( mView ) mView->hide();
- setCentralWidget( abList );
- abList->show();
+ setCentralWidget( listContainer );
+ listContainer->show();
// update our focues... (or use a stack widget!);
@@ -327,3 +330,3 @@ void AddressbookWindow::showView()
if ( abList->numRows() > 0 ) {
- abList->hide();
+ listContainer->hide();
setCentralWidget( abView() );
@@ -603,3 +606,3 @@ void AddressbookWindow::slotPersonalView()
abView()->sync();
- abList->hide();
+ listContainer->hide();
setCentralWidget( abView() );
diff --git a/core/pim/addressbook/addressbook.h b/core/pim/addressbook/addressbook.h
index 31c4660..8e8c883 100644
--- a/core/pim/addressbook/addressbook.h
+++ b/core/pim/addressbook/addressbook.h
@@ -91,2 +91,3 @@ private:
AbTable *abList;
+ QWidget *listContainer;
diff --git a/core/pim/addressbook/picker.cpp b/core/pim/addressbook/picker.cpp
index 06dcc7d..a165451 100644
--- a/core/pim/addressbook/picker.cpp
+++ b/core/pim/addressbook/picker.cpp
@@ -81,6 +81,5 @@ void PickerLabel::mouseReleaseEvent( QMouseEvent *e )
- if (lastLetter != letter1 && lastLetter != letter2 && lastLetter != letter3)
+ if (lastLetter != letter1 && lastLetter != letter2 && lastLetter != letter3 && lastLetter != '\0')
QTimer::singleShot( 0, this, SLOT(emitClearSignal()) );
- qDebug( "a" );
switch (currentLetter) {
@@ -99,3 +98,2 @@ void PickerLabel::mouseReleaseEvent( QMouseEvent *e )
emit selectedLetter( letter1 );
- qDebug( "PickerLabel::mouseReleaseEvent %c", letter1 );
break;
@@ -116,3 +114,2 @@ void PickerLabel::mouseReleaseEvent( QMouseEvent *e )
emit selectedLetter( letter2 );
- qDebug( "PickerLabel::mouseReleaseEvent %c", letter2 );
break;
@@ -132,3 +129,2 @@ void PickerLabel::mouseReleaseEvent( QMouseEvent *e )
emit selectedLetter( letter3 );
- qDebug( "PickerLabel::mouseReleaseEvent %c", letter3 );
break;
@@ -230,3 +226,2 @@ void LetterPicker::newLetter( char letter )
{
- qDebug( "LetterPicker::newLetter %c", letter );
emit letterClicked( letter );