enable Edit menu and add Clear Presets feature

This commit is contained in:
2019-05-20 15:06:47 +02:00
parent 574ce444cc
commit fe618bfef1
4 changed files with 48 additions and 32 deletions

View File

@@ -697,6 +697,32 @@ void App::init_menu_edit()
popup->m_mouse_ignore = false;
popup->m_flood_events = true;
popup->m_capture_children = false;
popup->find<NodeButtonCustom>("clear-grids")->on_click = [this, popup](Node*) {
CanvasModeGrid* mode = (CanvasModeGrid*)Canvas::modes[(int)kCanvasMode::Grid][0];
mode->clear();
popup->mouse_release();
popup->destroy();
};
popup->find<NodeButtonCustom>("camera-reset")->on_click = [this, popup](Node*) {
canvas->reset_camera();
popup->mouse_release();
popup->destroy();
};
popup->find<NodeButtonCustom>("clear-presets")->on_click = [this, popup](Node*) {
auto mb = message_box("Clear Presets", "Do you want to remove all the Brush Presets?", true);
mb->btn_ok->m_text->set_text("Yes");
mb->btn_cancel->m_text->set_text("No");
mb->btn_ok->on_click = mb->on_submit = [this,mb](Node*) {
presets->clear_brushes();
presets->save();
mb->destroy();
};
popup->mouse_release();
popup->destroy();
};
};
}
}
@@ -1107,18 +1133,6 @@ void App::init_menu_layer()
popup->m_mouse_ignore = false;
popup->m_flood_events = true;
popup->m_capture_children = false;
popup->find<NodeButtonCustom>("clear-grids")->on_click = [this, popup](Node*) {
CanvasModeGrid* mode = (CanvasModeGrid*)Canvas::modes[(int)kCanvasMode::Grid][0];
mode->clear();
popup->mouse_release();
popup->destroy();
};
popup->find<NodeButtonCustom>("camera-reset")->on_click = [this, popup](Node*) {
canvas->reset_camera();
popup->mouse_release();
popup->destroy();
};
popup->find<NodeButtonCustom>("layer-clear")->on_click = [this, popup](Node*) {
canvas->m_canvas->clear();

View File

@@ -361,6 +361,11 @@ bool NodePanelBrush::restore()
return false;
}
void NodePanelBrush::clear()
{
m_container->remove_all_children();
}
void NodePanelBrush::added(Node* parent)
{
m_interacted = false;
@@ -604,6 +609,11 @@ void NodePanelBrushPreset::add_brush(std::shared_ptr<Brush> brush)
b->on_click = std::bind(&NodePanelBrushPreset::handle_click, this, std::placeholders::_1);
}
void NodePanelBrushPreset::clear_brushes()
{
m_container->remove_all_children();
}
void NodePanelBrushPreset::added(Node* parent)
{
m_interacted = false;

View File

@@ -52,6 +52,7 @@ public:
std::string get_thumb_path(int index) const;
bool save();
bool restore();
void clear();
};
// -----------------------------------------------------------------------
@@ -92,5 +93,6 @@ public:
bool save();
bool restore();
void add_brush(std::shared_ptr<Brush> brush);
void clear_brushes();
};