diff options
author | Andreas Kling <awesomekling@gmail.com> | 2019-04-02 14:43:56 +0200 |
---|---|---|
committer | Andreas Kling <awesomekling@gmail.com> | 2019-04-02 14:43:56 +0200 |
commit | f8a1d2746e0f8dbb71a1447a257c44f668e8edbe (patch) | |
tree | e68a809f02a6bbaa9d74091327ff4d77cceac98b /Applications/FileManager/DirectoryView.h | |
parent | b797458962a5f95ff15c0143c20d52702b840c4a (diff) | |
download | serenity-f8a1d2746e0f8dbb71a1447a257c44f668e8edbe.zip |
FileManager: Rename DirectoryTableView => DirectoryView.
Diffstat (limited to 'Applications/FileManager/DirectoryView.h')
-rw-r--r-- | Applications/FileManager/DirectoryView.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Applications/FileManager/DirectoryView.h b/Applications/FileManager/DirectoryView.h new file mode 100644 index 0000000000..564d859237 --- /dev/null +++ b/Applications/FileManager/DirectoryView.h @@ -0,0 +1,40 @@ +#pragma once + +#include <LibGUI/GTableView.h> +#include <LibGUI/GItemView.h> +#include <LibGUI/GStackWidget.h> +#include <sys/stat.h> +#include "DirectoryModel.h" + +class DirectoryView final : public GStackWidget { +public: + explicit DirectoryView(GWidget* parent); + virtual ~DirectoryView() override; + + void open(const String& path); + String path() const { return model().path(); } + void open_parent_directory(); + + void refresh(); + + Function<void(const String&)> on_path_change; + Function<void(String)> on_status_message; + Function<void(int done, int total)> on_thumbnail_progress; + + enum ViewMode { Invalid, List, Icon }; + void set_view_mode(ViewMode); + ViewMode view_mode() const { return m_view_mode; } + +private: + DirectoryModel& model() { return *m_model; } + const DirectoryModel& model() const { return *m_model; } + + void set_status_message(const String&); + + ViewMode m_view_mode { Invalid }; + + Retained<DirectoryModel> m_model; + + GTableView* m_table_view { nullptr }; + GItemView* m_item_view { nullptr }; +}; |