1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 18:38:10 +00:00

HackStudio: Add a simple "open files" view

Instead of files disappearing after you switch to something else,
we now keep track of them in a little ListView below the project tree.

You can return to any previously opened file by activating it in the
open files list. :^)
This commit is contained in:
Andreas Kling 2020-10-26 12:13:32 +01:00
parent 76a2c6e44d
commit 333ab53b8d
4 changed files with 43 additions and 12 deletions

View file

@ -103,6 +103,7 @@ private:
void initialize_debugger();
void create_project_tree_view(GUI::Widget& parent);
void create_open_files_view(GUI::Widget& parent);
void create_form_editor(GUI::Widget& parent);
void create_toolbar(GUI::Widget& parent);
void create_action_tab(GUI::Widget& parent);
@ -121,10 +122,16 @@ private:
NonnullRefPtrVector<EditorWrapper> m_all_editor_wrappers;
RefPtr<EditorWrapper> m_current_editor_wrapper;
// FIXME: This doesn't seem compatible with multiple split editors
String m_currently_open_file;
HashMap<String, NonnullRefPtr<ProjectFile>> m_open_files;
Vector<String> m_open_files_vector; // NOTE: This contains the keys from m_open_files
OwnPtr<Project> m_project;
RefPtr<GUI::TreeView> m_project_tree_view;
RefPtr<GUI::ListView> m_open_files_view;
RefPtr<GUI::VerticalSplitter> m_right_hand_splitter;
RefPtr<GUI::StackWidget> m_right_hand_stack;
RefPtr<GUI::Splitter> m_editors_splitter;