diff --git a/toonz/sources/include/orientation.h b/toonz/sources/include/orientation.h index df129d6..7199501 100644 --- a/toonz/sources/include/orientation.h +++ b/toonz/sources/include/orientation.h @@ -191,6 +191,7 @@ enum class PredefinedFlag { CONFIG_AREA_BORDER, CAMERA_CONFIG_AREA_BORDER, CONFIG_AREA_VISIBLE, + CAMERA_CONFIG_AREA_VISIBLE, PEGBAR_NAME_BORDER, PEGBAR_NAME_VISIBLE, PARENT_HANDLE_NAME_BORDER, diff --git a/toonz/sources/toonz/xshcellviewer.cpp b/toonz/sources/toonz/xshcellviewer.cpp index 17a320d..eb0ed3e 100644 --- a/toonz/sources/toonz/xshcellviewer.cpp +++ b/toonz/sources/toonz/xshcellviewer.cpp @@ -3439,6 +3439,8 @@ void CellArea::createKeyLineMenu(QMenu &menu, int row, int col) { TDoubleKeyframe::Type rType = pegbar->getParam(TStageObject::T_X)->getKeyframeAt(r0).m_type; + if (rType != TDoubleKeyframe::Constant) + menu.addAction(cmdManager->getAction(MI_UseConstantInterpolation)); if (rType != TDoubleKeyframe::Linear) menu.addAction(cmdManager->getAction(MI_UseLinearInterpolation)); if (rType != TDoubleKeyframe::SpeedInOut) @@ -3449,12 +3451,6 @@ void CellArea::createKeyLineMenu(QMenu &menu, int row, int col) { menu.addAction(cmdManager->getAction(MI_UseEaseInOutPctInterpolation)); if (rType != TDoubleKeyframe::Exponential) menu.addAction(cmdManager->getAction(MI_UseExponentialInterpolation)); - if (rType != TDoubleKeyframe::Expression) - menu.addAction(cmdManager->getAction(MI_UseExpressionInterpolation)); - if (rType != TDoubleKeyframe::File) - menu.addAction(cmdManager->getAction(MI_UseFileInterpolation)); - if (rType != TDoubleKeyframe::Constant) - menu.addAction(cmdManager->getAction(MI_UseConstantInterpolation)); if (col < 0) { menu.addSeparator(); diff --git a/toonz/sources/toonz/xshcolumnviewer.cpp b/toonz/sources/toonz/xshcolumnviewer.cpp index 7d2fdcf..72956f2 100644 --- a/toonz/sources/toonz/xshcolumnviewer.cpp +++ b/toonz/sources/toonz/xshcolumnviewer.cpp @@ -803,7 +803,9 @@ void ColumnArea::DrawHeader::drawLock() const { } void ColumnArea::DrawHeader::drawConfig() const { - if (isEmpty || !o->flag(PredefinedFlag::CONFIG_AREA_VISIBLE)) return; + if (isEmpty || (col >= 0 && !o->flag(PredefinedFlag::CONFIG_AREA_VISIBLE)) || + (col < 0 && !o->flag(PredefinedFlag::CAMERA_CONFIG_AREA_VISIBLE))) + return; QColor bgColor; QImage icon; int buttonType = CONFIG_XSHBUTTON; diff --git a/toonz/sources/toonzlib/orientation.cpp b/toonz/sources/toonzlib/orientation.cpp index 34b1248..ebcbf9c 100644 --- a/toonz/sources/toonzlib/orientation.cpp +++ b/toonz/sources/toonzlib/orientation.cpp @@ -506,6 +506,7 @@ TopToBottomOrientation::TopToBottomOrientation() { addFlag(PredefinedFlag::CONFIG_AREA_BORDER, true); addFlag(PredefinedFlag::CAMERA_CONFIG_AREA_BORDER, false); addFlag(PredefinedFlag::CONFIG_AREA_VISIBLE, true); + addFlag(PredefinedFlag::CAMERA_CONFIG_AREA_VISIBLE, true); addFlag(PredefinedFlag::PEGBAR_NAME_BORDER, true); addFlag(PredefinedFlag::PEGBAR_NAME_VISIBLE, true); addFlag(PredefinedFlag::PARENT_HANDLE_NAME_BORDER, false); @@ -616,6 +617,7 @@ TopToBottomOrientation::TopToBottomOrientation() { addFlag(PredefinedFlag::CONFIG_AREA_BORDER, true); addFlag(PredefinedFlag::CAMERA_CONFIG_AREA_BORDER, false); addFlag(PredefinedFlag::CONFIG_AREA_VISIBLE, true); + addFlag(PredefinedFlag::CAMERA_CONFIG_AREA_VISIBLE, true); addFlag(PredefinedFlag::PEGBAR_NAME_BORDER, true); addFlag(PredefinedFlag::PEGBAR_NAME_VISIBLE, true); addFlag(PredefinedFlag::PARENT_HANDLE_NAME_BORDER, false); @@ -643,7 +645,7 @@ TopToBottomOrientation::TopToBottomOrientation() { HDRROW_HEIGHT - 1); addRect(PredefinedRect::LAYER_NAME, layername); addRect(PredefinedRect::CAMERA_LAYER_NAME, - QRect(1, HDRROW3, CAMERA_CELL_WIDTH - 1, + QRect(1, HDRROW3 + HDRROW_HEIGHT - 8, CAMERA_CELL_WIDTH - 1, THUMBNAIL_HEIGHT + CELL_HEIGHT)); addRect(PredefinedRect::LAYER_NUMBER, QRect(0, 0, -1, -1)); @@ -669,7 +671,11 @@ TopToBottomOrientation::TopToBottomOrientation() { addRect(PredefinedRect::CONFIG_AREA, QRect(0, 0, -1, -1)); addRect(PredefinedRect::CONFIG, QRect(0, 0, -1, -1)); - addRect(PredefinedRect::CAMERA_CONFIG, QRect(0, 0, -1, -1)); + cameraConfigArea = + QRect(0, HDRROW3 - 2, CAMERA_CELL_WIDTH, HDRROW_HEIGHT - 4); + addRect(PredefinedRect::CAMERA_CONFIG_AREA, cameraConfigArea); + addRect(PredefinedRect::CAMERA_CONFIG, + iconRect(cameraConfigArea, ICON_WIDTH - 1, ICON_HEIGHT - 1)); thumbnailArea = QRect(INDENT - 1, HDRROW3, CELL_WIDTH - INDENT - 1, THUMBNAIL_HEIGHT); @@ -681,9 +687,6 @@ TopToBottomOrientation::TopToBottomOrientation() { addRect(PredefinedRect::CAMERA_ICON_AREA, cameraIconArea); addRect(PredefinedRect::CAMERA_ICON, iconRect(cameraIconArea, ICON_WIDTH, ICON_HEIGHT)); - // clicking on the camera icon will switch the camera in "Classic" mode - addRect(PredefinedRect::CAMERA_CONFIG_AREA, - rect(PredefinedRect::CAMERA_ICON_AREA)); addRect(PredefinedRect::FILTER_COLOR, QRect(thumbnail.right() - 14, thumbnail.top() + 3, 12, 12)); @@ -720,6 +723,7 @@ TopToBottomOrientation::TopToBottomOrientation() { addFlag(PredefinedFlag::CONFIG_AREA_BORDER, false); addFlag(PredefinedFlag::CAMERA_CONFIG_AREA_BORDER, false); addFlag(PredefinedFlag::CONFIG_AREA_VISIBLE, false); + addFlag(PredefinedFlag::CAMERA_CONFIG_AREA_VISIBLE, true); addFlag(PredefinedFlag::PEGBAR_NAME_BORDER, false); addFlag(PredefinedFlag::PEGBAR_NAME_VISIBLE, true); addFlag(PredefinedFlag::PARENT_HANDLE_NAME_BORDER, false); @@ -1142,6 +1146,7 @@ LeftToRightOrientation::LeftToRightOrientation() { addFlag(PredefinedFlag::CONFIG_AREA_BORDER, true); addFlag(PredefinedFlag::CAMERA_CONFIG_AREA_BORDER, true); addFlag(PredefinedFlag::CONFIG_AREA_VISIBLE, true); + addFlag(PredefinedFlag::CAMERA_CONFIG_AREA_VISIBLE, true); addFlag(PredefinedFlag::PEGBAR_NAME_BORDER, false); addFlag(PredefinedFlag::PEGBAR_NAME_VISIBLE, false); addFlag(PredefinedFlag::PARENT_HANDLE_NAME_BORDER, false);