// This file Copyright © 2005-2022 Transmission authors and contributors. // It may be used under the MIT (SPDX: MIT) license. // License text can be found in the licenses/ folder. #pragma once #include #include #include #include class Session; class MainWindow : public Gtk::ApplicationWindow { public: ~MainWindow() override; TR_DISABLE_COPY_MOVE(MainWindow) static std::unique_ptr create( Gtk::Application& app, Glib::RefPtr const& actions, Glib::RefPtr const& core); Glib::RefPtr get_selection() const; void set_busy(bool isBusy); void refresh(); protected: MainWindow(Gtk::Application& app, Glib::RefPtr const& actions, Glib::RefPtr const& core); private: class Impl; std::unique_ptr const impl_; };