diff --git a/toonz/sources/toonz/mainwindow.cpp b/toonz/sources/toonz/mainwindow.cpp index 914968a..c27f65f 100644 --- a/toonz/sources/toonz/mainwindow.cpp +++ b/toonz/sources/toonz/mainwindow.cpp @@ -550,6 +550,17 @@ centralWidget->setLayout(centralWidgetLayout);*/ setCommandHandler(MI_SkeletonInverseKinematics, this, &MainWindow::ToggleSkeletonInverseKinematics); + /*-- Plastic tool + mode switching shortcuts --*/ + setCommandHandler(MI_PlasticNextMode, this, + &MainWindow::TogglePlasticNextMode); + setCommandHandler(MI_PlasticEditMesh, this, + &MainWindow::TogglePlasticEditMesh); + setCommandHandler(MI_PlasticPaintRigid, this, + &MainWindow::TogglePlasticPaintRigid); + setCommandHandler(MI_PlasticBuildSkeleton, this, + &MainWindow::TogglePlasticBuildSkeleton); + setCommandHandler(MI_PlasticAnimate, this, &MainWindow::TogglePlasticAnimate); + setCommandHandler(MI_About, this, &MainWindow::onAbout); setCommandHandler(MI_OpenOnlineManual, this, &MainWindow::onOpenOnlineManual); setCommandHandler(MI_OpenWhatsNew, this, &MainWindow::onOpenWhatsNew); @@ -2464,6 +2475,10 @@ void MainWindow::defineActions() { tr("Active Axis - All"), ""); createToolOptionsAction("A_ToolOption_SkeletonMode", tr("Skeleton Mode"), ""); + createToolOptionsAction("A_ToolOption_SkeletonMode:Edit Mesh", + tr("Edit Mesh Mode"), ""); + createToolOptionsAction("A_ToolOption_SkeletonMode:Paint Rigid", + tr("Paint Rigid Mode"), ""); createToolOptionsAction("A_ToolOption_SkeletonMode:Build Skeleton", tr("Build Skeleton Mode"), ""); createToolOptionsAction("A_ToolOption_SkeletonMode:Animate", @@ -2609,6 +2624,18 @@ void MainWindow::defineActions() { createAction(MI_SkeletonInverseKinematics, tr("Skeleton Tool - Inverse Kinematics"), "", ToolCommandType); + /*-- Plastic tool + mode switching shortcuts --*/ + createAction(MI_PlasticNextMode, tr("Plastic Tool - Next Mode"), "", + ToolCommandType); + createAction(MI_PlasticEditMesh, tr("Plastic Tool - Edit Mesh"), "", + ToolCommandType); + createAction(MI_PlasticPaintRigid, tr("Plastic Tool - Paint Rigid"), "", + ToolCommandType); + createAction(MI_PlasticBuildSkeleton, tr("Plastic Tool - Build Skeleton"), "", + ToolCommandType); + createAction(MI_PlasticAnimate, tr("Plastic Tool - Animate"), "", + ToolCommandType); + createMiscAction("A_FxSchematicToggle", tr("Toggle FX/Stage schematic"), ""); #ifdef WITH_STOPMOTION createAction(MI_StopMotionCapture, tr("Capture Stop Motion Frame"), ""); @@ -3072,6 +3099,45 @@ void MainWindow::ToggleSkeletonInverseKinematics() { } //----------------------------------------------------------------------------- +/*-- Plastic tool + mode switching shortcuts --*/ +void MainWindow::TogglePlasticNextMode() { + if (TApp::instance()->getCurrentTool()->getTool()->getName() == T_Plastic) + CommandManager::instance() + ->getAction("A_ToolOption_SkeletonMode") + ->trigger(); + else + CommandManager::instance()->getAction(T_Plastic)->trigger(); +} + +void MainWindow::TogglePlasticEditMesh() { + CommandManager::instance()->getAction(T_Plastic)->trigger(); + CommandManager::instance() + ->getAction("A_ToolOption_SkeletonMode:Edit Mesh") + ->trigger(); +} + +void MainWindow::TogglePlasticPaintRigid() { + CommandManager::instance()->getAction(T_Plastic)->trigger(); + CommandManager::instance() + ->getAction("A_ToolOption_SkeletonMode:Paint Rigid") + ->trigger(); +} + +void MainWindow::TogglePlasticBuildSkeleton() { + CommandManager::instance()->getAction(T_Plastic)->trigger(); + CommandManager::instance() + ->getAction("A_ToolOption_SkeletonMode:Build Skeleton") + ->trigger(); +} + +void MainWindow::TogglePlasticAnimate() { + CommandManager::instance()->getAction(T_Plastic)->trigger(); + CommandManager::instance() + ->getAction("A_ToolOption_SkeletonMode:Animate") + ->trigger(); +} + +//----------------------------------------------------------------------------- void MainWindow::onNewVectorLevelButtonPressed() { int defaultLevelType = Preferences::instance()->getDefLevelType(); diff --git a/toonz/sources/toonz/mainwindow.h b/toonz/sources/toonz/mainwindow.h index 2964433..c4f670e 100644 --- a/toonz/sources/toonz/mainwindow.h +++ b/toonz/sources/toonz/mainwindow.h @@ -186,6 +186,13 @@ public: void ToggleSkeletonAnimate(); void ToggleSkeletonInverseKinematics(); + /*-- Plastic tool + mode switching shortcuts --*/ + void TogglePlasticNextMode(); + void TogglePlasticEditMesh(); + void TogglePlasticPaintRigid(); + void TogglePlasticBuildSkeleton(); + void TogglePlasticAnimate(); + void onNewVectorLevelButtonPressed(); void onNewToonzRasterLevelButtonPressed(); void onNewRasterLevelButtonPressed(); diff --git a/toonz/sources/toonz/menubarcommandids.h b/toonz/sources/toonz/menubarcommandids.h index 124cf3e..b3d0465 100644 --- a/toonz/sources/toonz/menubarcommandids.h +++ b/toonz/sources/toonz/menubarcommandids.h @@ -404,6 +404,12 @@ #define MI_SkeletonAnimate "MI_SkeletonAnimate" #define MI_SkeletonInverseKinematics "MI_SkeletonInverseKinematics" +#define MI_PlasticNextMode "MI_PlasticNextMode" +#define MI_PlasticEditMesh "MI_PlasticEditMesh" +#define MI_PlasticPaintRigid "MI_PlasticPaintRigid" +#define MI_PlasticBuildSkeleton "MI_PlasticBuildSkeleton" +#define MI_PlasticAnimate "MI_PlasticAnimate" + #define MI_DeactivateUpperColumns "MI_DeactivateUpperColumns" #define MI_CompareToSnapshot "MI_CompareToSnapshot" #define MI_PreviewFx "MI_PreviewFx"