Merge branch 'dev_native' of https://github.com/prusa3d/Slic3r into dev_native
This commit is contained in:
commit
f3c9a798dd
4 changed files with 21 additions and 9 deletions
|
@ -86,7 +86,7 @@ public:
|
||||||
// In case the step has already been entered or finished, cancel the background
|
// In case the step has already been entered or finished, cancel the background
|
||||||
// processing by calling the cancel callback.
|
// processing by calling the cancel callback.
|
||||||
template<typename CancelationCallback>
|
template<typename CancelationCallback>
|
||||||
bool invalidate(StepType step, tbb::mutex &mtx, CancelationCallback &cancel) {
|
bool invalidate(StepType step, tbb::mutex &mtx, CancelationCallback cancel) {
|
||||||
bool invalidated = m_state[step].load(std::memory_order_relaxed) != INVALID;
|
bool invalidated = m_state[step].load(std::memory_order_relaxed) != INVALID;
|
||||||
if (invalidated) {
|
if (invalidated) {
|
||||||
#if 0
|
#if 0
|
||||||
|
@ -109,7 +109,7 @@ public:
|
||||||
// In case any step has already been entered or finished, cancel the background
|
// In case any step has already been entered or finished, cancel the background
|
||||||
// processing by calling the cancel callback.
|
// processing by calling the cancel callback.
|
||||||
template<typename CancelationCallback>
|
template<typename CancelationCallback>
|
||||||
bool invalidate_all(tbb::mutex &mtx, CancelationCallback &cancel) {
|
bool invalidate_all(tbb::mutex &mtx, CancelationCallback cancel) {
|
||||||
bool invalidated = false;
|
bool invalidated = false;
|
||||||
for (size_t i = 0; i < COUNT; ++ i)
|
for (size_t i = 0; i < COUNT; ++ i)
|
||||||
if (m_state[i].load(std::memory_order_relaxed) != INVALID) {
|
if (m_state[i].load(std::memory_order_relaxed) != INVALID) {
|
||||||
|
|
|
@ -149,6 +149,14 @@ GLToolbar::GLToolbar(GLCanvas3D& parent)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GLToolbar::~GLToolbar()
|
||||||
|
{
|
||||||
|
for (GLToolbarItem* item : m_items)
|
||||||
|
{
|
||||||
|
delete item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bool GLToolbar::init(const std::string& icons_texture_filename, unsigned int items_icon_size, unsigned int items_icon_border_size, unsigned int items_icon_gap_size)
|
bool GLToolbar::init(const std::string& icons_texture_filename, unsigned int items_icon_size, unsigned int items_icon_border_size, unsigned int items_icon_gap_size)
|
||||||
{
|
{
|
||||||
std::string path = resources_dir() + "/icons/";
|
std::string path = resources_dir() + "/icons/";
|
||||||
|
|
|
@ -141,6 +141,7 @@ private:
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit GLToolbar(GLCanvas3D& parent);
|
explicit GLToolbar(GLCanvas3D& parent);
|
||||||
|
~GLToolbar();
|
||||||
|
|
||||||
bool init(const std::string& icons_texture_filename, unsigned int items_icon_size, unsigned int items_icon_border_size, unsigned int items_icon_gap_size);
|
bool init(const std::string& icons_texture_filename, unsigned int items_icon_size, unsigned int items_icon_border_size, unsigned int items_icon_gap_size);
|
||||||
|
|
||||||
|
|
|
@ -328,14 +328,17 @@ void MainFrame::init_menubar()
|
||||||
// View menu
|
// View menu
|
||||||
if (m_plater) {
|
if (m_plater) {
|
||||||
m_viewMenu = new wxMenu();
|
m_viewMenu = new wxMenu();
|
||||||
append_menu_item(m_viewMenu, wxID_ANY, _(L("Iso\t0")), _(L("Iso View")), [this](wxCommandEvent&){ select_view("iso"); });
|
// \xA0 is a non-breaing space. It is entered here to spoil the automatic accelerators,
|
||||||
|
// as the simple numeric accelerators spoil all numeric data entry.
|
||||||
|
// The camera control accelerators are captured by GLCanvas3D::on_char().
|
||||||
|
append_menu_item(m_viewMenu, wxID_ANY, _(L("Iso")) + "\t\xA0" + "0", _(L("Iso View")), [this](wxCommandEvent&){ select_view("iso"); });
|
||||||
m_viewMenu->AppendSeparator();
|
m_viewMenu->AppendSeparator();
|
||||||
append_menu_item(m_viewMenu, wxID_ANY, _(L("Top\t1")), _(L("Top View")), [this](wxCommandEvent&){ select_view("top"); });
|
append_menu_item(m_viewMenu, wxID_ANY, _(L("Top")) + "\t\xA0" + "1", _(L("Top View")), [this](wxCommandEvent&){ select_view("top"); });
|
||||||
append_menu_item(m_viewMenu, wxID_ANY, _(L("Bottom\t2")), _(L("Bottom View")), [this](wxCommandEvent&){ select_view("bottom"); });
|
append_menu_item(m_viewMenu, wxID_ANY, _(L("Bottom")) + "\t\xA0" + "2", _(L("Bottom View")), [this](wxCommandEvent&){ select_view("bottom"); });
|
||||||
append_menu_item(m_viewMenu, wxID_ANY, _(L("Front\t3")), _(L("Front View")), [this](wxCommandEvent&){ select_view("front"); });
|
append_menu_item(m_viewMenu, wxID_ANY, _(L("Front")) + "\t\xA0" + "3", _(L("Front View")), [this](wxCommandEvent&){ select_view("front"); });
|
||||||
append_menu_item(m_viewMenu, wxID_ANY, _(L("Rear\t4")), _(L("Rear View")), [this](wxCommandEvent&){ select_view("rear"); });
|
append_menu_item(m_viewMenu, wxID_ANY, _(L("Rear")) + "\t\xA0" + "4", _(L("Rear View")), [this](wxCommandEvent&){ select_view("rear"); });
|
||||||
append_menu_item(m_viewMenu, wxID_ANY, _(L("Left\t5")), _(L("Left View")), [this](wxCommandEvent&){ select_view("left"); });
|
append_menu_item(m_viewMenu, wxID_ANY, _(L("Left")) + "\t\xA0" + "5", _(L("Left View")), [this](wxCommandEvent&){ select_view("left"); });
|
||||||
append_menu_item(m_viewMenu, wxID_ANY, _(L("Right\t6")), _(L("Right View")), [this](wxCommandEvent&){ select_view("right"); });
|
append_menu_item(m_viewMenu, wxID_ANY, _(L("Right")) + "\t\xA0" + "6", _(L("Right View")), [this](wxCommandEvent&){ select_view("right"); });
|
||||||
}
|
}
|
||||||
|
|
||||||
// Help menu
|
// Help menu
|
||||||
|
|
Loading…
Reference in a new issue