Re: [PATCH] opie-multikey: Rename config dialog buttons to be more clear

Erik Hovland <[email protected]> Fri, 12 Jan 2007 10:04:57 -0800
Newsgroups gmane.comp.handhelds.opie.devel
Message-ID <[email protected]>
On Thu, Jan 11, 2007 at 11:42:24PM +0200, Paul Sokolovsky wrote:
> opie-multikey: Rename buttons to add/remove custom keymap to be more clear.
> * opie-multikey needs usability improvements at all - it may take a user
> some effort to figure out that to change language layout, one needs to call
> config (which lives on a key marked as shift), select language, and tap
> OK at window top. Most people would tap "Add" and present with file selection
> dialog with unknown to them purpose. So, at lease name buttons "Add custom..."
> and "Remove custom", to correspond to their functions.

I have attached a patch which shows what I think keeps the spirit of
your patch. It changes the button to say 'Add keymap' and 'Remove
keymap'. It also hides the remove button until a custom keymap has been
selected. This should help the friendliness of the dialogue.

Let me know what you think.

E

-- 
Erik Hovland
mail: erik AT hovland DOT org
web: http://hovland.org/
PGP/GPG public key available on request

_______________________________________________

http://opie.handhelds.org/cgi-bin/moin.cgi/DeveloperWikiIndex

Opie-devel mailing list
[email protected]
https://handhelds.org/mailman/listinfo/opie-devel
pauls-keymap-suggestion.patch (text/plain, 3 KB)
Index: inputmethods/multikey/configdlg.h
===================================================================
--- inputmethods/multikey/configdlg.h.orig
+++ inputmethods/multikey/configdlg.h
@@ -52,7 +52,7 @@ private:
 
     QStringList default_maps; // the maps in your share/multikey/ dir
     QStringList custom_maps; // maps you added with the 'add' button
-    QStringList sw_maps; // maps, which used in keyboard switch rotation ring
+    QStringList sw_maps; // maps used in keyboard switch rotation ring
 
     /* color buttons */
     QPushButton *keycolor_button;
Index: inputmethods/multikey/configdlg.cpp
===================================================================
--- inputmethods/multikey/configdlg.cpp.orig
+++ inputmethods/multikey/configdlg.cpp
@@ -83,7 +83,7 @@ ConfigDlg::ConfigDlg () : QDialog ()
     keymaps->setSelected(0, true);
     
     QDir map_dir(QPEApplication::qpeDir() + "share/multikey", "*.keymap");
-    default_maps = map_dir.entryList(); // so i can access it in other places
+    default_maps = map_dir.entryList(); // so the object can access keymaps in other places
     custom_maps = config.readListEntry("maps", QChar('|'));
     sw_maps = ConfigDlg::loadSw();
 
@@ -144,14 +144,16 @@ ConfigDlg::ConfigDlg () : QDialog ()
     add_remove_grid->setMargin(3);
     add_remove_grid->setSpacing(3);
 
-    add_button = new QPushButton(tr("Add"), add_remove_grid);
+    add_button = new QPushButton(tr("Add keymap"), add_remove_grid);
     add_button->setFlat(TRUE);
     connect(add_button, SIGNAL(clicked()), SLOT(addMap()));
 
-    remove_button = new QPushButton(tr("Remove"), add_remove_grid);
+    remove_button = new QPushButton(tr("Remove keymap"), add_remove_grid);
     remove_button->setFlat(TRUE);
-    if (keymaps->currentItem() == 0 || default_maps.find(QFileInfo(current_map).fileName()) != default_maps.end())
-	remove_button->setDisabled(true);
+    if (keymaps->currentItem() == 0 || default_maps.find(QFileInfo(current_map).fileName()) != default_maps.end()) {
+        remove_button->setDisabled(true);
+        remove_button->hide();
+    }
     connect(remove_button, SIGNAL(clicked()), SLOT(removeMap()));
 
     gen_lay->addWidget(map_group);
@@ -305,15 +307,17 @@ void ConfigDlg::accept()
     if (index == 0) {
 
         remove_button->setDisabled(true);
+        remove_button->hide();
         emit setMapToDefault();
     }
     else if (default_maps.find(sw_maps[index-1]) != default_maps.end()) {
 
         remove_button->setDisabled(true);
+        remove_button->hide();
         emit setMapToFile(QPEApplication::qpeDir() + "share/multikey/" + sw_maps[index - 1]);
 
     } else {
-
+        remove_button->show();
         remove_button->setEnabled(true);
         emit setMapToFile(sw_maps[index - 1]);
     }
@@ -368,7 +372,9 @@ void ConfigDlg::setMap(int index) {
 
     if (index == 0 || default_maps.find(sw_maps[index-1]) != default_maps.end()) {
         remove_button->setDisabled(true);
+        remove_button->hide();
     } else {
+        remove_button->show();
         remove_button->setEnabled(true);
     }
 }