mirror of
https://github.com/QIDITECH/QIDISlicer.git
synced 2026-02-01 08:28:42 +03:00
QIDISlicer1.0.0
This commit is contained in:
65
src/slic3r/GUI/GUI_ObjectSettings.hpp
Normal file
65
src/slic3r/GUI/GUI_ObjectSettings.hpp
Normal file
@@ -0,0 +1,65 @@
|
||||
#ifndef slic3r_GUI_ObjectSettings_hpp_
|
||||
#define slic3r_GUI_ObjectSettings_hpp_
|
||||
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <wx/panel.h>
|
||||
#include "wxExtensions.hpp"
|
||||
|
||||
class wxBoxSizer;
|
||||
|
||||
namespace Slic3r {
|
||||
class DynamicPrintConfig;
|
||||
class ModelConfig;
|
||||
namespace GUI {
|
||||
class ConfigOptionsGroup;
|
||||
|
||||
class OG_Settings
|
||||
{
|
||||
protected:
|
||||
std::shared_ptr<ConfigOptionsGroup> m_og;
|
||||
wxWindow* m_parent;
|
||||
public:
|
||||
OG_Settings(wxWindow* parent, const bool staticbox);
|
||||
virtual ~OG_Settings() {}
|
||||
|
||||
virtual bool IsShown();
|
||||
virtual void Show(const bool show);
|
||||
virtual void Hide();
|
||||
virtual void UpdateAndShow(const bool show);
|
||||
|
||||
virtual wxSizer* get_sizer();
|
||||
ConfigOptionsGroup* get_og() { return m_og.get(); }
|
||||
const ConfigOptionsGroup* get_og() const { return m_og.get(); }
|
||||
wxWindow* parent() const {return m_parent; }
|
||||
};
|
||||
|
||||
|
||||
class ObjectSettings : public OG_Settings
|
||||
{
|
||||
// sizer for extra Object/Part's settings
|
||||
wxBoxSizer* m_settings_list_sizer{ nullptr };
|
||||
// option groups for settings
|
||||
std::vector <std::shared_ptr<ConfigOptionsGroup>> m_og_settings;
|
||||
|
||||
ScalableBitmap m_bmp_delete;
|
||||
ScalableBitmap m_bmp_delete_focus;
|
||||
|
||||
public:
|
||||
ObjectSettings(wxWindow* parent);
|
||||
~ObjectSettings() {}
|
||||
|
||||
bool update_settings_list();
|
||||
/* Additional check for override options: Add options, if its needed.
|
||||
* Example: if Infill is set to 100%, and Fill Pattern is missed in config_to,
|
||||
* we should add fill_pattern to avoid endless loop in update
|
||||
*/
|
||||
bool add_missed_options(ModelConfig *config_to, const DynamicPrintConfig &config_from);
|
||||
void update_config_values(ModelConfig *config);
|
||||
void UpdateAndShow(const bool show) override;
|
||||
void sys_color_changed();
|
||||
};
|
||||
|
||||
}}
|
||||
|
||||
#endif // slic3r_GUI_ObjectSettings_hpp_
|
||||
Reference in New Issue
Block a user