#pragma once #include #include #include "DirectoryTableModel.h" class DirectoryTableView final : public GTableView { public: explicit DirectoryTableView(GWidget* parent); virtual ~DirectoryTableView() override; void open(const String& path); String path() const { return model().path(); } void open_parent_directory(); Function on_path_change; Function on_status_message; private: virtual void model_notification(const GModelNotification&) override; DirectoryTableModel& model() { return static_cast(*GTableView::model()); } const DirectoryTableModel& model() const { return static_cast(*GTableView::model()); } void set_status_message(const String&); };