mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-10-09 00:31:19 +00:00
Each of these headers put a using or namespace alias at global or namespace scope, which every includer inherited: - BBLTopbar.hpp: "using namespace Slic3r::GUI;" at global scope, reached through MainFrame.hpp. Seven source files used GUI names unqualified outside the namespace because of it, one of them as "::RadioBox". - IMSlider.hpp and TickCode.hpp: "using namespace CustomGCode;" inside Slic3r. - ProjectTask.hpp, Jobs/PrintJob.hpp and ConfigWizard_private.hpp: "namespace fs = boost::filesystem;". PresetBundle.cpp and GUI_App.cpp had no alias of their own. - VoronoiUtils.hpp: "using VD = Slic3r::Geometry::VoronoiDiagram;" at global scope. The headers now spell the names out. Source files that used them get the qualifier, or a using of their own where there are many uses.
62 lines
2.1 KiB
C++
62 lines
2.1 KiB
C++
#ifndef slic3r_GUI_TickCode_hpp_
|
|
#define slic3r_GUI_TickCode_hpp_
|
|
|
|
#include "libslic3r/CustomGCode.hpp"
|
|
#include <set>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
namespace Slic3r {
|
|
namespace GUI {
|
|
|
|
struct TickCode
|
|
{
|
|
bool operator<(const TickCode& other) const { return other.tick > this->tick; }
|
|
bool operator>(const TickCode& other) const { return other.tick < this->tick; }
|
|
|
|
int tick = 0;
|
|
CustomGCode::Type type = CustomGCode::ColorChange;
|
|
int extruder = 0;
|
|
std::string color;
|
|
std::string extra;
|
|
};
|
|
|
|
class TickCodeInfo
|
|
{
|
|
std::string pause_print_msg;
|
|
bool m_suppress_plus = false;
|
|
bool m_suppress_minus = false;
|
|
bool m_use_default_colors = false;
|
|
|
|
std::vector<std::string>* m_colors{ nullptr };// reference to IMSlider::m_extruder_colors
|
|
|
|
std::string get_color_for_tick(TickCode tick, CustomGCode::Type type, const int extruder);
|
|
|
|
public:
|
|
std::set<TickCode> ticks{};
|
|
CustomGCode::Mode mode = CustomGCode::Undef;
|
|
|
|
bool empty() const { return ticks.empty(); }
|
|
void set_pause_print_msg(const std::string& message) { pause_print_msg = message; }
|
|
|
|
bool add_tick(const int tick, CustomGCode::Type type, int extruder, double print_z);
|
|
bool edit_tick(std::set<TickCode>::iterator it, double print_z);
|
|
void switch_code(CustomGCode::Type type_from, CustomGCode::Type type_to);
|
|
bool switch_code_for_tick(std::set<TickCode>::iterator it, CustomGCode::Type type_to, const int extruder);
|
|
void erase_all_ticks_with_code(CustomGCode::Type type);
|
|
|
|
bool has_tick_with_code(CustomGCode::Type type);
|
|
bool has_tick(int tick);
|
|
|
|
void suppress_plus(bool suppress) { m_suppress_plus = suppress; }
|
|
void suppress_minus(bool suppress) { m_suppress_minus = suppress; }
|
|
bool suppressed_plus() { return m_suppress_plus; }
|
|
bool suppressed_minus() { return m_suppress_minus; }
|
|
void set_default_colors(bool default_colors_on) { m_use_default_colors = default_colors_on; }
|
|
|
|
void set_extruder_colors(std::vector<std::string>* extruder_colors) { m_colors = extruder_colors; }
|
|
};
|
|
|
|
}} // Slic3r
|
|
|
|
#endif // slic3r_GUI_TickCode_hpp_
|