diff --git a/stuff/config/qss/gray_048/gray_048.less b/stuff/config/qss/gray_048/gray_048.less index 0becf02..3b2bdf6 100644 --- a/stuff/config/qss/gray_048/gray_048.less +++ b/stuff/config/qss/gray_048/gray_048.less @@ -930,6 +930,10 @@ XsheetViewer { qproperty-PaletteColumnBorderColor: rgb(134,172,167); qproperty-SelectedPaletteColumnColor: rgb(95,133,129); + qproperty-MeshColumnColor: rgb(104,77,134); + qproperty-MeshColumnBorderColor: rgb(186,146,239); + qproperty-SelectedMeshColumnColor: rgb(138,117,162); + qproperty-ColumnHeadPastelizer: rgb(0,0,0); qproperty-SelectedColumnHead: rgb(80,96,130); diff --git a/stuff/config/qss/gray_048/gray_048.qss b/stuff/config/qss/gray_048/gray_048.qss index db98773..834471b 100644 --- a/stuff/config/qss/gray_048/gray_048.qss +++ b/stuff/config/qss/gray_048/gray_048.qss @@ -936,6 +936,9 @@ XsheetViewer { qproperty-PaletteColumnColor: #3a655f; qproperty-PaletteColumnBorderColor: #86aca7; qproperty-SelectedPaletteColumnColor: #5f8581; + qproperty-MeshColumnColor: #684d86; + qproperty-MeshColumnBorderColor: #ba92ef; + qproperty-SelectedMeshColumnColor: #8a75a2; qproperty-ColumnHeadPastelizer: #000000; qproperty-SelectedColumnHead: #506082; qproperty-LightLightBGColor: #fafafa; diff --git a/stuff/config/qss/gray_048/gray_048_mac.qss b/stuff/config/qss/gray_048/gray_048_mac.qss index db98773..834471b 100644 --- a/stuff/config/qss/gray_048/gray_048_mac.qss +++ b/stuff/config/qss/gray_048/gray_048_mac.qss @@ -936,6 +936,9 @@ XsheetViewer { qproperty-PaletteColumnColor: #3a655f; qproperty-PaletteColumnBorderColor: #86aca7; qproperty-SelectedPaletteColumnColor: #5f8581; + qproperty-MeshColumnColor: #684d86; + qproperty-MeshColumnBorderColor: #ba92ef; + qproperty-SelectedMeshColumnColor: #8a75a2; qproperty-ColumnHeadPastelizer: #000000; qproperty-SelectedColumnHead: #506082; qproperty-LightLightBGColor: #fafafa; diff --git a/stuff/config/qss/gray_072/gray_072.less b/stuff/config/qss/gray_072/gray_072.less index f3c63fb..db898e2 100644 --- a/stuff/config/qss/gray_072/gray_072.less +++ b/stuff/config/qss/gray_072/gray_072.less @@ -929,6 +929,10 @@ XsheetViewer { qproperty-PaletteColumnBorderColor: rgb(134,172,167); qproperty-SelectedPaletteColumnColor: rgb(95,133,129); + qproperty-MeshColumnColor: rgb(104,77,134); + qproperty-MeshColumnBorderColor: rgb(186,146,239); + qproperty-SelectedMeshColumnColor: rgb(138,117,162); + qproperty-ColumnHeadPastelizer: rgb(0,0,0); qproperty-SelectedColumnHead: rgb(80,96,130); diff --git a/stuff/config/qss/gray_072/gray_072.qss b/stuff/config/qss/gray_072/gray_072.qss index a8f7300..43698fa 100644 --- a/stuff/config/qss/gray_072/gray_072.qss +++ b/stuff/config/qss/gray_072/gray_072.qss @@ -936,6 +936,9 @@ XsheetViewer { qproperty-PaletteColumnColor: #3a655f; qproperty-PaletteColumnBorderColor: #86aca7; qproperty-SelectedPaletteColumnColor: #5f8581; + qproperty-MeshColumnColor: #684d86; + qproperty-MeshColumnBorderColor: #ba92ef; + qproperty-SelectedMeshColumnColor: #8a75a2; qproperty-ColumnHeadPastelizer: #000000; qproperty-SelectedColumnHead: #506082; qproperty-LightLightBGColor: #fafafa; diff --git a/stuff/config/qss/gray_072/gray_072_mac.qss b/stuff/config/qss/gray_072/gray_072_mac.qss index a8f7300..43698fa 100644 --- a/stuff/config/qss/gray_072/gray_072_mac.qss +++ b/stuff/config/qss/gray_072/gray_072_mac.qss @@ -936,6 +936,9 @@ XsheetViewer { qproperty-PaletteColumnColor: #3a655f; qproperty-PaletteColumnBorderColor: #86aca7; qproperty-SelectedPaletteColumnColor: #5f8581; + qproperty-MeshColumnColor: #684d86; + qproperty-MeshColumnBorderColor: #ba92ef; + qproperty-SelectedMeshColumnColor: #8a75a2; qproperty-ColumnHeadPastelizer: #000000; qproperty-SelectedColumnHead: #506082; qproperty-LightLightBGColor: #fafafa; diff --git a/stuff/config/qss/gray_128/gray_128.less b/stuff/config/qss/gray_128/gray_128.less index c43b67a..923918b 100644 --- a/stuff/config/qss/gray_128/gray_128.less +++ b/stuff/config/qss/gray_128/gray_128.less @@ -759,6 +759,10 @@ XsheetViewer { qproperty-PaletteColumnBorderColor: rgb(15,62,56); qproperty-SelectedPaletteColumnColor: rgb(146,221,202); + qproperty-MeshColumnColor: rgb(200,130,255); + qproperty-MeshColumnBorderColor: rgb(105,70,135); + qproperty-SelectedMeshColumnColor: rgb(216,180,245); + qproperty-ColumnHeadPastelizer: rgb(255,255,255); qproperty-SelectedColumnHead: rgb(190,210,240); diff --git a/stuff/config/qss/gray_128/gray_128.qss b/stuff/config/qss/gray_128/gray_128.qss index d383a66..bb458e3 100644 --- a/stuff/config/qss/gray_128/gray_128.qss +++ b/stuff/config/qss/gray_128/gray_128.qss @@ -675,6 +675,9 @@ XsheetViewer { qproperty-PaletteColumnColor: #2aab9a; qproperty-PaletteColumnBorderColor: #0f3e38; qproperty-SelectedPaletteColumnColor: #92ddca; + qproperty-MeshColumnColor: #c882ff; + qproperty-MeshColumnBorderColor: #694687; + qproperty-SelectedMeshColumnColor: #d8b4f5; qproperty-ColumnHeadPastelizer: #ffffff; qproperty-SelectedColumnHead: #bed2f0; qproperty-LightLightBGColor: #fafafa; diff --git a/stuff/config/qss/gray_128/gray_128_mac.qss b/stuff/config/qss/gray_128/gray_128_mac.qss index d383a66..bb458e3 100644 --- a/stuff/config/qss/gray_128/gray_128_mac.qss +++ b/stuff/config/qss/gray_128/gray_128_mac.qss @@ -675,6 +675,9 @@ XsheetViewer { qproperty-PaletteColumnColor: #2aab9a; qproperty-PaletteColumnBorderColor: #0f3e38; qproperty-SelectedPaletteColumnColor: #92ddca; + qproperty-MeshColumnColor: #c882ff; + qproperty-MeshColumnBorderColor: #694687; + qproperty-SelectedMeshColumnColor: #d8b4f5; qproperty-ColumnHeadPastelizer: #ffffff; qproperty-SelectedColumnHead: #bed2f0; qproperty-LightLightBGColor: #fafafa; diff --git a/toonz/sources/toonz/iocommand.cpp b/toonz/sources/toonz/iocommand.cpp index eade44a..708a856 100644 --- a/toonz/sources/toonz/iocommand.cpp +++ b/toonz/sources/toonz/iocommand.cpp @@ -1631,11 +1631,14 @@ bool IoCmd::saveLevel(const TFilePath &fp, TXshSimpleLevel *sl, bool overwrite) FileBrowser::refreshFolder(fp.getParentDir()); History::instance()->addItem(fp); - if (overwritePalette || - sl->getPath().getType() == "pli") - sl->getPalette()->setDirtyFlag(false); - else // ask only once for save palette - sl->getPalette()->setAskOverwriteFlag(false); + if (sl->getPalette()) + { + if (overwritePalette || + sl->getPath().getType() == "pli") + sl->getPalette()->setDirtyFlag(false); + else // ask only once for save palette + sl->getPalette()->setAskOverwriteFlag(false); + } RecentFiles::instance()->addFilePath(toQString(fp), RecentFiles::Level); QApplication::restoreOverrideCursor(); @@ -2604,10 +2607,6 @@ public: DVGui::warning(QObject::tr("No Current Level")); return; } - if (!sl->getPalette()) { - DVGui::warning(QObject::tr("Toonz cannot Save this Level")); - return; - } ToonzScene *scene = TApp::instance()->getCurrentScene()->getScene(); if (!scene) { DVGui::warning(QObject::tr("No Current Scene")); diff --git a/toonz/sources/toonz/meshifypopup.cpp b/toonz/sources/toonz/meshifypopup.cpp index 5df6e19..4f4d072 100644 --- a/toonz/sources/toonz/meshifypopup.cpp +++ b/toonz/sources/toonz/meshifypopup.cpp @@ -979,6 +979,8 @@ void createMeshifiedLevels(std::map &meshLevels, progressDialog->setValue(progressDialog->value() + 1); } + + ml->setDirtyFlag(true); } } diff --git a/toonz/sources/toonz/xshcellviewer.cpp b/toonz/sources/toonz/xshcellviewer.cpp index b771c3f..39bac5a 100644 --- a/toonz/sources/toonz/xshcellviewer.cpp +++ b/toonz/sources/toonz/xshcellviewer.cpp @@ -756,9 +756,7 @@ void CellArea::drawCells(QPainter &p, const QRect toBeUpdated) //check if the column is reference bool isReference = true; if (column) { // Verifico se la colonna e' una mask - if (column->isControl()) - isReference = false; - if (column->isRendered()) + if (column->isControl() || column->isRendered() || column->getMeshColumn()) isReference = false; } diff --git a/toonz/sources/toonz/xshcolumnviewer.cpp b/toonz/sources/toonz/xshcolumnviewer.cpp index dacc690..eb1f504 100644 --- a/toonz/sources/toonz/xshcolumnviewer.cpp +++ b/toonz/sources/toonz/xshcolumnviewer.cpp @@ -641,7 +641,7 @@ void ColumnArea::drawLevelColumnHead(QPainter &p, int col) if (column) { if (column->isControl()) usage = Control; - if (column->isRendered()) + if (column->isRendered() || column->getMeshColumn()) usage = Normal; } diff --git a/toonz/sources/toonz/xsheetviewer.cpp b/toonz/sources/toonz/xsheetviewer.cpp index 9a6bef2..47f800b 100644 --- a/toonz/sources/toonz/xsheetviewer.cpp +++ b/toonz/sources/toonz/xsheetviewer.cpp @@ -97,8 +97,8 @@ void XsheetViewer::getCellTypeAndColors( sideColor = XsheetGUI::SoundTextColumnBorderColor; break; case MESH_XSHLEVEL: - cellColor = XsheetGUI::MeshColumnColor; - sideColor = XsheetGUI::MeshColumnBorderColor; + cellColor = (isSelected) ? getSelectedMeshColumnColor() : getMeshColumnColor(); + sideColor = getMeshColumnBorderColor(); break; case UNKNOWN_XSHLEVEL: case NO_XSHLEVEL: diff --git a/toonz/sources/toonz/xsheetviewer.h b/toonz/sources/toonz/xsheetviewer.h index 464826a..4028ad6 100644 --- a/toonz/sources/toonz/xsheetviewer.h +++ b/toonz/sources/toonz/xsheetviewer.h @@ -97,6 +97,7 @@ const QColor SoundTextColumnBorderColor(140, 140, 140); const QColor MeshColumnColor(200, 130, 255); const QColor MeshColumnBorderColor(105, 70, 135); +const QColor SelectedMeshColumnColor(216, 180, 245); //Empty column const QColor EmptyColumnColor(124, 124, 124); @@ -252,7 +253,14 @@ class XsheetViewer : public QFrame, public Spreadsheet::FrameScroller Q_PROPERTY(QColor PaletteColumnColor READ getPaletteColumnColor WRITE setPaletteColumnColor) Q_PROPERTY(QColor PaletteColumnBorderColor READ getPaletteColumnBorderColor WRITE setPaletteColumnBorderColor) Q_PROPERTY(QColor SelectedPaletteColumnColor READ getSelectedPaletteColumnColor WRITE setSelectedPaletteColumnColor) - + //Mesh column + QColor m_meshColumnColor; + QColor m_meshColumnBorderColor; + QColor m_selectedMeshColumnColor; + Q_PROPERTY(QColor MeshColumnColor READ getMeshColumnColor WRITE setMeshColumnColor) + Q_PROPERTY(QColor MeshColumnBorderColor READ getMeshColumnBorderColor WRITE setMeshColumnBorderColor) + Q_PROPERTY(QColor SelectedMeshColumnColor READ getSelectedMeshColumnColor WRITE setSelectedMeshColumnColor) + //for making the column head lighter (255,255,255,50); QColor m_columnHeadPastelizer; Q_PROPERTY(QColor ColumnHeadPastelizer READ getColumnHeadPastelizer WRITE setColumnHeadPastelizer) @@ -488,7 +496,14 @@ public: QColor getPaletteColumnColor() const { return m_paletteColumnColor; } QColor getPaletteColumnBorderColor() const { return m_paletteColumnBorderColor; } QColor getSelectedPaletteColumnColor() const { return m_selectedPaletteColumnColor; } - + //Mesh column + void setMeshColumnColor(const QColor &color) { m_meshColumnColor = color; } + void setMeshColumnBorderColor(const QColor &color) { m_meshColumnBorderColor = color; } + void setSelectedMeshColumnColor(const QColor &color) { m_selectedMeshColumnColor = color; } + QColor getMeshColumnColor() const { return m_meshColumnColor; } + QColor getMeshColumnBorderColor() const { return m_meshColumnBorderColor; } + QColor getSelectedMeshColumnColor() const { return m_selectedMeshColumnColor; } + void setColumnHeadPastelizer(const QColor &color) { m_columnHeadPastelizer = color; } QColor getColumnHeadPastelizer() const { return m_columnHeadPastelizer; } void setSelectedColumnHead(const QColor &color) { m_selectedColumnHead = color; } diff --git a/toonz/sources/toonzlib/txshsimplelevel.cpp b/toonz/sources/toonzlib/txshsimplelevel.cpp index b031098..10f04cd 100644 --- a/toonz/sources/toonzlib/txshsimplelevel.cpp +++ b/toonz/sources/toonzlib/txshsimplelevel.cpp @@ -1133,9 +1133,7 @@ void TXshSimpleLevel::load() assert(getScene()); if (!getScene()) return; - - getProperties()->setDirtyFlag(false); - + m_isSubsequence = loadingLevelRange.isEnabled(); TFilePath checkpath = getScene()->decodeFilePath(m_path);