summaryrefslogtreecommitdiff
path: root/core/settings
Unidiff
Diffstat (limited to 'core/settings') (more/less context) (ignore whitespace changes)
-rw-r--r--core/settings/button/buttonsettings.cpp3
-rw-r--r--core/settings/button/buttonutils.cpp3
-rw-r--r--core/settings/button/remapdlg.cpp26
3 files changed, 25 insertions, 7 deletions
diff --git a/core/settings/button/buttonsettings.cpp b/core/settings/button/buttonsettings.cpp
index eabb779..942d5e4 100644
--- a/core/settings/button/buttonsettings.cpp
+++ b/core/settings/button/buttonsettings.cpp
@@ -187,59 +187,58 @@ void ButtonSettings::keyPressEvent ( QKeyEvent *e )
187} 187}
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}
200 200
201void ButtonSettings::keyTimeout ( ) 201void ButtonSettings::keyTimeout ( )
202{ 202{
203 if ( m_last_button ) { 203 if ( m_last_button ) {
204 edit ( m_last_button, true ); 204 edit ( m_last_button, true );
205 m_last_button = false; 205 m_last_button = false;
206 } 206 }
207} 207}
208 208
209void ButtonSettings::edit ( buttoninfo *bi, bool hold ) 209void ButtonSettings::edit ( buttoninfo *bi, bool hold )
210{ 210{
211 qDebug ( "remap %s for %s", hold ? "hold" : "press", bi-> m_button-> userText ( ). latin1 ( ));
212 211
213 if ( m_lock ) 212 if ( m_lock )
214 return; 213 return;
215 m_lock = true; 214 m_lock = true;
216 215
217 RemapDlg *d = new RemapDlg ( bi-> m_button, hold, this ); 216 RemapDlg *d = new RemapDlg ( bi-> m_button, hold, this );
218 217
219 d-> showMaximized ( ); 218 d-> showMaximized ( );
220 if ( d-> exec ( ) == QDialog::Accepted ) { 219 if ( d-> exec ( ) == QDialog::Accepted ) {
221 qDebug ( " -> %s %s", d-> message ( ). channel ( ). data ( ), d-> message ( ). message ( ). data ( )); 220
222 221
223 if ( hold ) { 222 if ( hold ) {
224 bi-> m_hmsg = d-> message ( ); 223 bi-> m_hmsg = d-> message ( );
225 bi-> m_hdirty = true; 224 bi-> m_hdirty = true;
226 } 225 }
227 else { 226 else {
228 bi-> m_pmsg = d-> message ( ); 227 bi-> m_pmsg = d-> message ( );
229 bi-> m_pdirty = true; 228 bi-> m_pdirty = true;
230 } 229 }
231 230
232 updateLabels ( ); 231 updateLabels ( );
233 } 232 }
234 233
235 delete d; 234 delete d;
236 235
237 m_lock = false; 236 m_lock = false;
238} 237}
239 238
240void ButtonSettings::accept ( ) 239void ButtonSettings::accept ( )
241{ 240{
242 for ( QListIterator <buttoninfo> it ( m_infos ); *it; ++it ) { 241 for ( QListIterator <buttoninfo> it ( m_infos ); *it; ++it ) {
243 buttoninfo *bi = *it; 242 buttoninfo *bi = *it;
244 243
245 if ( bi-> m_pdirty ) 244 if ( bi-> m_pdirty )
diff --git a/core/settings/button/buttonutils.cpp b/core/settings/button/buttonutils.cpp
index 91d2af3..27a2f38 100644
--- a/core/settings/button/buttonutils.cpp
+++ b/core/settings/button/buttonutils.cpp
@@ -44,49 +44,50 @@ ButtonUtils *ButtonUtils::ButtonUtils::inst ( )
44 } 44 }
45 return p; 45 return p;
46} 46}
47 47
48void ButtonUtils::cleanup ( ) 48void ButtonUtils::cleanup ( )
49{ 49{
50 delete inst ( ); 50 delete inst ( );
51} 51}
52 52
53ButtonUtils::ButtonUtils ( ) 53ButtonUtils::ButtonUtils ( )
54{ 54{
55 m_apps = new AppLnkSet( MimeType::appsFolderName ( )); 55 m_apps = new AppLnkSet( MimeType::appsFolderName ( ));
56} 56}
57 57
58ButtonUtils::~ButtonUtils ( ) 58ButtonUtils::~ButtonUtils ( )
59{ 59{
60 delete m_apps; 60 delete m_apps;
61} 61}
62 62
63qCopInfo ButtonUtils::messageToInfo ( const OQCopMessage &c ) 63qCopInfo ButtonUtils::messageToInfo ( const OQCopMessage &c )
64{ 64{
65 QCString ch = c. channel ( ); 65 QCString ch = c. channel ( );
66 QCString f = c. message ( ); 66 QCString f = c. message ( );
67 67
68 if ( ch. isNull ( )) 68
69 if ( ch == "ignore" )
69 return qCopInfo ( qApp-> translate ( "ButtonSettings", "<nobr>Ignored</nobr>" )); 70 return qCopInfo ( qApp-> translate ( "ButtonSettings", "<nobr>Ignored</nobr>" ));
70 71
71 for ( const predef_qcop *p = predef; p-> m_text; p++ ) { 72 for ( const predef_qcop *p = predef; p-> m_text; p++ ) {
72 if (( ch == p-> m_channel ) && ( f == p-> m_function )) 73 if (( ch == p-> m_channel ) && ( f == p-> m_function ))
73 return qCopInfo ( qApp-> translate ( "ButtonSettings", p-> m_text ), Resource::loadPixmap ( p-> m_pixmap )); 74 return qCopInfo ( qApp-> translate ( "ButtonSettings", p-> m_text ), Resource::loadPixmap ( p-> m_pixmap ));
74 } 75 }
75 76
76 if ( ch. left ( 16 ) == "QPE/Application/" ) { 77 if ( ch. left ( 16 ) == "QPE/Application/" ) {
77 QString app = ch. mid ( 16 ); 78 QString app = ch. mid ( 16 );
78 const AppLnk *applnk = m_apps-> findExec ( app ); 79 const AppLnk *applnk = m_apps-> findExec ( app );
79 if ( applnk ) 80 if ( applnk )
80 app = applnk-> name ( ); 81 app = applnk-> name ( );
81 82
82 if (( f == "raise()" ) || ( f == "nextView()" )) 83 if (( f == "raise()" ) || ( f == "nextView()" ))
83 return qCopInfo ( qApp-> translate ( "ButtonSettings", "<nobr>Show <b>%1</b></nobr>" ). arg ( app ), applnk ? applnk-> pixmap ( ) : QPixmap ( )); 84 return qCopInfo ( qApp-> translate ( "ButtonSettings", "<nobr>Show <b>%1</b></nobr>" ). arg ( app ), applnk ? applnk-> pixmap ( ) : QPixmap ( ));
84 else 85 else
85 return qCopInfo ( qApp-> translate ( "ButtonSettings", "<nobr>Call <b>%1</b>: <i>%2</i></nobr>" ). arg ( app ). arg ( f ), applnk ? applnk-> pixmap ( ) : QPixmap ( )); 86 return qCopInfo ( qApp-> translate ( "ButtonSettings", "<nobr>Call <b>%1</b>: <i>%2</i></nobr>" ). arg ( app ). arg ( f ), applnk ? applnk-> pixmap ( ) : QPixmap ( ));
86 } 87 }
87 else { 88 else {
88 return qCopInfo ( qApp-> translate ( "ButtonSettings", "<nobr>Call <b>%1</b> <i>%2</i></nobr>" ). arg (( ch. left ( 4 ) == "QPE/" ) ? ch. mid ( 4 ) : ch ). arg ( f )); 89 return qCopInfo ( qApp-> translate ( "ButtonSettings", "<nobr>Call <b>%1</b> <i>%2</i></nobr>" ). arg (( ch. left ( 4 ) == "QPE/" ) ? ch. mid ( 4 ) : ch ). arg ( f ));
89 } 90 }
90} 91}
91 92
92 93
diff --git a/core/settings/button/remapdlg.cpp b/core/settings/button/remapdlg.cpp
index a251bd4..b6ee60b 100644
--- a/core/settings/button/remapdlg.cpp
+++ b/core/settings/button/remapdlg.cpp
@@ -38,90 +38,108 @@ public:
38 } 38 }
39 39
40private: 40private:
41 QString m_key; 41 QString m_key;
42 bool m_def; 42 bool m_def;
43}; 43};
44 44
45 45
46RemapDlg::RemapDlg ( const Opie::ODeviceButton *b, bool hold, QWidget *parent, const char *name ) 46RemapDlg::RemapDlg ( const Opie::ODeviceButton *b, bool hold, QWidget *parent, const char *name )
47 : RemapDlgBase ( parent, name, true, WStyle_ContextHelp ) 47 : RemapDlgBase ( parent, name, true, WStyle_ContextHelp )
48{ 48{
49 setCaption ( tr( "%1 %2", "(hold|press) buttoname" ). arg( hold ? tr( "Held" ) : tr( "Pressed" )). arg ( b-> userText ( ))); 49 setCaption ( tr( "%1 %2", "(hold|press) buttoname" ). arg( hold ? tr( "Held" ) : tr( "Pressed" )). arg ( b-> userText ( )));
50 50
51 m_current = 0; 51 m_current = 0;
52 52
53 static const char * const def_channels [] = { "QPE/Application/", "QPE/Launcher", "QPE/System", "QPE/TaskBar", "QPE/", 0 }; 53 static const char * const def_channels [] = { "QPE/Application/", "QPE/Launcher", "QPE/System", "QPE/TaskBar", "QPE/", 0 };
54 w_channel-> insertStrList ((const char **) def_channels ); 54 w_channel-> insertStrList ((const char **) def_channels );
55 55
56 m_msg = hold ? b-> heldAction ( ) : b-> pressedAction ( ); 56 m_msg = hold ? b-> heldAction ( ) : b-> pressedAction ( );
57 m_msg_preset = hold ? b-> factoryPresetHeldAction ( ) : b-> factoryPresetPressedAction ( ); 57 m_msg_preset = hold ? b-> factoryPresetHeldAction ( ) : b-> factoryPresetPressedAction ( );
58 58
59 m_map_none = new NoSortItem ( w_list, 0, tr( "No mapping" )); 59 m_map_none = new NoSortItem ( w_list, 0, tr( "No mapping" ));
60 m_map_preset = new NoSortItem ( w_list, 1, tr( "Default" ), m_msg_preset. channel ( ), m_msg_preset. message ( )); 60 m_map_preset = new NoSortItem ( w_list, 1, tr( "Default" ), m_msg_preset. channel ( ), m_msg_preset. message ( ));
61 ((NoSortItem *) m_map_preset )-> setDefault ( true ); 61 ((NoSortItem *) m_map_preset )-> setDefault ( true );
62 m_map_custom = new NoSortItem ( w_list, 2, tr( "Custom" ), m_msg. channel ( ), m_msg. message ( )); 62
63 if (m_msg. channel ( ) == "ignore")
64 {
65 m_map_custom = new NoSortItem ( w_list, 2, tr( "Custom" ), m_msg_preset. channel ( ), m_msg_preset. message ( ));
66
67 m_current = m_map_none;
68 }
69 else
70 {
71 m_map_custom = new NoSortItem ( w_list, 2, tr( "Custom" ), m_msg. channel ( ), m_msg. message ( ));
72 m_current = m_map_custom;
73 }
63 74
64 QListViewItem *it = new NoSortItem ( w_list, 3, tr( "Actions" )); 75 QListViewItem *it = new NoSortItem ( w_list, 3, tr( "Actions" ));
65 ButtonUtils::inst ( )-> insertActions ( it ); 76 ButtonUtils::inst ( )-> insertActions ( it );
66 it-> setOpen ( true ); 77 it-> setOpen ( true );
67 78
68 m_map_show = new NoSortItem ( w_list, 4, tr( "Show" )); 79 m_map_show = new NoSortItem ( w_list, 4, tr( "Show" ));
69 80
70 m_current = m_map_custom;
71 w_list-> setCurrentItem ( m_current ); 81 w_list-> setCurrentItem ( m_current );
72 82
73 QTimer::singleShot ( 0, this, SLOT( delayedInit ( ))); 83 QTimer::singleShot ( 0, this, SLOT( delayedInit ( )));
74} 84}
75 85
76RemapDlg::~RemapDlg ( ) 86RemapDlg::~RemapDlg ( )
77{ 87{
78} 88}
79 89
80void RemapDlg::delayedInit ( ) 90void RemapDlg::delayedInit ( )
81{ 91{
82 bool b = w_list-> viewport ( )-> isUpdatesEnabled ( ); 92 bool b = w_list-> viewport ( )-> isUpdatesEnabled ( );
83 w_list-> viewport ( )-> setUpdatesEnabled ( false ); 93 w_list-> viewport ( )-> setUpdatesEnabled ( false );
84 94
85 ButtonUtils::inst ( )-> insertAppLnks ( m_map_show ); 95 ButtonUtils::inst ( )-> insertAppLnks ( m_map_show );
86 96
87 w_list-> viewport ( )-> setUpdatesEnabled ( b ); 97 w_list-> viewport ( )-> setUpdatesEnabled ( b );
88 98
89 m_map_show-> repaint ( ); 99 m_map_show-> repaint ( );
90} 100}
91 101
92void RemapDlg::itemChanged ( QListViewItem *it ) 102void RemapDlg::itemChanged ( QListViewItem *it )
93{ 103{
94 bool enabled = false; 104 bool enabled = false;
95 OQCopMessage m; 105 OQCopMessage m;
96 106
97 m_current = it; 107 m_current = it;
98 108
99 if ( it == m_map_none ) 109 if ( it == m_map_none )
100 m_msg = m = OQCopMessage ( 0, 0 ); 110 {
111 m_msg = m = OQCopMessage ( "ignore", 0 );
112 qDebug ("***ignoring");
113 }
101 else if ( it == m_map_preset ) 114 else if ( it == m_map_preset )
115 {
102 m_msg = m = m_msg_preset; 116 m_msg = m = m_msg_preset;
103 else if ( it && !it-> childCount ( )) { 117 qDebug ("***Preset");
118 }
119 else if ( it && !it-> childCount ( ))
120 {
121 qDebug ("***Custom: %s %s ",it-> text ( 1 ). latin1 ( ), it-> text ( 2 ). latin1 ( ));
104 enabled = ( it == m_map_custom ); 122 enabled = ( it == m_map_custom );
105 m_msg = m = OQCopMessage ( it-> text ( 1 ). latin1 ( ), it-> text ( 2 ). latin1 ( )); 123 m_msg = m = OQCopMessage ( it-> text ( 1 ). latin1 ( ), it-> text ( 2 ). latin1 ( ));
106 } 124 }
107 125
108 w_channel-> setEnabled ( enabled ); 126 w_channel-> setEnabled ( enabled );
109 w_message-> setEnabled ( enabled ); 127 w_message-> setEnabled ( enabled );
110 128
111 w_channel-> setEditText ( m. channel ( )); 129 w_channel-> setEditText ( m. channel ( ));
112 w_message-> setEditText ( m. message ( )); 130 w_message-> setEditText ( m. message ( ));
113} 131}
114 132
115void RemapDlg::textChanged ( const QString &str ) 133void RemapDlg::textChanged ( const QString &str )
116{ 134{
117 if ( !m_current ) 135 if ( !m_current )
118 return; 136 return;
119 137
120 QComboBox *which = (QComboBox *) sender ( ); 138 QComboBox *which = (QComboBox *) sender ( );
121 139
122 if ( which == w_channel ) 140 if ( which == w_channel )
123 m_current-> setText ( 1, str ); 141 m_current-> setText ( 1, str );
124 else if ( which == w_message ) 142 else if ( which == w_message )
125 m_current-> setText ( 2, str ); 143 m_current-> setText ( 2, str );
126} 144}
127 145