summaryrefslogtreecommitdiffabout
path: root/kaddressbook
authorzautrix <zautrix>2005-01-27 14:15:50 (UTC)
committer zautrix <zautrix>2005-01-27 14:15:50 (UTC)
commitcd1b9287f2bcd59652ef66186d00dcf5ff8a2a46 (patch) (unidiff)
tree99db53425edb1c68cd880e8221805e0f84ae9a75 /kaddressbook
parent32ad6c6cc658d952c9dfa1fcf5857662bcf01c22 (diff)
downloadkdepimpi-cd1b9287f2bcd59652ef66186d00dcf5ff8a2a46.zip
kdepimpi-cd1b9287f2bcd59652ef66186d00dcf5ff8a2a46.tar.gz
kdepimpi-cd1b9287f2bcd59652ef66186d00dcf5ff8a2a46.tar.bz2
jump 1
Diffstat (limited to 'kaddressbook') (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/jumpbuttonbar.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/kaddressbook/jumpbuttonbar.cpp b/kaddressbook/jumpbuttonbar.cpp
index 184d516..b12d9e7 100644
--- a/kaddressbook/jumpbuttonbar.cpp
+++ b/kaddressbook/jumpbuttonbar.cpp
@@ -98,10 +98,13 @@ QSizePolicy JumpButtonBar::sizePolicy() const
98void JumpButtonBar::letterClicked() 98void JumpButtonBar::letterClicked()
99{ 99{
100 JumpButton *button = (JumpButton*)sender(); 100 JumpButton *button = (JumpButton*)sender();
101 QString character = button->character(); 101 QString character = button->character();
102 if ( character.length() == 2 )
103 character = character.left(1) +"-"+character.right(1);
102 if ( !character.isNull() ) 104 if ( !character.isNull() )
103 emit jumpToLetter( character ); 105 emit jumpToLetter( character );
106 //qDebug("emit *%s* ",character.latin1());
104} 107}
105 108
106void JumpButtonBar::recreateButtons() 109void JumpButtonBar::recreateButtons()
107{ 110{
@@ -121,8 +124,9 @@ void JumpButtonBar::recreateButtons()
121 } else { 124 } else {
122 setEnabled( false ); 125 setEnabled( false );
123 return; 126 return;
124 } 127 }
128 mCharacters.append( "*");
125 for ( it = ab->begin(); it != ab->end(); ++it ) { 129 for ( it = ab->begin(); it != ab->end(); ++it ) {
126 if ( !field->value( *it ).isEmpty() ) 130 if ( !field->value( *it ).isEmpty() )
127 character = field->value( *it )[ 0 ].lower(); 131 character = field->value( *it )[ 0 ].lower();
128 if ( character != "!" ) 132 if ( character != "!" )
@@ -157,14 +161,17 @@ void JumpButtonBar::recreateButtons()
157 bool skipcurrent = false; 161 bool skipcurrent = false;
158 bool state = isUpdatesEnabled(); 162 bool state = isUpdatesEnabled();
159 setUpdatesEnabled( false ); 163 setUpdatesEnabled( false );
160 //qDebug("cc %d ",mCharacters.count() ); 164 //qDebug("cc %d ",mCharacters.count() );
161 JumpButton *button; 165 JumpButton *button = 0;
162 int row = 0, col = 0; 166 int row = 0, col = 0;
163 JumpButton* cur = mButtons.first(); 167 JumpButton* cur = mButtons.first();
164 for ( uint i = 0; i < mCharacters.count(); ++i ) { 168 for ( uint i = 0; i < mCharacters.count(); ++i ) {
165 if ( skipcount > 0 && skipcurrent ) { 169 if ( skipcount > 0 && skipcurrent ) {
166 --skipcount; 170 --skipcount;
171 if ( button ) {
172 button->setCharacter( button->character() + mCharacters[ i ]);
173 }
167 } else { 174 } else {
168 if ( cur ) { 175 if ( cur ) {
169 button = cur ; 176 button = cur ;
170 cur = mButtons.next(); 177 cur = mButtons.next();
@@ -184,10 +191,10 @@ void JumpButtonBar::recreateButtons()
184 col++; 191 col++;
185 } else 192 } else
186 row++; 193 row++;
187 } 194 }
188 195 if ( i > 0 )
189 skipcurrent = !skipcurrent; 196 skipcurrent = !skipcurrent;
190 } 197 }
191 while ( cur ) { 198 while ( cur ) {
192 cur->hide(); 199 cur->hide();
193 cur = mButtons.next(); 200 cur = mButtons.next();