PrusaSlicer-NonPlainar/src/slic3r/GUI/GUI.hpp

78 lines
2.6 KiB
C++
Raw Normal View History

#ifndef slic3r_GUI_hpp_
#define slic3r_GUI_hpp_
#include "libslic3r/Config.hpp"
2018-02-07 10:37:15 +00:00
class wxWindow;
class wxMenuBar;
class wxNotebook;
2018-02-02 11:38:35 +00:00
class wxComboCtrl;
class wxFileDialog;
class wxString;
2018-09-17 13:12:13 +00:00
class wxTopLevelWindow;
namespace Slic3r {
class AppConfig;
class DynamicPrintConfig;
class Print;
namespace GUI {
void disable_screensaver();
void enable_screensaver();
bool debugged();
void break_to_debugger();
AppConfig* get_app_config();
2018-05-04 14:04:43 +00:00
extern void add_menus(wxMenuBar *menu, int event_preferences_changed, int event_language_change);
// Checks if configuration wizard needs to run, calls config_wizard if so.
// Returns whether the Wizard ran.
extern bool config_wizard_startup(bool app_config_exists);
// Opens the configuration wizard, returns true if wizard is finished & accepted.
// The run_reason argument is actually ConfigWizard::RunReason, but int is used here because of Perl.
extern void config_wizard(int run_reason);
2018-02-22 10:12:29 +00:00
// Change option value in config
2018-04-13 10:35:04 +00:00
void change_opt_value(DynamicPrintConfig& config, const t_config_option_key& opt_key, const boost::any& value, int opt_index = 0);
2018-04-13 10:35:04 +00:00
void show_error(wxWindow* parent, const wxString& message);
2018-04-30 12:31:57 +00:00
void show_error_id(int id, const std::string& message); // For Perl
2018-04-13 10:35:04 +00:00
void show_info(wxWindow* parent, const wxString& message, const wxString& title);
void warning_catcher(wxWindow* parent, const wxString& message);
2018-02-02 11:38:35 +00:00
// Creates a wxCheckListBoxComboPopup inside the given wxComboCtrl, filled with the given text and items.
// Items are all initialized to the given value.
// Items must be separated by '|', for example "Item1|Item2|Item3", and so on.
void create_combochecklist(wxComboCtrl* comboCtrl, std::string text, std::string items, bool initial_value);
// Returns the current state of the items listed in the wxCheckListBoxComboPopup contained in the given wxComboCtrl,
// encoded inside an int.
int combochecklist_get_flags(wxComboCtrl* comboCtrl);
// Return wxString from std::string in UTF8
wxString from_u8(const std::string &str);
// Return std::string in UTF8 from wxString
std::string into_u8(const wxString &str);
// Returns the dimensions of the screen on which the main frame is displayed
2018-09-17 13:12:13 +00:00
bool get_current_screen_size(wxWindow *window, unsigned &width, unsigned &height);
// Save window size and maximized status into AppConfig
void save_window_size(wxTopLevelWindow *window, const std::string &name);
// Restore the above
void restore_window_size(wxTopLevelWindow *window, const std::string &name);
// Display an About dialog
extern void about();
// Ask the destop to open the datadir using the default file explorer.
extern void desktop_open_datadir_folder();
} // namespace GUI
} // namespace Slic3r
#endif