From a41c9b392555b81678c31b3722a2bdb887a1b887 Mon Sep 17 00:00:00 2001 From: Explorer09 Date: Mon, 21 Mar 2016 14:30:37 +0800 Subject: Reword 'Type' to 'Style' for meters. Per @hishamhm's suggestion. This is UI change only. In code the class names and symbols still refer them as "modes". --- MetersPanel.c | 4 +++- MetersPanel.h | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/MetersPanel.c b/MetersPanel.c index fa5300e9..c76603f3 100644 --- a/MetersPanel.c +++ b/MetersPanel.c @@ -31,7 +31,9 @@ struct MetersPanel_ { }*/ -static const char* MetersFunctions[] = {"Type ", "Move ", "Delete", "Done ", NULL}; +// Note: In code the meters are known to have bar/text/graph "Modes", but in UI +// we call them "Styles". +static const char* MetersFunctions[] = {"Style ", "Move ", "Delete", "Done ", NULL}; static const char* MetersKeys[] = {"Space", "Enter", "Del", "Esc"}; static int MetersEvents[] = {' ', 13, KEY_DC, 27}; diff --git a/MetersPanel.h b/MetersPanel.h index 1736dfb4..b012869f 100644 --- a/MetersPanel.h +++ b/MetersPanel.h @@ -27,6 +27,8 @@ struct MetersPanel_ { }; +// Note: In code the meters are known to have bar/text/graph "Modes", but in UI +// we call them "Styles". void MetersPanel_setMoving(MetersPanel* this, bool moving); -- cgit v1.2.3 From 0108117d0b4f1e822f434db173e976aac20b26b5 Mon Sep 17 00:00:00 2001 From: Explorer09 Date: Mon, 21 Mar 2016 15:18:44 +0800 Subject: Mouse-friendly functions bar for meters panel Before: SpaceStyle EnterMove DelDeleteEscDone | ~~~~~ ~~~~~ ~~~ ~~~ | UpUp DnDown LtLeft RtRight EnterConfirmDelDeleteEscDone | ~~ ~~ ~~ ~~ ~~~~~ ~~~ ~~~ | After: SpaceStyle EnterMove DelDeleteF10Done ~~~~~ ~~~~~ ~~ ~~~ ~~~ SpaceStyle EnterLock UpUp DnDown <-Left ->Right DelDeleteF10Done ~~~~~ ~~~~~ ~~ ~~ ~~ ~~ ~~ ~~~ ~~~ * Align 'Delete' and 'Done' to the right to match functions on other screens. (Accidental clicking is avoided as a side benefit.) * You could change meter type while in moving mode. New bar now hints this. * Two Enter key functions are put in the same place and so mouse clicks there act like functions toggle. (The wording change to 'Lock' is also to reflect this.) * '<-' and '->' instead of 'Lt' and 'Rt' abbreviation as the latter is not widely seen and arrows shapes are obvious. :) * 'Esc' key for 'Done' in this context may not be intuitive, comparing to 'F10'. While I wish there be a Cancel/Undo function for 'Esc', it wouldn't hurt if we write 'F10' for 'Done' on functions bar for now. --- MetersPanel.c | 18 +++++++++++------- MetersPanel.h | 4 ++++ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/MetersPanel.c b/MetersPanel.c index c76603f3..22449f3d 100644 --- a/MetersPanel.c +++ b/MetersPanel.c @@ -33,13 +33,17 @@ struct MetersPanel_ { // Note: In code the meters are known to have bar/text/graph "Modes", but in UI // we call them "Styles". -static const char* MetersFunctions[] = {"Style ", "Move ", "Delete", "Done ", NULL}; -static const char* MetersKeys[] = {"Space", "Enter", "Del", "Esc"}; -static int MetersEvents[] = {' ', 13, KEY_DC, 27}; - -static const char* MetersMovingFunctions[] = {"Up ", "Down ", "Left ", "Right ", "Confirm", "Delete", "Done ", NULL}; -static const char* MetersMovingKeys[] = {"Up", "Dn", "Lt", "Rt", "Enter", "Del", "Esc"}; -static int MetersMovingEvents[] = {KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, 13, KEY_DC, 27}; +static const char* MetersFunctions[] = {"Style ", "Move ", " ", "Delete", "Done ", NULL}; +static const char* MetersKeys[] = {"Space", "Enter", " ", "Del", "F10"}; +static int MetersEvents[] = {' ', 13, ERR, KEY_DC, KEY_F(10)}; + +// We avoid UTF-8 arrows ← → here as they might display full-width on Chinese +// terminals, breaking our aligning. +// In , arrows (U+2019..U+2199) are +// considered "Ambiguous characters". +static const char* MetersMovingFunctions[] = {"Style ", "Lock ", "Up ", "Down ", "Left ", "Right ", " ", "Delete", "Done ", NULL}; +static const char* MetersMovingKeys[] = {"Space", "Enter", "Up", "Dn", "<-", "->", " ", "Del", "F10"}; +static int MetersMovingEvents[] = {' ', 13, KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, ERR, KEY_DC, KEY_F(10)}; static FunctionBar* Meters_movingBar = NULL; static void MetersPanel_delete(Object* object) { diff --git a/MetersPanel.h b/MetersPanel.h index b012869f..e00169c8 100644 --- a/MetersPanel.h +++ b/MetersPanel.h @@ -29,6 +29,10 @@ struct MetersPanel_ { // Note: In code the meters are known to have bar/text/graph "Modes", but in UI // we call them "Styles". +// We avoid UTF-8 arrows ← → here as they might display full-width on Chinese +// terminals, breaking our aligning. +// In , arrows (U+2019..U+2199) are +// considered "Ambiguous characters". void MetersPanel_setMoving(MetersPanel* this, bool moving); -- cgit v1.2.3