summaryrefslogtreecommitdiff
path: root/core/settings/button/buttonsettings.cpp
Unidiff
Diffstat (limited to 'core/settings/button/buttonsettings.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/settings/button/buttonsettings.cpp66
1 files changed, 33 insertions, 33 deletions
diff --git a/core/settings/button/buttonsettings.cpp b/core/settings/button/buttonsettings.cpp
index 942d5e4..b6a07a8 100644
--- a/core/settings/button/buttonsettings.cpp
+++ b/core/settings/button/buttonsettings.cpp
@@ -14,9 +14,9 @@
14    : ..    .:,     . . . without even the implied warranty of 14    : ..    .:,     . . . without even the implied warranty of
15    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 15    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A
16  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General 16  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General
17..}^=.=       =       ; Public License for more details. 17..}^=.=       =       ; Public License for more details.
18++=   -.     .`     .: 18++=   -.     .`     .:
19 :     =  ...= . :.=- You should have received a copy of the GNU 19 :     =  ...= . :.=- You should have received a copy of the GNU
20 -.   .:....=;==+<; General Public License along with this file; 20 -.   .:....=;==+<; General Public License along with this file;
21  -_. . .   )=.  = see the file COPYING. If not, write to the 21  -_. . .   )=.  = see the file COPYING. If not, write to the
22    --        :-=` Free Software Foundation, Inc., 22    --        :-=` Free Software Foundation, Inc.,
@@ -49,36 +49,36 @@ struct buttoninfo {
49 49
50 OQCopMessage m_hmsg; 50 OQCopMessage m_hmsg;
51 QLabel *m_hicon; 51 QLabel *m_hicon;
52 QLabel *m_hlabel; 52 QLabel *m_hlabel;
53 53
54 bool m_pdirty : 1; 54 bool m_pdirty : 1;
55 bool m_hdirty : 1; 55 bool m_hdirty : 1;
56}; 56};
57 57
58 58
59ButtonSettings::ButtonSettings ( ) 59ButtonSettings::ButtonSettings ( QWidget *parent , const char *name, bool modal, WFlags f )
60 : QDialog ( 0, "ButtonSettings", false, WStyle_ContextHelp ) 60 : QDialog ( 0, "ButtonSettings", false, WStyle_ContextHelp )
61{ 61{
62 const QValueList <ODeviceButton> &buttons = ODevice::inst ( )-> buttons ( ); 62 const QValueList <ODeviceButton> &buttons = ODevice::inst ( )-> buttons ( );
63 (void) ButtonUtils::inst ( ); // initialise 63 (void) ButtonUtils::inst ( ); // initialise
64 64
65 setCaption ( tr( "Button Settings" )); 65 setCaption ( tr( "Button Settings" ));
66 66
67 QVBoxLayout *toplay = new QVBoxLayout ( this, 3, 3 ); 67 QVBoxLayout *toplay = new QVBoxLayout ( this, 3, 3 );
68 68
69 QLabel *l = new QLabel ( tr( "<center>Press or hold the button you want to remap.</center>" ), this ); 69 QLabel *l = new QLabel ( tr( "<center>Press or hold the button you want to remap.</center>" ), this );
70 toplay-> addWidget ( l ); 70 toplay-> addWidget ( l );
71 71
72 QGridLayout *lay = new QGridLayout ( toplay ); 72 QGridLayout *lay = new QGridLayout ( toplay );
73 lay-> setMargin ( 0 ); 73 lay-> setMargin ( 0 );
74 lay-> setColStretch ( 0, 0 ); 74 lay-> setColStretch ( 0, 0 );
75 lay-> setColStretch ( 1, 0 ); 75 lay-> setColStretch ( 1, 0 );
76 lay-> setColStretch ( 2, 0 ); 76 lay-> setColStretch ( 2, 0 );
77 lay-> setColStretch ( 3, 10 ); 77 lay-> setColStretch ( 3, 10 );
78 78
79 m_infos. setAutoDelete ( true ); 79 m_infos. setAutoDelete ( true );
80 80
81 int i = 1; 81 int i = 1;
82 int index = 0; 82 int index = 0;
83 for ( QValueList<ODeviceButton>::ConstIterator it = buttons. begin ( ); it != buttons. end ( ); it++ ) { 83 for ( QValueList<ODeviceButton>::ConstIterator it = buttons. begin ( ); it != buttons. end ( ); it++ ) {
84 if ( it != buttons. begin ( )) { 84 if ( it != buttons. begin ( )) {
@@ -94,19 +94,19 @@ ButtonSettings::ButtonSettings ( )
94 bi-> m_pmsg = (*it). pressedAction ( ); 94 bi-> m_pmsg = (*it). pressedAction ( );
95 bi-> m_hmsg = (*it). heldAction ( ); 95 bi-> m_hmsg = (*it). heldAction ( );
96 bi-> m_pdirty = false; 96 bi-> m_pdirty = false;
97 bi-> m_hdirty = false; 97 bi-> m_hdirty = false;
98 98
99 l = new QLabel ( this ); 99 l = new QLabel ( this );
100 l-> setPixmap (( *it ). pixmap ( )); 100 l-> setPixmap (( *it ). pixmap ( ));
101 101
102 lay-> addMultiCellWidget ( l, i, i + 1, 0, 0 ); 102 lay-> addMultiCellWidget ( l, i, i + 1, 0, 0 );
103 103
104 l = new QLabel ( tr( "Press:" ), this ); 104 l = new QLabel ( tr( "Press:" ), this );
105 lay-> addWidget ( l, i, 1, AlignLeft | AlignBottom ); 105 lay-> addWidget ( l, i, 1, AlignLeft | AlignBottom );
106 l = new QLabel ( tr( "Hold:" ), this ); 106 l = new QLabel ( tr( "Hold:" ), this );
107 lay-> addWidget ( l, i + 1, 1, AlignLeft | AlignTop ); 107 lay-> addWidget ( l, i + 1, 1, AlignLeft | AlignTop );
108 108
109 l = new QLabel ( this ); 109 l = new QLabel ( this );
110 l-> setFixedSize ( 16, 16 ); 110 l-> setFixedSize ( 16, 16 );
111 lay-> addWidget ( l, i, 2, AlignLeft | AlignBottom ); 111 lay-> addWidget ( l, i, 2, AlignLeft | AlignBottom );
112 bi-> m_picon = l; 112 bi-> m_picon = l;
@@ -114,9 +114,9 @@ ButtonSettings::ButtonSettings ( )
114 l = new QLabel ( this ); 114 l = new QLabel ( this );
115 l-> setAlignment ( AlignLeft | AlignVCenter | SingleLine ); 115 l-> setAlignment ( AlignLeft | AlignVCenter | SingleLine );
116 lay-> addWidget ( l, i, 3, AlignLeft | AlignBottom ); 116 lay-> addWidget ( l, i, 3, AlignLeft | AlignBottom );
117 bi-> m_plabel = l; 117 bi-> m_plabel = l;
118 118
119 l = new QLabel ( this ); 119 l = new QLabel ( this );
120 l-> setFixedSize ( 16, 16 ); 120 l-> setFixedSize ( 16, 16 );
121 lay-> addWidget ( l, i + 1, 2, AlignLeft | AlignTop ); 121 lay-> addWidget ( l, i + 1, 2, AlignLeft | AlignTop );
122 bi-> m_hicon = l; 122 bi-> m_hicon = l;
@@ -124,24 +124,24 @@ ButtonSettings::ButtonSettings ( )
124 l = new QLabel ( this ); 124 l = new QLabel ( this );
125 l-> setAlignment ( AlignLeft | AlignVCenter | SingleLine ); 125 l-> setAlignment ( AlignLeft | AlignVCenter | SingleLine );
126 lay-> addWidget ( l, i + 1, 3, AlignLeft | AlignTop ); 126 lay-> addWidget ( l, i + 1, 3, AlignLeft | AlignTop );
127 bi-> m_hlabel = l; 127 bi-> m_hlabel = l;
128 128
129 i += 2; 129 i += 2;
130 130
131 m_infos. append ( bi ); 131 m_infos. append ( bi );
132 } 132 }
133 133
134 toplay-> addStretch ( 10 ); 134 toplay-> addStretch ( 10 );
135 135
136 m_last_button = 0; 136 m_last_button = 0;
137 m_lock = false; 137 m_lock = false;
138 138
139 m_timer = new QTimer ( this ); 139 m_timer = new QTimer ( this );
140 connect ( m_timer, SIGNAL( timeout ( )), this, SLOT( keyTimeout ( ))); 140 connect ( m_timer, SIGNAL( timeout ( )), this, SLOT( keyTimeout ( )));
141 141
142 updateLabels ( ); 142 updateLabels ( );
143 143
144 QPEApplication::grabKeyboard ( ); 144 QPEApplication::grabKeyboard ( );
145} 145}
146 146
147ButtonSettings::~ButtonSettings ( ) 147ButtonSettings::~ButtonSettings ( )
@@ -152,9 +152,9 @@ ButtonSettings::~ButtonSettings ( )
152void ButtonSettings::updateLabels ( ) 152void ButtonSettings::updateLabels ( )
153{ 153{
154 for ( QListIterator <buttoninfo> it ( m_infos ); *it; ++it ) { 154 for ( QListIterator <buttoninfo> it ( m_infos ); *it; ++it ) {
155 qCopInfo cip = ButtonUtils::inst ( )-> messageToInfo ((*it)-> m_pmsg ); 155 qCopInfo cip = ButtonUtils::inst ( )-> messageToInfo ((*it)-> m_pmsg );
156 156
157 (*it)-> m_picon-> setPixmap ( cip. m_icon ); 157 (*it)-> m_picon-> setPixmap ( cip. m_icon );
158 (*it)-> m_plabel-> setText ( cip. m_name ); 158 (*it)-> m_plabel-> setText ( cip. m_name );
159 159
160 qCopInfo cih = ButtonUtils::inst ( )-> messageToInfo ((*it)-> m_hmsg ); 160 qCopInfo cih = ButtonUtils::inst ( )-> messageToInfo ((*it)-> m_hmsg );
@@ -167,18 +167,18 @@ void ButtonSettings::updateLabels ( )
167buttoninfo *ButtonSettings::buttonInfoForKeycode ( ushort key ) 167buttoninfo *ButtonSettings::buttonInfoForKeycode ( ushort key )
168{ 168{
169 for ( QListIterator <buttoninfo> it ( m_infos ); *it; ++it ) { 169 for ( QListIterator <buttoninfo> it ( m_infos ); *it; ++it ) {
170 if ((*it)-> m_button-> keycode ( ) == key ) 170 if ((*it)-> m_button-> keycode ( ) == key )
171 return *it; 171 return *it;
172 } 172 }
173 return 0; 173 return 0;
174} 174}
175 175
176void ButtonSettings::keyPressEvent ( QKeyEvent *e ) 176void ButtonSettings::keyPressEvent ( QKeyEvent *e )
177{ 177{
178 buttoninfo *bi = buttonInfoForKeycode ( e-> key ( )); 178 buttoninfo *bi = buttonInfoForKeycode ( e-> key ( ));
179 179
180 if ( bi && !e-> isAutoRepeat ( )) { 180 if ( bi && !e-> isAutoRepeat ( )) {
181 m_timer-> stop ( ); 181 m_timer-> stop ( );
182 m_last_button = bi; 182 m_last_button = bi;
183 m_timer-> start ( ODevice::inst ( )-> buttonHoldTime ( ), true ); 183 m_timer-> start ( ODevice::inst ( )-> buttonHoldTime ( ), true );
184 } 184 }
@@ -188,12 +188,12 @@ void ButtonSettings::keyPressEvent ( QKeyEvent *e )
188 188
189void ButtonSettings::keyReleaseEvent ( QKeyEvent *e ) 189void ButtonSettings::keyReleaseEvent ( QKeyEvent *e )
190{ 190{
191 buttoninfo *bi = buttonInfoForKeycode ( e-> key ( )); 191 buttoninfo *bi = buttonInfoForKeycode ( e-> key ( ));
192 192
193 if ( bi && !e-> isAutoRepeat ( ) && m_timer-> isActive ( )) { 193 if ( bi && !e-> isAutoRepeat ( ) && m_timer-> isActive ( )) {
194 m_timer-> stop ( ); 194 m_timer-> stop ( );
195 edit ( bi, false ); 195 edit ( bi, false );
196 } 196 }
197 else 197 else
198 QDialog::keyReleaseEvent ( e ); 198 QDialog::keyReleaseEvent ( e );
199} 199}
@@ -207,41 +207,41 @@ void ButtonSettings::keyTimeout ( )
207} 207}
208 208
209void ButtonSettings::edit ( buttoninfo *bi, bool hold ) 209void ButtonSettings::edit ( buttoninfo *bi, bool hold )
210{ 210{
211 211
212 if ( m_lock ) 212 if ( m_lock )
213 return; 213 return;
214 m_lock = true; 214 m_lock = true;
215 215
216 RemapDlg *d = new RemapDlg ( bi-> m_button, hold, this ); 216 RemapDlg *d = new RemapDlg ( bi-> m_button, hold, this );
217 217
218 d-> showMaximized ( ); 218 d-> showMaximized ( );
219 if ( d-> exec ( ) == QDialog::Accepted ) { 219 if ( d-> exec ( ) == QDialog::Accepted ) {
220 220
221 221
222 if ( hold ) { 222 if ( hold ) {
223 bi-> m_hmsg = d-> message ( ); 223 bi-> m_hmsg = d-> message ( );
224 bi-> m_hdirty = true; 224 bi-> m_hdirty = true;
225 } 225 }
226 else { 226 else {
227 bi-> m_pmsg = d-> message ( ); 227 bi-> m_pmsg = d-> message ( );
228 bi-> m_pdirty = true; 228 bi-> m_pdirty = true;
229 } 229 }
230 230
231 updateLabels ( ); 231 updateLabels ( );
232 } 232 }
233 233
234 delete d; 234 delete d;
235 235
236 m_lock = false; 236 m_lock = false;
237} 237}
238 238
239void ButtonSettings::accept ( ) 239void ButtonSettings::accept ( )
240{ 240{
241 for ( QListIterator <buttoninfo> it ( m_infos ); *it; ++it ) { 241 for ( QListIterator <buttoninfo> it ( m_infos ); *it; ++it ) {
242 buttoninfo *bi = *it; 242 buttoninfo *bi = *it;
243 243
244 if ( bi-> m_pdirty ) 244 if ( bi-> m_pdirty )
245 ODevice::inst ( )-> remapPressedAction ( bi-> m_index, bi-> m_pmsg ); 245 ODevice::inst ( )-> remapPressedAction ( bi-> m_index, bi-> m_pmsg );
246 if ( bi-> m_hdirty ) 246 if ( bi-> m_hdirty )
247 ODevice::inst ( )-> remapHeldAction ( bi-> m_index, bi-> m_hmsg ); 247 ODevice::inst ( )-> remapHeldAction ( bi-> m_index, bi-> m_hmsg );