add flood fill mode with custom cursor

This commit is contained in:
2019-06-22 10:44:36 +02:00
parent 3f13c8a61e
commit 228263c70f
8 changed files with 1999 additions and 1707 deletions

View File

@@ -564,15 +564,11 @@ kEventResult NodeCanvas::handle_event(Event* e)
mode->on_MouseEvent(me, loc);
break;
case kEventType::MouseUnfocus:
if (auto m = dynamic_cast<CanvasModePen*>(m_canvas->modes[(int)m_canvas->m_current_mode][0]))
m->m_draw_tip = false;
if (auto m = dynamic_cast<CanvasModeLine*>(m_canvas->modes[(int)m_canvas->m_current_mode][0]))
m->m_draw_tip = false;
(*m_canvas->m_mode)[0]->m_draw_tip = false;
App::I.show_cursor();
break;
case kEventType::MouseFocus:
(m_canvas->m_current_mode == kCanvasMode::Draw ||
m_canvas->m_current_mode == kCanvasMode::Erase) &&
(*m_canvas->m_mode)[0]->hide_curor &&
!App::I.keys[(int)kKey::KeyAlt] ?
App::I.hide_cursor() : App::I.show_cursor();
break;
@@ -589,8 +585,7 @@ kEventResult NodeCanvas::handle_event(Event* e)
break;
case kEventType::KeyUp:
if (ke->m_key == kKey::KeyAlt && m_mouse_focus)
m_canvas->m_current_mode == kCanvasMode::Draw ||
m_canvas->m_current_mode == kCanvasMode::Erase ?
(*m_canvas->m_mode)[0]->hide_curor ?
App::I.hide_cursor() : App::I.show_cursor();
if (ke->m_key == kKey::KeyE)
Canvas::set_mode(kCanvasMode::Draw);