Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Control: StatusBar/Function Bar #9

Closed
migueldeicaza opened this issue Jan 11, 2018 · 3 comments
Closed

Control: StatusBar/Function Bar #9

migueldeicaza opened this issue Jan 11, 2018 · 3 comments

Comments

@migueldeicaza
Copy link
Collaborator

This is the function bar at the bottom of the screen that provides a visual cue for the available commands.

@migueldeicaza migueldeicaza changed the title Control: Function Bar Control: StatusBar/Function Bar Jan 24, 2018
@Slesa
Copy link
Contributor

Slesa commented May 3, 2019

There are two possibilities here: just show a part (or all) of the available hotkeys, or show a short message. Or hide the hotkey content when a message is shown for a short time.

Should the StatusBar be multiline? Should it also handle the hotkeys or just display them? In the latter case, it only has to display a content with a color-switching character:

new StatusLine("~F1~ Help ~F2~ Save ~F3~ Load");

in the former it probably looks like

new StatusLine()
  .AddCommand( new Command("F1", "Help", () => Help() )
  .AddCommand( new Command("F2", "Save", () => Save(), () => CanSave() )
  .AddCommand( new Command("F3", "Load", () => Load(), () => CanLoad() );

@migueldeicaza
Copy link
Collaborator Author

Some other topics to ponder:

  • Is the StatusBar the provider of the global accelerator, or just a useful display? I think it should provide the accelerator, and respond to keyboard input
  • I think that if we go with a global one, that we need a push/pop system, but perhaps the pushing/popping should be the job of running a new toplevel.

@tig
Copy link
Collaborator

tig commented May 19, 2020

StatusBar is in. Closing.

@tig tig closed this as completed May 19, 2020
tig added a commit that referenced this issue Feb 25, 2023
* Changed ansi esc sequence used on exit.

* Changed ansi esc sequence used on exit.

* Improves HeightAsBuffer although currently only works on Windows.

* Fixes #2267. Toplevel.EnsureVisibleBounds throws an exception if border is null.

* Changing comment as requested.

* Fixes indentation.

* Seems not needed for now, maybe some update, comment for now.

* Renamed HeightAsBuffer to EnableConsoleScrolling and made it obsolete.

* Add comment on remarks for EnableConsoleScrolling.

* merged @BDisp's EnableConsoleScrolling PR

* Fixes buffer for Windows Terminal.

* Fixes issue in Windows Terminal on resizing causing some lines not be drawing after exceptions.

* merge #9

* merged #9

* use ESC [ ? 1047

* Tweaks with new esc codes

* Fixed curses driver to not nuke scroll buffer and to resize properly

* merge

* Cleand up netdriver escape codes

* fixed spaces->tabs

* fixed spaces->tabs

* fixed spaces->tabs

* fixed spaces->tabs

* fixed merge issue and  spaces->tabs

* fixed spaces->tabs

* fixed spaces->tabs

* fixed spaces->tabs

* fixed  build error

* removed old comments

* Resolving merge conflicts.

* Ensuring reset the EnableConsoleScrolling.

* Changing from HeightAsBuffer to EnableConsoleScrolling.

* Done requested changes.

* Reformatting.

* Rename to EscSeqReqStatus.

* Removing Console.Out.Flush ();

---------

Co-authored-by: Charlie Kindel <tig@users.noreply.github.com>
Co-authored-by: Tig Kindel <tig@kindel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants