Files
OrcaSlicer-bambulab/src/slic3r/GUI/GUI.hpp
T

84 lines
3.0 KiB
C++
Raw Normal View History

#ifndef slic3r_GUI_hpp_
#define slic3r_GUI_hpp_
2020-03-04 09:24:13 +01:00
namespace boost { class any; }
namespace boost::filesystem { class path; }
2019-01-02 15:11:05 +01:00
#include <wx/string.h>
2018-11-26 14:41:58 +01:00
#include "libslic3r/Config.hpp"
2018-02-07 11:37:15 +01:00
class wxWindow;
class wxMenuBar;
class wxNotebook;
2018-02-02 12:38:35 +01:00
class wxComboCtrl;
class wxFileDialog;
2018-09-17 15:12:13 +02:00
class wxTopLevelWindow;
namespace Slic3r {
2018-01-03 10:12:42 +01:00
class AppConfig;
class DynamicPrintConfig;
class Print;
2018-02-28 15:39:20 +01:00
namespace GUI {
void disable_screensaver();
void enable_screensaver();
2016-04-13 20:45:44 +02:00
bool debugged();
void break_to_debugger();
// Platform specific Ctrl+/Alt+ (Windows, Linux) vs. ⌘/⌥ (OSX) prefixes
extern const std::string& shortkey_ctrl_prefix();
extern const std::string& shortkey_alt_prefix();
extern AppConfig* get_app_config();
2018-05-04 16:04:43 +02:00
extern void add_menus(wxMenuBar *menu, int event_preferences_changed, int event_language_change);
2018-04-11 12:21:15 +02:00
// Change option value in config
2018-04-13 12:35:04 +02: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 12:35:04 +02:00
void show_error(wxWindow* parent, const wxString& message);
void show_error(wxWindow* parent, const char* message);
inline void show_error(wxWindow* parent, const std::string& message) { show_error(parent, message.c_str()); }
2018-04-30 14:31:57 +02:00
void show_error_id(int id, const std::string& message); // For Perl
void show_info(wxWindow* parent, const wxString& message, const wxString& title = wxString());
void show_info(wxWindow* parent, const char* message, const char* title = nullptr);
inline void show_info(wxWindow* parent, const std::string& message,const std::string& title = std::string()) { show_info(parent, message.c_str(), title.c_str()); }
2018-04-13 12:35:04 +02:00
void warning_catcher(wxWindow* parent, const wxString& message);
2018-02-02 12:38:35 +01:00
// Creates a wxCheckListBoxComboPopup inside the given wxComboCtrl, filled with the given text and items.
// Items data must be separated by '|', and contain the item name to be shown followed by its initial value (0 for false, 1 for true).
// For example "Item1|0|Item2|1|Item3|0", and so on.
void create_combochecklist(wxComboCtrl* comboCtrl, const std::string& text, const std::string& items);
2018-02-02 12:38:35 +01:00
// Returns the current state of the items listed in the wxCheckListBoxComboPopup contained in the given wxComboCtrl,
// encoded inside an unsigned int.
unsigned int combochecklist_get_flags(wxComboCtrl* comboCtrl);
// Sets the current state of the items listed in the wxCheckListBoxComboPopup contained in the given wxComboCtrl,
// with the flags encoded in the given unsigned int.
void combochecklist_set_flags(wxComboCtrl* comboCtrl, unsigned int flags);
2018-02-02 12:38:35 +01:00
2019-01-02 15:11:05 +01:00
// wxString conversions:
// wxString from std::string in UTF8
2018-03-06 09:44:53 +01:00
wxString from_u8(const std::string &str);
2019-01-02 15:11:05 +01:00
// std::string in UTF8 from wxString
std::string into_u8(const wxString &str);
2019-01-02 15:11:05 +01:00
// wxString from boost path
wxString from_path(const boost::filesystem::path &path);
// boost path from wxString
boost::filesystem::path into_path(const wxString &str);
// 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