void SymbolSymmetryEditor::onCommand(int id) { if (id >= ID_SYMMETRY && id < ID_SYMMETRY_MAX) { SymbolSymmetryType kind = id == ID_SYMMETRY_ROTATION ? SYMMETRY_ROTATION : SYMMETRY_REFLECTION; if (symmetry && symmetry->kind != kind) { addAction(new SymmetryTypeAction(*symmetry, kind)); control.Refresh(false); } resetActions(); } else if (id == ID_COPIES) { if (symmetry && symmetry->copies != copies->GetValue()) { addAction(new SymmetryCopiesAction(*symmetry, copies->GetValue())); control.Refresh(false); } resetActions(); } else if (id == ID_ADD_SYMMETRY) { symmetry = intrusive(new SymbolSymmetry()); symmetry->kind = SYMMETRY_ROTATION; symmetry->copies = 2; symmetry->center = Vector2D(0.5,0.5); symmetry->handle = Vector2D(0.2,0); symmetry->name = symmetry->expectedName(); addAction(new GroupSymbolPartsAction(*getSymbol(), control.selected_parts.get(), symmetry)); control.selected_parts.select(symmetry); control.Refresh(false); } else if (id == ID_REMOVE_SYMMETRY) { addAction(new UngroupSymbolPartsAction(*getSymbol(), control.selected_parts.get())); symmetry = SymbolSymmetryP(); control.Refresh(false); } }
ContextMenu::ContextMenu(QWidget *parent, const style::iconedButton &st) : TWidget(0), _hiding(false), _buttonStyle(st), _shadow(st::dropdownShadow), _selected(-1), a_opacity(0), _deleteOnHide(false) { resetActions(); setWindowFlags(Qt::FramelessWindowHint | Qt::BypassWindowManagerHint | Qt::Tool | Qt::NoDropShadowWindowHint | Qt::WindowStaysOnTopHint); hide(); setAttribute(Qt::WA_NoSystemBackground, true); setAttribute(Qt::WA_TranslucentBackground, true); }
void PopupMenu::init() { _padding = _shadow.getDimensions(_st.shadowShift); resetActions(); setWindowFlags(Qt::FramelessWindowHint | Qt::BypassWindowManagerHint | Qt::Popup | Qt::NoDropShadowWindowHint); setMouseTracking(true); hide(); setAttribute(Qt::WA_NoSystemBackground, true); setAttribute(Qt::WA_TranslucentBackground, true); }
// ============================================================================= void TimeTrackingAction::setUserCurrentlyWorking(bool userCurrentlyWorking) { mUserCurrentlyWorking = userCurrentlyWorking; if(mUserCurrentlyWorking) { resetTimerDefaultAction(); resetActions(); resetTimerPause(); } else { mTimerDefaultAction->stop(); mTimerPause->stop(); } }
void SymbolSymmetryEditor::onKeyChange(wxKeyEvent& ev) { if (symmetryMoveAction) { if (ev.GetKeyCode() == WXK_CONTROL || ev.GetKeyCode() == WXK_SHIFT) { // changed constrains symmetryMoveAction->constrain = ev.ControlDown(); symmetryMoveAction->snap = ev.ShiftDown() != settings.symbol_grid_snap ? settings.symbol_grid_size : 0; control.Refresh(false); } else if (ev.GetKeyCode() == WXK_ESCAPE) { // cancel drawing resetActions(); } } }
void AvatarComponent::setAnimatorData(AnimatorData * animatorData) { for (auto i : m_animatorDataTags) this->stopActionByTag(i); CC_SAFE_RELEASE_NULL(m_animatorData); if (animatorData != nullptr) { m_animatorData = animatorData; m_animatorData->retain(); resetActions(); } }
void SymbolSymmetryEditor::initUI(wxToolBar* tb, wxMenuBar* mb) { copies = new wxSpinCtrl( tb, ID_COPIES, _("2"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 2, 10, 2); copies->SetHelpText(_HELP_("copies")); copies->SetSize(50, -1); tb->AddSeparator(); tb->AddTool(ID_ADD_SYMMETRY, _TOOL_("add symmetry"), load_resource_tool_image(_("symmetry_add")), wxNullBitmap, wxITEM_CHECK, _TOOLTIP_("add symmetry"), _HELP_("add symmetry")); tb->AddTool(ID_REMOVE_SYMMETRY, _TOOL_("remove symmetry"), load_resource_tool_image(_("symmetry_remove")), wxNullBitmap, wxITEM_CHECK, _TOOLTIP_("remove symmetry"), _HELP_("remove symmetry")); tb->AddSeparator(); tb->AddTool(ID_SYMMETRY_ROTATION, _TOOL_("rotation"), load_resource_image(_("symmetry_rotation")), wxNullBitmap, wxITEM_CHECK, _TOOLTIP_("rotation"), _HELP_("rotation")); tb->AddTool(ID_SYMMETRY_REFLECTION, _TOOL_("reflection"), load_resource_image(_("symmetry_reflection")), wxNullBitmap, wxITEM_CHECK, _TOOLTIP_("reflection"), _HELP_("reflection")); tb->AddSeparator(); tb->AddControl(copies); tb->Realize(); control.SetCursor(*wxCROSS_CURSOR); resetActions(); // set status text }
// this should be pushed from listview, not pulled void KEBApp::updateActions() { resetActions(); setActionsEnabled(ListView::self()->getSelectionAbilities()); }
GameController::GameController(): mCharacter( nullptr ) { resetActions(); }
void Canvas::addAction(Action *a) { resetActions(); actions.push_back(a); actions.back()->doAction(this); }
void SymbolSymmetryEditor::onLeftUp (const Vector2D& pos, wxMouseEvent& ev) { if (!symmetry) return; if (isEditing()) { resetActions(); } }