mirror of https://github.com/xzeldon/htop.git
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.
This commit is contained in:
parent
a41c9b3925
commit
0108117d0b
|
@ -33,13 +33,17 @@ struct MetersPanel_ {
|
||||||
|
|
||||||
// Note: In code the meters are known to have bar/text/graph "Modes", but in UI
|
// Note: In code the meters are known to have bar/text/graph "Modes", but in UI
|
||||||
// we call them "Styles".
|
// we call them "Styles".
|
||||||
static const char* MetersFunctions[] = {"Style ", "Move ", "Delete", "Done ", NULL};
|
static const char* MetersFunctions[] = {"Style ", "Move ", " ", "Delete", "Done ", NULL};
|
||||||
static const char* MetersKeys[] = {"Space", "Enter", "Del", "Esc"};
|
static const char* MetersKeys[] = {"Space", "Enter", " ", "Del", "F10"};
|
||||||
static int MetersEvents[] = {' ', 13, KEY_DC, 27};
|
static int MetersEvents[] = {' ', 13, ERR, KEY_DC, KEY_F(10)};
|
||||||
|
|
||||||
static const char* MetersMovingFunctions[] = {"Up ", "Down ", "Left ", "Right ", "Confirm", "Delete", "Done ", NULL};
|
// We avoid UTF-8 arrows ← → here as they might display full-width on Chinese
|
||||||
static const char* MetersMovingKeys[] = {"Up", "Dn", "Lt", "Rt", "Enter", "Del", "Esc"};
|
// terminals, breaking our aligning.
|
||||||
static int MetersMovingEvents[] = {KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, 13, KEY_DC, 27};
|
// In <http://unicode.org/reports/tr11/>, 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 FunctionBar* Meters_movingBar = NULL;
|
||||||
|
|
||||||
static void MetersPanel_delete(Object* object) {
|
static void MetersPanel_delete(Object* object) {
|
||||||
|
|
|
@ -29,6 +29,10 @@ struct MetersPanel_ {
|
||||||
|
|
||||||
// Note: In code the meters are known to have bar/text/graph "Modes", but in UI
|
// Note: In code the meters are known to have bar/text/graph "Modes", but in UI
|
||||||
// we call them "Styles".
|
// we call them "Styles".
|
||||||
|
// We avoid UTF-8 arrows ← → here as they might display full-width on Chinese
|
||||||
|
// terminals, breaking our aligning.
|
||||||
|
// In <http://unicode.org/reports/tr11/>, arrows (U+2019..U+2199) are
|
||||||
|
// considered "Ambiguous characters".
|
||||||
|
|
||||||
void MetersPanel_setMoving(MetersPanel* this, bool moving);
|
void MetersPanel_setMoving(MetersPanel* this, bool moving);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue