Merge pull request #1224 from manongjohn/save_palette_swatch_size

Save/Restore palette swatch size setting for popups
This commit is contained in:
manongjohn 2023-10-04 05:46:42 -04:00 committed by GitHub
commit 7a1c19e017
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 39 additions and 13 deletions

View file

@ -3,6 +3,7 @@
#ifndef STUDIOPALETTEVIEWER_H #ifndef STUDIOPALETTEVIEWER_H
#define STUDIOPALETTEVIEWER_H #define STUDIOPALETTEVIEWER_H
#include "saveloadqsettings.h"
#include "toonz/studiopalette.h" #include "toonz/studiopalette.h"
#include "toonz/tapplication.h" #include "toonz/tapplication.h"
#include "toonz/tproject.h" #include "toonz/tproject.h"
@ -214,7 +215,8 @@ protected:
allows to show and modify current studio palette selected in allows to show and modify current studio palette selected in
tree. tree.
*/ */
class DVAPI StudioPaletteViewer final : public QSplitter { class DVAPI StudioPaletteViewer final : public QSplitter,
public SaveLoadQSettings {
Q_OBJECT Q_OBJECT
StudioPaletteTreeViewer *m_studioPaletteTreeViewer; StudioPaletteTreeViewer *m_studioPaletteTreeViewer;
@ -240,6 +242,10 @@ public:
if (m_studioPaletteViewer) m_studioPaletteViewer->setApplication(app); if (m_studioPaletteViewer) m_studioPaletteViewer->setApplication(app);
} }
TApplication *getApplication() { return m_app; } TApplication *getApplication() { return m_app; }
// SaveLoadQSettings
void save(QSettings &settings, bool forPopupIni = false) const override;
void load(QSettings &settings) override;
}; };
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------

View file

@ -312,27 +312,30 @@ void PaletteViewer::updateView() {
void PaletteViewer::save(QSettings &settings, bool forPopupIni) const { void PaletteViewer::save(QSettings &settings, bool forPopupIni) const {
int visibleParts = m_toolbarVisibleOtherParts; int visibleParts = m_toolbarVisibleOtherParts;
int swatchSize = m_pageViewer->getViewMode();
if (m_visibleKeysAction->isChecked()) visibleParts |= 0x01; if (m_visibleKeysAction->isChecked()) visibleParts |= 0x01;
// if (m_visibleNewAction->isChecked()) visibleParts |= 0x02; // if (m_visibleNewAction->isChecked()) visibleParts |= 0x02;
if (m_visibleGizmoAction->isChecked()) visibleParts |= 0x04; if (m_visibleGizmoAction->isChecked()) visibleParts |= 0x04;
if (m_visibleNameAction->isChecked()) visibleParts |= 0x08; if (m_visibleNameAction->isChecked()) visibleParts |= 0x08;
settings.setValue("toolbarVisibleMsk", visibleParts); settings.setValue("toolbarVisibleMsk", visibleParts);
} settings.setValue("swatchSize", swatchSize);
}
void PaletteViewer::load(QSettings &settings) {
int visibleParts; void PaletteViewer::load(QSettings &settings) {
QVariant visibleVar = settings.value("toolbarVisibleMsk"); int visibleParts = 3; // Show keyframes and new style/page;
if (visibleVar.canConvert(QVariant::Int)) { PageViewer::ViewMode swatchSize = PageViewer::SmallChips;
visibleParts = visibleVar.toInt(); QVariant visibleVar = settings.value("toolbarVisibleMsk");
} else { QVariant swatchVar = settings.value("swatchSize");
visibleParts = 3; // Show keyframes and new style/page if (visibleVar.canConvert(QVariant::Int)) visibleParts = visibleVar.toInt();
} if (swatchVar.canConvert(QVariant::Int))
swatchSize = (PageViewer::ViewMode)swatchVar.toInt();
m_visibleKeysAction->setChecked(visibleParts & 0x01); m_visibleKeysAction->setChecked(visibleParts & 0x01);
// m_visibleNewAction->setChecked(visibleParts & 0x02); // m_visibleNewAction->setChecked(visibleParts & 0x02);
m_visibleGizmoAction->setChecked(visibleParts & 0x04); m_visibleGizmoAction->setChecked(visibleParts & 0x04);
m_visibleNameAction->setChecked(visibleParts & 0x08); m_visibleNameAction->setChecked(visibleParts & 0x08);
m_toolbarVisibleOtherParts = visibleParts & ~0x0F; // Reserve m_toolbarVisibleOtherParts = visibleParts & ~0x0F; // Reserve
m_pageViewer->setViewMode(swatchSize);
applyToolbarPartVisibility(TBVisKeyframe, visibleParts & 0x01); applyToolbarPartVisibility(TBVisKeyframe, visibleParts & 0x01);
// applyToolbarPartVisibility(TBVisNewStylePage, visibleParts & 0x02); // applyToolbarPartVisibility(TBVisNewStylePage, visibleParts & 0x02);

View file

@ -1264,4 +1264,21 @@ int StudioPaletteViewer::getViewMode() const {
void StudioPaletteViewer::setViewMode(int mode) { void StudioPaletteViewer::setViewMode(int mode) {
m_studioPaletteViewer->setViewMode( m_studioPaletteViewer->setViewMode(
(PaletteViewerGUI::PageViewer::ViewMode)mode); (PaletteViewerGUI::PageViewer::ViewMode)mode);
} }
//-----------------------------------------------------------------------------
void StudioPaletteViewer::save(QSettings &settings, bool forPopupIni) const {
int swatchSize = getViewMode();
settings.setValue("swatchSize", swatchSize);
}
//-----------------------------------------------------------------------------
void StudioPaletteViewer::load(QSettings &settings) {
int swatchSize = PageViewer::SmallChips;
QVariant swatchVar = settings.value("swatchSize");
if (swatchVar.canConvert(QVariant::Int)) swatchSize = swatchVar.toInt();
setViewMode(swatchSize);
}