10#include <QApplication>
15#include <QStandardPaths>
38#include <config-ocio.h>
45#include <QSurfaceFormat>
47#if defined Q_OS_WIN && QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
48# include <QtGui/private/qguiapplication_p.h>
49# include <QtGui/qpa/qplatformintegration.h>
57 : m_cfg( KSharedConfig::openConfig()->group(
""))
58 , m_readOnly(readOnly)
69 if (qApp && qApp->thread() != QThread::currentThread()) {
70 dbgKrita.noquote() <<
"WARNING: KisConfig: requested config synchronization from nonGUI thread! Called from:" <<
kisBacktrace();
95 switch(
m_cfg.readEntry(
"backupfilelocation", 0)) {
97 backupDir = QStandardPaths::writableLocation(QStandardPaths::HomeLocation);
100 backupDir = QStandardPaths::writableLocation(QStandardPaths::TempLocation);
104 backupDir =
"Same Folder as the File";
118#if defined Q_OS_WIN && QT_VERSION > QT_VERSION_CHECK(6, 0, 0)
120 auto tabletAPIName = [] (
bool useWinTab) {
121 return useWinTab ?
"WinTab" :
"WinInk";
124 QString actualTabletProtocol =
"<unknown>";
126 using QWindowsApplication = QNativeInterface::Private::QWindowsApplication;
127 if (
auto nativeWindowsApp =
dynamic_cast<QWindowsApplication *
>(QGuiApplicationPrivate::platformIntegration())) {
128 actualTabletProtocol = tabletAPIName(nativeWindowsApp->isWinTabEnabled());
130 KisUsageLogger::log(
"WARNING: Failed to fetch WinTab protocol status: QWindowsApplication is not available");
154 m_cfg.writeEntry(
"touchPainting",
int(
value));
175 return (defaultValue ?
true :
m_cfg.readEntry(
"useProjections",
true));
180 m_cfg.writeEntry(
"useProjections", useProj);
185 return (defaultValue ?
true :
m_cfg.readEntry(
"undoEnabled",
true));
190 m_cfg.writeEntry(
"undoEnabled", undo);
195 return (defaultValue ? 200 :
m_cfg.readEntry(
"undoStackLimit", 200));
200 m_cfg.writeEntry(
"undoStackLimit", limit);
205 return (defaultValue ?
false :
m_cfg.readEntry(
"useCumulativeUndoRedo",
false));
210 m_cfg.writeEntry(
"useCumulativeUndoRedo",
value);
231 return (defaultValue ? 2480 :
m_cfg.readEntry(
"imageWidthDef", 2480));
236 return (defaultValue ? 3508 :
m_cfg.readEntry(
"imageHeightDef", 3508));
241 return (defaultValue ? 300.0 :
m_cfg.readEntry(
"imageResolutionDef", 300.0)) / 72.0;
252 m_cfg.writeEntry(
"colorModelDef", model);
263 m_cfg.writeEntry(
"colorDepthDef", depth);
269 m_cfg.readEntry(
"colorProfileDef",
275 m_cfg.writeEntry(
"colorProfileDef", profile);
280 m_cfg.writeEntry(
"imageWidthDef", width);
285 m_cfg.writeEntry(
"imageHeightDef", height);
290 m_cfg.writeEntry(
"imageResolutionDef", res*72.0);
295 return defaultValue ? 100.0 :
m_cfg.readEntry(
"preferredVectorImportResolution", 100.0);
300 m_cfg.writeEntry(
"preferredVectorImportResolution",
value);
305 return (defaultvalue?
false:
m_cfg.readEntry(
"useDefaultColorSpace",
false));
310 m_cfg.writeEntry(
"useDefaultColorSpace",
value);
317 if (cfg.hasKey(
"newCursorStyle") &&
318 cfg.hasKey(
"newOutlineStyle")) {
320 cfg.deleteEntry(
"cursorStyleDef");
331 int style =
m_cfg.readEntry(
"newCursorStyle",
int(-1));
381 m_cfg.writeEntry(
"newCursorStyle", (
int)style);
387 col.setRgbF(1.0, 0.0, 1.0);
388 return (defaultValue ? col :
m_cfg.readEntry(
"cursorMaincColor", col));
393 m_cfg.writeEntry(
"cursorMaincColor",
v);
402 int style =
m_cfg.readEntry(
"newOutlineStyle",
int(-1));
442 m_cfg.writeEntry(
"newOutlineStyle", (
int)style);
451 int style =
m_cfg.readEntry(
"lastUsedOutlineStyle",
int(-1));
458 m_cfg.writeEntry(
"lastUsedOutlineStyle", (
int)style);
465 return (defaultValue ?
false :
m_cfg.readEntry(
"separateEraserCursor",
false));
470 m_cfg.writeEntry(
"separateEraserCursor",
value);
479 int style =
m_cfg.readEntry(
"eraserCursorStyle",
int(-1));
491 m_cfg.writeEntry(
"eraserCursorStyle", (
int)style);
497 col.setRgbF(0.501961, 1.0, 0.501961);
498 return (defaultValue ? col :
m_cfg.readEntry(
"eraserCursorMaincColor", col));
503 m_cfg.writeEntry(
"eraserCursorMaincColor",
v);
512 int style =
m_cfg.readEntry(
"eraserOutlineStyle",
int(-1));
524 m_cfg.writeEntry(
"eraserOutlineStyle", (
int)style);
540 m_cfg.writeEntry(
"colorSamplerPreviewStyle",
int(style));
548 return m_cfg.readEntry(
"colorSamplerPreviewCircleDiameter", def);
555 m_cfg.writeEntry(
"colorSamplerPreviewCircleDiameter", diameter);
562 return m_cfg.readEntry(
"colorSamplerPreviewCircleThickness", def);
569 m_cfg.writeEntry(
"colorSamplerPreviewCircleThickness", thickness);
576 return m_cfg.readEntry(
"colorSamplerPreviewCircleOutlineEnabled", def);
583 m_cfg.writeEntry(
"colorSamplerPreviewCircleOutlineEnabled", enabled);
590 return m_cfg.readEntry(
"colorSamplerPreviewCircleExtraCirclesEnabled", def);
597 m_cfg.writeEntry(
"colorSamplerPreviewCircleExtraCirclesEnabled", enabled);
602 return (defaultValue ?
false :
m_cfg.readEntry(
"useDirtyPresets",
true));
612 return (defaultValue ?
false :
m_cfg.readEntry(
"useEraserBrushSize",
false));
623 return (defaultValue ?
false :
m_cfg.readEntry(
"useEraserBrushOpacity",
false));
628 m_cfg.writeEntry(
"useEraserBrushOpacity",
value);
634 return (defaultValue ? QPoint(16, 16) :
m_cfg.readEntry(
"defaultGridSpacing", QPoint(16, 16)));
639 m_cfg.writeEntry(
"defaultGridSpacing", gridSpacing);
644 QColor col(77, 77, 77);
647 QString xml = kol.
toXML();
648 return (defaultValue ? xml :
m_cfg.readEntry(
"mdiBackgroundColorXML", xml));
653 m_cfg.writeEntry(
"mdiBackgroundColorXML",
v);
658 return (defaultValue ?
"" :
m_cfg.readEntry(
"mdiBackgroundImage",
""));
663 m_cfg.writeEntry(
"mdiBackgroundImage", filename);
668 return (defaultValue ?
true :
m_cfg.readEntry(
"enableCanvasSurfaceColorSpaceManagement",
true));
673 m_cfg.writeEntry(
"enableCanvasSurfaceColorSpaceManagement",
value);
677 QString modeStr = defaultValue ?
"preferred" :
m_cfg.readEntry(
"canvasSurfaceColorSpaceManagementMode",
"preferred");
679 if (modeStr ==
"preferred") {
681 }
else if (modeStr ==
"rec709g22") {
683 }
else if (modeStr ==
"rec709g10") {
685 }
else if (modeStr ==
"rec2020pq") {
687 }
else if (modeStr ==
"unmanaged") {
699 modeStr =
"preferred";
702 modeStr =
"rec709g22";
705 modeStr =
"rec709g10";
708 modeStr =
"rec2020pq";
711 modeStr =
"unmanaged";
715 m_cfg.writeEntry(
"canvasSurfaceColorSpaceManagementMode", modeStr);
721 QString modeStr = defaultValue ?
"auto" : settings->value(
"canvasSurfaceBitDepthMode",
"auto").toString();
723 if (modeStr ==
"auto") {
725 }
else if (modeStr ==
"8bit") {
727 }
else if (modeStr ==
"10bit") {
750 settings->setValue(
"canvasSurfaceBitDepthMode", modeStr);
755 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
756 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
762 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
763 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
772 if (format.redBufferSize() == 10 &&
773 format.greenBufferSize() == 10 &&
774 format.blueBufferSize() == 10) {
789 const QString defaultProfile =
"sRGB-elle-V2-srgbtrc.icc";
793 const QString screenIdentifierKey =
"monitorProfile" + screenIdentifier;
800 if (!screenIdentifier.isEmpty() &&
m_cfg.hasKey(screenIdentifierKey)) {
801 profile =
m_cfg.readEntry(screenIdentifierKey, defaultProfile);
803 profile =
m_cfg.readEntry(
"monitorProfile" + QString(screen == 0 ?
"": QString(
"_%1").arg(screen)), defaultProfile);
812 return (defaultValue ? defaultMonitor
813 :
m_cfg.readEntry(QString(
"monitor_for_screen_%1").arg(screen), defaultMonitor));
818 m_cfg.writeEntry(QString(
"monitor_for_screen_%1").arg(screen), monitor);
823 m_cfg.writeEntry(
"monitorProfile/OverrideX11",
override);
824 m_cfg.writeEntry(
"monitorProfile" + QString(screen == 0 ?
"": QString(
"_%1").arg(screen)),
monitorProfile);
833 if (screen < 0)
return 0;
842 if (monitorId.isEmpty()) {
850 if (bytes.length() > 0) {
859 if (screen < 0)
return 0;
876 if (!monitorProfileName.isEmpty()) {
904 if (screenNo < 0 || screenNo >= QGuiApplication::screens().
length()) {
907 QScreen* screen = QGuiApplication::screens()[screenNo];
909 QString manufacturer = screen->manufacturer();
910 QString model = screen->model();
911 QString serialNumber = screen->serialNumber();
913 if (manufacturer ==
"" && model ==
"" && serialNumber ==
"") {
917 QString identifier =
QStringList({manufacturer, model, serialNumber}).join(
"_");
923 return (defaultValue ?
"RGBA" :
m_cfg.readEntry(
"workingColorSpace",
"RGBA"));
935 return QString(
"RGBA");
946 return (defaultValue ?
"" :
m_cfg.readEntry(
"printerProfile",
""));
957 return (defaultValue ?
true :
m_cfg.readEntry(
"useBlackPointCompensation",
true));
967 return (defaultValue ?
true :
m_cfg.readEntry(
"allowLCMSOptimization",
true));
977 return (defaultValue ?
false :
m_cfg.readEntry(
"colorsettings/forcepalettecolors",
false));
987 KConfigGroup cfg = KSharedConfig::openConfig()->group(
"advancedColorSelector");
988 return (defaultValue ?
false : cfg.readEntry(
"lastUsedColorsPerDocument",
false));
993 return (defaultValue ?
false :
m_cfg.readEntry(
"showrulers",
false));
998 m_cfg.writeEntry(
"showrulers", rulers);
1003 return (defaultValue ?
false :
m_cfg.readEntry(
"forceShowSaveMessages",
false));
1008 m_cfg.writeEntry(
"forceShowSaveMessages",
value);
1013 return (defaultValue ?
false :
m_cfg.readEntry(
"forceShowAutosaveMessages",
false));
1018 m_cfg.writeEntry(
"forceShowAutosaveMessages",
value);
1023 return (defaultValue ?
true :
m_cfg.readEntry(
"rulersTrackMouse",
true));
1033 return (defaultValue ? 2 :
m_cfg.readEntry(
"pasteBehaviour", 2));
1038 m_cfg.writeEntry(
"pasteBehaviour", renderIntent);
1043 return defaultValue ? 0 :
m_cfg.readEntry(
"pasteFormat", 0);
1048 m_cfg.writeEntry(
"pasteFormat", format);
1054 if (intent > 3) intent = 3;
1055 if (intent < 0) intent = 0;
1061 if (renderIntent > 3) renderIntent = 3;
1062 if (renderIntent < 0) renderIntent = 0;
1063 m_cfg.writeEntry(
"renderIntent", renderIntent);
1072 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1073 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1075 return kritarc.value(
"OpenGLRenderer",
"auto").toString() !=
"none";
1080 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1081 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1083 kritarc.setValue(
"OpenGLRenderer",
"none");
1088 return (defaultValue ? 3 :
m_cfg.readEntry(
"OpenGLFilterMode", 3));
1093 m_cfg.writeEntry(
"OpenGLFilterMode", filteringMode);
1098 m_cfg.writeEntry(
"widgetStyle", name);
1103 return (defaultValue ?
"" :
m_cfg.readEntry(
"widgetStyle",
""));
1108 return (defaultValue ?
true :
m_cfg.readEntry(
"useOpenGLTextureBuffer",
true));
1113 m_cfg.writeEntry(
"useOpenGLTextureBuffer", useBuffer);
1118 return (defaultValue ?
false : settings->value(
"preferXcbEglProvider",
false).toBool());
1123 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1124 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1130 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1131 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1132 kritarc.setValue(
"preferXcbEglProvider",
value);
1137 return (defaultValue ? 256 :
m_cfg.readEntry(
"textureSize", 256));
1142 return (defaultValue ?
false :
m_cfg.readEntry(
"forceOpenGLFenceWorkaround",
false));
1147 return (defaultValue ? 4 :
m_cfg.readEntry(
"numMipmapLevels", 4));
1157 int v =
m_cfg.readEntry(
"gridmainstyle", 0);
1158 v = qBound(0,
v, 2);
1159 return (defaultValue ? 0 :
v);
1164 m_cfg.writeEntry(
"gridmainstyle",
v);
1169 quint32
v =
m_cfg.readEntry(
"gridsubdivisionstyle", 1);
1171 return (defaultValue ? 1 :
v);
1176 m_cfg.writeEntry(
"gridsubdivisionstyle",
v);
1181 int v =
m_cfg.readEntry(
"gridisoverticalstyle", 0);
1182 v = qBound(0,
v, 3);
1183 return (defaultValue ? 0 :
v);
1188 m_cfg.writeEntry(
"gridisoverticalstyle",
v);
1193 QColor col(99, 99, 99);
1194 return (defaultValue ? col :
m_cfg.readEntry(
"gridmaincolor", col));
1199 m_cfg.writeEntry(
"gridmaincolor",
v);
1204 QColor col(150, 150, 150);
1205 return (defaultValue ? col :
m_cfg.readEntry(
"gridsubdivisioncolor", col));
1210 m_cfg.writeEntry(
"gridsubdivisioncolor",
v);
1215 QColor col(150, 150, 150);
1216 return (defaultValue ? col :
m_cfg.readEntry(
"gridisoverticalcolor", col));
1221 m_cfg.writeEntry(
"gridisoverticalcolor",
v);
1226 QColor col(255, 255, 255);
1227 return (defaultValue ? col :
m_cfg.readEntry(
"pixelGridColor", col));
1232 m_cfg.writeEntry(
"pixelGridColor",
v);
1237 qreal border = 24.0f;
1238 return (defaultValue ? border :
m_cfg.readEntry(
"pixelGridDrawingThreshold", border));
1243 m_cfg.writeEntry(
"pixelGridDrawingThreshold",
v);
1248 bool enabled =
true;
1249 return (defaultValue ? enabled :
m_cfg.readEntry(
"pixelGridEnabled", enabled));
1254 m_cfg.writeEntry(
"pixelGridEnabled",
v);
1259 int v =
m_cfg.readEntry(
"guidesLineStyle", 0);
1260 v = qBound(0,
v, 2);
1261 return (defaultValue ? 0 :
v);
1266 m_cfg.writeEntry(
"guidesLineStyle",
v);
1271 QColor col(99, 99, 99);
1272 return (defaultValue ? col :
m_cfg.readEntry(
"guidesColor", col));
1277 m_cfg.writeEntry(
"guidesColor",
v);
1285 *config = defaultConfig;
1302 m_cfg.writeEntry(
"globalSnapNode", config.
node());
1308 m_cfg.writeEntry(
"globalSnapToPixel", config.
toPixel());
1313 qint32 size = (defaultValue ? 32 :
m_cfg.readEntry(
"checksize", 32));
1314 if (size == 0) size = 32;
1320 if (checksize == 0) {
1323 m_cfg.writeEntry(
"checksize", checksize);
1328 return (defaultValue ?
false :
m_cfg.readEntry(
"scrollingcheckers",
false));
1333 m_cfg.writeEntry(
"scrollingcheckers", sc);
1338 QColor color(QColor(128,128,128));
1339 return (defaultValue ? color :
m_cfg.readEntry(
"canvasBorderColor", color));
1344 m_cfg.writeEntry(
"canvasBorderColor", color);
1349 return (defaultValue ?
false :
m_cfg.readEntry(
"hideScrollbars",
false));
1359 return (defaultValue ?
true :
m_cfg.readEntry(
"scrollbarZoomEnabled",
true));
1364 m_cfg.writeEntry(
"scrollbarZoomEnabled", enabled);
1369 QColor col(220, 220, 220);
1370 return (defaultValue ? col :
m_cfg.readEntry(
"checkerscolor", col));
1375 m_cfg.writeEntry(
"checkerscolor",
v);
1380 return (defaultValue ? QColor(Qt::white) :
m_cfg.readEntry(
"checkerscolor2", QColor(Qt::white)));
1385 m_cfg.writeEntry(
"checkerscolor2",
v);
1390 return (defaultValue ?
true :
m_cfg.readEntry(
"antialiascurves",
true));
1395 m_cfg.writeEntry(
"antialiascurves",
v);
1400 return (defaultValue ?
false :
m_cfg.readEntry(
"AntialiasSelectionOutline",
false));
1405 m_cfg.writeEntry(
"AntialiasSelectionOutline",
v);
1410 return (defaultValue ?
false :
m_cfg.readEntry(
"ShowRootLayer",
false));
1420 return (defaultValue ?
false :
m_cfg.readEntry(
"ShowGlobalSelection",
false));
1432 return (defaultValue ?
true :
m_cfg.readEntry(
"ShowOutlineWhilePainting",
true));
1442 return (defaultValue ?
false :
m_cfg.readEntry(
"forceAlwaysFullSizedOutline",
false));
1447 m_cfg.writeEntry(
"forceAlwaysFullSizedOutline",
value);
1454 return (defaultValue ?
true :
m_cfg.readEntry(
"ShowEraserOutlineWhilePainting",
true));
1464 return (defaultValue ?
false :
m_cfg.readEntry(
"forceAlwaysFullSizedEraserOutline",
false));
1469 m_cfg.writeEntry(
"forceAlwaysFullSizedEraserOutline",
value);
1479 m_cfg.writeEntry(
"sessionOnStartup", (
int)
value);
1484 return defaultValue ? false :
m_cfg.readEntry(
"saveSessionOnQuit",
false);
1488 m_cfg.writeEntry(
"saveSessionOnQuit",
value);
1493 return defaultValue ? false :
m_cfg.readEntry(
"hideDevFundBanner",
false);
1498 m_cfg.writeEntry(
"hideDevFundBanner",
value);
1503 return (defaultValue ? 1.0 :
m_cfg.readEntry(
"OutlineSizeMinimum", 1.0));
1513 return (defaultValue ? 5.0 :
m_cfg.readEntry(
"SelectionViewSizeMinimum", 5.0));
1524 return (defaultValue ? def :
m_cfg.readEntry(
"AutoSaveInterval", def));
1529 return m_cfg.writeEntry(
"AutoSaveInterval", seconds);
1534 return (defaultValue ?
true :
m_cfg.readEntry(
"CreateBackupFile",
true));
1544 return (defaultValue ?
false :
m_cfg.readEntry(
"showFilterGallery",
false));
1554 return (defaultValue ?
true :
m_cfg.readEntry(
"showFilterGalleryLayerMaskDialog",
true));
1564 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1565 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1566 return (defaultValue ?
"OPENGL_NOT_TRIED" : kritarc.value(
"canvasState",
"OPENGL_NOT_TRIED").toString());
1572 if (acceptableStates.isEmpty()) {
1573 acceptableStates <<
"OPENGL_SUCCESS" <<
"TRY_OPENGL" <<
"OPENGL_NOT_TRIED" <<
"OPENGL_FAILED";
1575 if (acceptableStates.contains(state)) {
1576 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1577 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1578 kritarc.setValue(
"canvasState", state);
1584 return (defaultValue ?
false :
m_cfg.readEntry(
"ToolOptionsPopupDetached",
false));
1589 m_cfg.writeEntry(
"ToolOptionsPopupDetached", detached);
1595 return (defaultValue ?
true :
m_cfg.readEntry(
"PaintopPopupDetached",
true));
1600 m_cfg.writeEntry(
"PaintopPopupDetached", detached);
1614 fallback = QStringLiteral(
"0,0;0.7,1;");
1617 return (defaultValue ? fallback :
m_cfg.readEntry(
"tabletPressureCurve", fallback));
1622 m_cfg.writeEntry(
"tabletPressureCurve", curveString);
1628 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1629 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1633 Q_UNUSED(defaultValue);
1645 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1646 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1657 return defaultValue ? false : settings->value(
"useWin8PointerInput",
false).toBool();
1662 settings->setValue(
"useWin8PointerInput",
value);
1667 return (defaultValue ?
false :
m_cfg.readEntry(
"useRightMiddleTabletButtonWorkaround",
false));
1672 m_cfg.writeEntry(
"useRightMiddleTabletButtonWorkaround",
value);
1676bool KisConfig::usePageUpDownMouseButtonEmulationWorkaround(
bool defaultValue)
const
1682 return m_cfg.readEntry(
"usePageUpDownMouseButtonEmulationWorkaround", fallback);
1686void KisConfig::setUsePageUpDownMouseButtonEmulationWorkaround(
bool value)
1688 m_cfg.writeEntry(
"usePageUpDownMouseButtonEmulationWorkaround",
value);
1692bool KisConfig::useIgnoreHistoricTabletEventsWorkaround(
bool defaultValue)
const
1698 return m_cfg.readEntry(
"useIgnoreHistoricTabletEventsWorkaround", fallback);
1702void KisConfig::setUseIgnoreHistoricTabletEventsWorkaround(
bool value)
1704 m_cfg.writeEntry(
"useIgnoreHistoricTabletEventsWorkaround",
value);
1711 return (defaultValue ? 0.9 :
m_cfg.readEntry(
"vastScrolling", 0.9));
1716 m_cfg.writeEntry(
"vastScrolling", factor);
1721 return (defaultValue ? 0 :
m_cfg.readEntry(
"presetChooserViewMode", 0));
1726 m_cfg.writeEntry(
"presetChooserViewMode", mode);
1731 return (defaultValue ? 60 :
m_cfg.readEntry(
"presetIconSize", 60));
1741 return (defaultValue ?
true :
m_cfg.readEntry(
"firstRun",
true));
1746 m_cfg.writeEntry(
"firstRun", first);
1751 return (defaultValue ? 1 :
m_cfg.readEntry(
"horizontalSplitLines", 1));
1755 m_cfg.writeEntry(
"horizontalSplitLines", numberLines);
1760 return (defaultValue ? 1 :
m_cfg.readEntry(
"verticalSplitLines", 1));
1765 m_cfg.writeEntry(
"verticalSplitLines", numberLines);
1770 return (defaultValue ?
true :
m_cfg.readEntry(
"clicklessSpacePan",
true));
1775 m_cfg.writeEntry(
"clicklessSpacePan", toggle);
1781 return (defaultValue ?
true :
m_cfg.readEntry(
"hideDockersFullScreen",
true));
1786 m_cfg.writeEntry(
"hideDockersFullScreen",
value);
1791 return (defaultValue ?
true :
m_cfg.readEntry(
"showDockerTitleBars",
true));
1796 m_cfg.writeEntry(
"showDockerTitleBars",
value);
1801 return (defaultValue ?
true :
m_cfg.readEntry(
"showDockers",
true));
1811 return (defaultValue ?
true :
m_cfg.readEntry(
"showStatusBar",
true));
1821 return (defaultValue ?
true:
m_cfg.readEntry(
"hideMenuFullScreen",
true));
1826 m_cfg.writeEntry(
"hideMenuFullScreen",
value);
1831 return (defaultValue ?
true :
m_cfg.readEntry(
"hideScrollbarsFullScreen",
true));
1836 m_cfg.writeEntry(
"hideScrollbarsFullScreen",
value);
1841 return (defaultValue ?
true:
m_cfg.readEntry(
"hideStatusbarFullScreen",
true));
1846 m_cfg.writeEntry(
"hideStatusbarFullScreen",
value);
1851 return (defaultValue ?
true :
m_cfg.readEntry(
"hideTitleBarFullscreen",
true));
1856 m_cfg.writeEntry(
"hideTitleBarFullscreen",
value);
1861 return (defaultValue ?
true :
m_cfg.readEntry(
"hideToolbarFullscreen",
true));
1866 m_cfg.writeEntry(
"hideToolbarFullscreen",
value);
1871 return (defaultValue ?
true :
m_cfg.readEntry(
"fullscreenMode",
false));
1882 m_cfg.readEntry(
"favoriteCompositeOps",
1883 QString(
"normal,erase,multiply,burn,darken,add,dodge,screen,overlay,soft_light_svg,luminize,lighten,saturation,color,divide").split(
',')));
1888 m_cfg.writeEntry(
"favoriteCompositeOps", compositeOps);
1893 return (defaultValue ? QString() :
m_cfg.readEntry(
"ExportConfiguration-" + filterId, QString()));
1900 cfg->fromXML(xmlData);
1906 QString exportConfig = properties->toXML();
1907 m_cfg.writeEntry(
"ExportConfiguration-" + filterId, exportConfig);
1912 return (defaultValue ? QString() :
m_cfg.readEntry(
"ImportConfiguration-" + filterId, QString()));
1917 QString importConfig = properties->toXML();
1918 m_cfg.writeEntry(
"ImportConfiguration-" + filterId, importConfig);
1924 return (defaultValue ?
false :
m_cfg.readEntry(
"Krita/Ocio/UseOcio",
false));
1926 Q_UNUSED(defaultValue);
1933 m_cfg.writeEntry(
"Krita/Ocio/UseOcio", useOCIO);
1938 return (defaultValue ? 10:
m_cfg.readEntry(
"numFavoritePresets", 10));
1943 m_cfg.writeEntry(
"numFavoritePresets",
value);
1948 return (defaultValue ?
false :
m_cfg.readEntry(
"levelOfDetailEnabled",
false));
1953 m_cfg.writeEntry(
"levelOfDetailEnabled",
value);
1960 if (!defaultValue) {
1963 cfg.
lutPath =
m_cfg.readEntry(
"Krita/Ocio/OcioLutPath", QString());
1967 cfg.
look =
m_cfg.readEntry(
"Krita/Ocio/DisplayLook", QString());
1975 m_cfg.writeEntry(
"Krita/Ocio/OcioColorManagementMode", (
int) cfg.
mode);
1977 m_cfg.writeEntry(
"Krita/Ocio/OcioLutPath", cfg.
lutPath);
1981 m_cfg.writeEntry(
"Krita/Ocio/DisplayLook", cfg.
look);
1989 :
m_cfg.readEntry(
"Krita/Ocio/OcioColorManagementMode", (
int)
INTERNAL));
1995 m_cfg.writeEntry(
"Krita/Ocio/OcioColorManagementMode", (
int) mode);
2000 return (defaultValue ? 64 :
m_cfg.readEntry(
"Krita/Ocio/LutEdgeSize", 64));
2005 m_cfg.writeEntry(
"Krita/Ocio/LutEdgeSize",
value);
2010 return (defaultValue ?
false :
m_cfg.readEntry(
"Krita/Ocio/OcioLockColorVisualRepresentation",
false));
2015 m_cfg.writeEntry(
"Krita/Ocio/OcioLockColorVisualRepresentation",
value);
2020 return (defaultValue ? QString() :
m_cfg.readEntry(
"defaultPalette",
"Default"));
2025 m_cfg.writeEntry(
"defaultPalette", name);
2030 QString def =
"flow";
2031 if (sliderNumber == 1) {
2034 if (sliderNumber == 2) {
2037 return (defaultValue ? def :
m_cfg.readEntry(QString(
"toolbarslider_%1").arg(sliderNumber), def));
2042 m_cfg.writeEntry(QString(
"toolbarslider_%1").arg(sliderNumber), slider);
2047 return (defaultValue ? 20 :
m_cfg.readEntry(
"layerThumbnailSize", 20));
2052 m_cfg.writeEntry(
"layerThumbnailSize", size);
2057 return (defaultValue ? 50 :
m_cfg.readEntry(
"layerTreeIndentation", 50));
2062 m_cfg.writeEntry(
"layerTreeIndentation", percentage);
2067 return (defaultValue ?
true :
m_cfg.readEntry(
"sliderLabels",
true));
2072 m_cfg.writeEntry(
"sliderLabels", enabled);
2077 return (defaultValue ? QString() :
m_cfg.readEntry(
"currentInputProfile", QString()));
2082 m_cfg.writeEntry(
"currentInputProfile", name);
2087 return (defaultValue ?
false :
m_cfg.readEntry(
"ColorManagement/UseSystemMonitorProfile",
false));
2092 m_cfg.writeEntry(
"ColorManagement/UseSystemMonitorProfile", _useSystemMonitorProfile);
2097 return (defaultValue ?
true :
m_cfg.readEntry(
"presetStripVisible",
true));
2102 m_cfg.writeEntry(
"presetStripVisible", visible);
2107 return (defaultValue ?
true :
m_cfg.readEntry(
"scratchpadVisible",
true));
2112 m_cfg.writeEntry(
"scratchpadVisible", visible);
2117 return (defaultValue ?
false :
m_cfg.readEntry(
"showSingleChannelAsColor",
false));
2122 m_cfg.writeEntry(
"showSingleChannelAsColor", asColor);
2127 return (defaultValue ?
false :
m_cfg.readEntry(
"hidePopups",
false));
2137 return (defaultValue ? 2 :
m_cfg.readEntry(
"NumberOfLayersForNewImage", 2));
2142 m_cfg.writeEntry(
"NumberOfLayersForNewImage", num);
2152 m_cfg.writeEntry(
"BackgroundOpacityForNewImage", (
int)
value);
2157 return (defaultValue ? QColor(Qt::white) :
m_cfg.readEntry(
"BackgroundColorForNewImage", QColor(Qt::white)));
2162 m_cfg.writeEntry(
"BackgroundColorForNewImage",
value);
2172 m_cfg.writeEntry(
"BackgroundStyleForNewImage", (
int)
value);
2177 return (defaultValue ? 1 :
m_cfg.readEntry(
"LineSmoothingType", 1));
2182 m_cfg.writeEntry(
"LineSmoothingType",
value);
2187 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDistanceMin", 50.0));
2192 m_cfg.writeEntry(
"LineSmoothingDistanceMin",
value);
2197 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDistanceMax", 50.0));
2202 m_cfg.writeEntry(
"LineSmoothingDistanceMax",
value);
2207 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingDistanceKeepAspectRatio",
true));
2212 m_cfg.writeEntry(
"LineSmoothingDistanceKeepAspectRatio",
value);
2217 return (defaultValue ? 0.15 :
m_cfg.readEntry(
"LineSmoothingTailAggressiveness", 0.15));
2222 m_cfg.writeEntry(
"LineSmoothingTailAggressiveness",
value);
2227 return (defaultValue ?
false :
m_cfg.readEntry(
"LineSmoothingSmoothPressure",
false));
2232 m_cfg.writeEntry(
"LineSmoothingSmoothPressure",
value);
2237 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingScalableDistance",
true));
2242 m_cfg.writeEntry(
"LineSmoothingScalableDistance",
value);
2247 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDelayDistance", 50.0));
2252 m_cfg.writeEntry(
"LineSmoothingDelayDistance",
value);
2257 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingUseDelayDistance",
true));
2262 m_cfg.writeEntry(
"LineSmoothingUseDelayDistance",
value);
2267 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingFinishStabilizedCurve",
true));
2272 m_cfg.writeEntry(
"LineSmoothingFinishStabilizedCurve",
value);
2277 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingStabilizeSensors",
true));
2282 m_cfg.writeEntry(
"LineSmoothingStabilizeSensors",
value);
2287 return (defaultValue ? 10 :
m_cfg.readEntry(
"tabletEventsDelay", 10));
2292 m_cfg.writeEntry(
"tabletEventsDelay",
value);
2297 return (defaultValue ?
false :
m_cfg.readEntry(
"trackTabletEventLatency",
false));
2302 m_cfg.writeEntry(
"trackTabletEventLatency",
value);
2307 return (defaultValue ?
true :
m_cfg.readEntry(
"ignoreHighFunctionKeys",
true));
2312 m_cfg.writeEntry(
"ignoreHighFunctionKeys",
value);
2317 return (defaultValue ?
false :
m_cfg.readEntry(
"testingAcceptCompressedTabletEvents",
false));
2322 m_cfg.writeEntry(
"testingAcceptCompressedTabletEvents",
value);
2327 return (defaultValue ?
false :
m_cfg.readEntry(
"shouldEatDriverShortcuts",
false));
2332 return (defaultValue ?
false :
m_cfg.readEntry(
"testingCompressBrushEvents",
false));
2337 m_cfg.writeEntry(
"testingCompressBrushEvents",
value);
2342 return (defaultValue ? 0 :
m_cfg.readEntry(
"workaroundX11SmoothPressureSteps", 0));
2347 return (defaultValue ?
true :
m_cfg.readEntry(
"showOnCanvasMessages",
true));
2352 m_cfg.writeEntry(
"showOnCanvasMessages", show);
2357 return (defaultValue ?
false :
m_cfg.readEntry(
"compressLayersInKra",
false));
2362 m_cfg.writeEntry(
"compressLayersInKra", compress);
2367 return (defaultValue ?
false :
m_cfg.readEntry(
"TrimKra",
false));
2372 m_cfg.writeEntry(
"TrimKra", trim);
2377 return (defaultValue ?
false :
m_cfg.readEntry(
"TrimFramesImport",
false));
2381 m_cfg.writeEntry(
"TrimFramesImport", trim);
2386 return (defaultValue ? 0 :
m_cfg.readEntry(
"defaultExportMimeType", QString()));
2391 m_cfg.writeEntry(
"defaultExportMimeType", defaultExportMimeType);
2396 return (defaultValue ?
true :
m_cfg.readEntry(
"ToolOptionsInDocker",
true));
2401 m_cfg.writeEntry(
"ToolOptionsInDocker", inDocker);
2406 return (defaultValue ?
true :
m_cfg.readEntry(
"KineticScrollingEnabled",
true));
2411 m_cfg.writeEntry(
"KineticScrollingEnabled",
value);
2417 int defaultGesture = 1;
2419 int defaultGesture = 2;
2422 return (defaultValue ? defaultGesture :
m_cfg.readEntry(
"KineticScrollingGesture", defaultGesture));
2427 m_cfg.writeEntry(
"KineticScrollingGesture", gesture);
2432 return (defaultValue ? 75 :
m_cfg.readEntry(
"KineticScrollingSensitivity", 75));
2437 m_cfg.writeEntry(
"KineticScrollingSensitivity", sensitivity);
2442 return (defaultValue ?
false :
m_cfg.readEntry(
"KineticScrollingHideScrollbar",
false));
2447 m_cfg.writeEntry(
"KineticScrollingHideScrollbar", scrollbar);
2452 return (defaultValue ? 2 :
m_cfg.readEntry(
"zoomSteps", 2));
2457 m_cfg.writeEntry(
"zoomSteps", steps);
2462 return (defaultValue ? 0 :
m_cfg.readEntry(
"zoomMarginSize", 0));
2474 KConfigGroup cfg = KSharedConfig::openConfig()->group(
"advancedColorSelector");
2475 if (defaultValue || cfg.readEntry(
"useCustomColorSpace",
true)) {
2477 QString modelID = cfg.readEntry(
"customColorSpaceModel",
"RGBA");
2478 QString depthID = cfg.readEntry(
"customColorSpaceDepthID",
"U8");
2479 QString profile = cfg.readEntry(
"customColorSpaceProfile",
"sRGB built-in - (lcms internal)");
2480 if (profile ==
"default") {
2482 profile =
"sRGB built-in - (lcms internal)";
2484 cs = csr->
colorSpace(modelID, depthID, profile);
2492 KConfigGroup cfg = KSharedConfig::openConfig()->group(
"advancedColorSelector");
2493 cfg.writeEntry(
"useCustomColorSpace",
bool(cs));
2495 cfg.writeEntry(
"customColorSpaceModel", cs->
colorModelId().
id());
2496 cfg.writeEntry(
"customColorSpaceDepthID", cs->
colorDepthId().
id());
2497 cfg.writeEntry(
"customColorSpaceProfile", cs->
profile()->
name());
2503 return (defaultValue ?
false :
m_cfg.readEntry(
"enableOpenGLFramerateLogging",
false));
2508 m_cfg.writeEntry(
"enableOpenGLFramerateLogging",
value);
2513 return (defaultValue ?
false :
m_cfg.readEntry(
"enableBrushSpeedLogging",
false));
2518 m_cfg.writeEntry(
"enableBrushSpeedLogging",
value);
2524 m_cfg.writeEntry(
"amdDisableVectorWorkaround",
value);
2530 return (defaultValue ?
false :
m_cfg.readEntry(
"amdDisableVectorWorkaround",
false));
2535 m_cfg.writeEntry(
"disableAVXOptimizations",
value);
2540 return (defaultValue ?
false :
m_cfg.readEntry(
"disableAVXOptimizations",
false));
2545 m_cfg.writeEntry(
"animationPlaybackBackend",
value);
2550 return (defaultValue ? 1 :
m_cfg.readEntry(
"animationPlaybackBackend", 1));
2557 if (
value == oldValue)
return;
2559 m_cfg.writeEntry(
"animationDropFrames",
value);
2565 return (defaultValue ?
true :
m_cfg.readEntry(
"autoPinLayers",
true));
2575 return (defaultValue ?
true :
m_cfg.readEntry(
"adaptivePlaybackRange",
true));
2580 m_cfg.writeEntry(
"adaptivePlaybackRange",
value);
2585 return (defaultValue ?
true :
m_cfg.readEntry(
"autoZoomTimelineToPlaybackRange",
true));
2590 m_cfg.writeEntry(
"autoZoomTimelineToPlaybackRange",
value);
2594 return (defaultValue ?
"" :
m_cfg.readEntry(
"ffmpegLocation",
""));
2603 return (defaultValue ? 1.0f :
m_cfg.readEntry(
"timelineZoom", 1.0f));
2613 return (defaultValue ?
true :
m_cfg.readEntry(
"animationDropFrames",
true));
2618 return (defaultValue ? 30 :
m_cfg.readEntry(
"scrubbingUpdatesDelay", 30));
2623 m_cfg.writeEntry(
"scrubbingUpdatesDelay",
value);
2628 return (defaultValue ? -1 :
m_cfg.readEntry(
"scrubbingAudioUpdatesDelay", -1));
2633 m_cfg.writeEntry(
"scrubbingAudioUpdatesDelay",
value);
2638 return (defaultValue ? -1 :
m_cfg.readEntry(
"audioOffsetTolerance", -1));
2643 m_cfg.writeEntry(
"audioOffsetTolerance",
value);
2648 return defaultValue ? false :
m_cfg.readEntry(
"switchSelectionCtrlAlt",
false);
2653 m_cfg.writeEntry(
"switchSelectionCtrlAlt",
value);
2658 return defaultValue ? false :
m_cfg.readEntry(
"ConvertToImageColorSpaceOnImport",
false);
2663 m_cfg.writeEntry(
"ConvertToImageColorSpaceOnImport",
value);
2669 const int defaultSampleSize = 50;
2671 const int defaultSampleSize = 15;
2674 return defaultValue ?
2675 defaultSampleSize :
m_cfg.readEntry(
"stabilizerSampleSize", defaultSampleSize);
2680 m_cfg.writeEntry(
"stabilizerSampleSize",
value);
2685 const bool defaultEnabled =
true;
2687 return defaultValue ?
2688 defaultEnabled :
m_cfg.readEntry(
"stabilizerDelayedPaint", defaultEnabled);
2693 m_cfg.writeEntry(
"stabilizerDelayedPaint",
value);
2698 return defaultValue ? false :
m_cfg.readEntry(
"showBrushHud",
false);
2708 return defaultValue ? true :
m_cfg.readEntry(
"showPaletteBottomBar",
true);
2713 m_cfg.writeEntry(
"showPaletteBottomBar",
value);
2718 QString defaultDoc =
"<!DOCTYPE hud_properties>\n<hud_properties>\n <version value=\"1\" type=\"value\"/>\n <paintbrush>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n <item_2 value=\"angle\" type=\"value\"/>\n </properties_list>\n </paintbrush>\n <colorsmudge>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n <item_2 value=\"smudge_mode\" type=\"value\"/>\n <item_3 value=\"smudge_length\" type=\"value\"/>\n <item_4 value=\"smudge_color_rate\" type=\"value\"/>\n </properties_list>\n </colorsmudge>\n <sketchbrush>\n <properties_list type=\"array\">\n <item_0 value=\"opacity\" type=\"value\"/>\n <item_1 value=\"size\" type=\"value\"/>\n </properties_list>\n </sketchbrush>\n <hairybrush>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n </properties_list>\n </hairybrush>\n <experimentbrush>\n <properties_list type=\"array\">\n <item_0 value=\"opacity\" type=\"value\"/>\n <item_1 value=\"shape_windingfill\" type=\"value\"/>\n </properties_list>\n </experimentbrush>\n <spraybrush>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n <item_2 value=\"spray_particlecount\" type=\"value\"/>\n <item_3 value=\"spray_density\" type=\"value\"/>\n </properties_list>\n </spraybrush>\n <hatchingbrush>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n <item_2 value=\"hatching_angle\" type=\"value\"/>\n <item_3 value=\"hatching_thickness\" type=\"value\"/>\n <item_4 value=\"hatching_separation\" type=\"value\"/>\n </properties_list>\n </hatchingbrush>\n <gridbrush>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n <item_2 value=\"grid_divisionlevel\" type=\"value\"/>\n </properties_list>\n </gridbrush>\n <curvebrush>\n <properties_list type=\"array\">\n <item_0 value=\"opacity\" type=\"value\"/>\n <item_1 value=\"curve_historysize\" type=\"value\"/>\n <item_2 value=\"curve_linewidth\" type=\"value\"/>\n <item_3 value=\"curve_lineopacity\" type=\"value\"/>\n <item_4 value=\"curve_connectionline\" type=\"value\"/>\n </properties_list>\n </curvebrush>\n <dynabrush>\n <properties_list type=\"array\">\n <item_0 value=\"dyna_diameter\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n <item_2 value=\"dyna_mass\" type=\"value\"/>\n <item_3 value=\"dyna_drag\" type=\"value\"/>\n </properties_list>\n </dynabrush>\n <particlebrush>\n <properties_list type=\"array\">\n <item_0 value=\"opacity\" type=\"value\"/>\n <item_1 value=\"particle_particles\" type=\"value\"/>\n <item_2 value=\"particle_opecityweight\" type=\"value\"/>\n <item_3 value=\"particle_iterations\" type=\"value\"/>\n </properties_list>\n </particlebrush>\n <duplicate>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n <item_2 value=\"clone_healing\" type=\"value\"/>\n <item_3 value=\"clone_movesource\" type=\"value\"/>\n </properties_list>\n </duplicate>\n <deformbrush>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n <item_2 value=\"deform_amount\" type=\"value\"/>\n <item_3 value=\"deform_mode\" type=\"value\"/>\n </properties_list>\n </deformbrush>\n <tangentnormal>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n </properties_list>\n </tangentnormal>\n <filter>\n <properties_list type=\"array\">\n <item_0 value=\"size\" type=\"value\"/>\n <item_1 value=\"opacity\" type=\"value\"/>\n </properties_list>\n </filter>\n <roundmarker>\n <properties_list type=\"array\">\n <item_0 value=\"opacity\" type=\"value\"/>\n <item_1 value=\"size\" type=\"value\"/>\n </properties_list>\n </roundmarker>\n</hud_properties>\n";
2719 return defaultValue ? defaultDoc :
m_cfg.readEntry(
"brushHudSettings", defaultDoc);
2729 return defaultValue ? true :
m_cfg.readEntry(
"calculateAnimationCacheInBackground",
true);
2734 m_cfg.writeEntry(
"calculateAnimationCacheInBackground",
value);
2739 static const QColor defaultColor = QColor(176, 176, 176, 255);
2740 return defaultValue ? defaultColor :
m_cfg.readEntry(
"defaultAssistantsColor", defaultColor);
2745 m_cfg.writeEntry(
"defaultAssistantsColor", color);
2750 return defaultValue ? false :
m_cfg.readEntry(
"autoSmoothBezierCurves",
false);
2755 m_cfg.writeEntry(
"autoSmoothBezierCurves",
value);
2760 return defaultValue ? false :
m_cfg.readEntry(
"activateTransformToolAfterPaste",
false);
2765 m_cfg.writeEntry(
"activateTransformToolAfterPaste",
value);
2770 return defaultValue ? false :
m_cfg.readEntry(
"zoomHorizontal",
false);
2780 return defaultValue ? true :
m_cfg.readEntry(
"selectionActionBar",
true);
2785 m_cfg.writeEntry(
"selectionActionBar",
value);
2790 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
2791 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
2798 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
2799 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
2806 QString textValue =
"bt709-g22";
2808 if (!defaultValue) {
2809 textValue = displayrc->value(
"rootSurfaceFormat", textValue).toString();
2812 return textValue ==
"bt709-g10" ?
BT709_G10 :
2819 const QString textValue =
2824 displayrc->setValue(
"rootSurfaceFormat", textValue);
2829 return defaultValue ? false :
m_cfg.readEntry(
"UseZip64",
false);
2839 return defaultValue ? true :
m_cfg.readEntry(
"convertLayerColorSpaceInProperties",
true);
2844 m_cfg.writeEntry(
"convertLayerColorSpaceInProperties",
value);
2849 return defaultValue ? true :
m_cfg.readEntry(
"renamePastedLayers",
true);
2854 m_cfg.writeEntry(
"renamePastedLayers",
value);
2864 m_cfg.writeEntry(
"layerInfoTextStyle", (
int)
value);
2869 return defaultValue ? 55 :
m_cfg.readEntry(
"layerInfoTextOpacity", 55);
2874 m_cfg.writeEntry(
"layerInfoTextOpacity",
value);
2879 return defaultValue ? false :
m_cfg.readEntry(
"useInlineLayerInfoText",
false);
2884 m_cfg.writeEntry(
"useInlineLayerInfoText",
value);
2889 return defaultValue ? false :
m_cfg.readEntry(
"useLayerSelectionCheckbox",
true);
2894 m_cfg.writeEntry(
"useLayerSelectionCheckbox",
value);
2909 m_cfg.writeEntry(
"assistantsDrawMode",
static_cast<int>(
value));
2915 bool defaultEnabled =
true;
2917 bool defaultEnabled =
false;
2920 return defaultEnabled;
2922 return m_cfg.readEntry(
"longPressEnabled", defaultEnabled);
2934 return defaultValue ? 40 :
m_cfg.readEntry(
"layerThumbnailGenerationTimeout", 40);
2939 m_cfg.writeEntry(
"layerThumbnailGenerationTimeout",
value);
2942#include <QDomDocument>
2943#include <QDomElement>
2947 QDomDocument doc = QDomDocument(name);
2948 QDomElement el = doc.createElement(name);
2949 doc.appendChild(el);
2950 color.
toXML(doc, el);
2951 m_cfg.writeEntry(name, doc.toString());
2961 if (!
m_cfg.readEntry(name).isNull()) {
2962 doc.setContent(
m_cfg.readEntry(name));
2963 QDomElement e = doc.documentElement().firstChild().toElement();
2967 QString blackColor =
"<!DOCTYPE Color>\n<Color>\n <RGB r=\"0\" space=\"sRGB-elle-V2-srgbtrc.icc\" b=\"0\" g=\"0\"/>\n</Color>\n";
2968 doc.setContent(blackColor);
2969 QDomElement e = doc.documentElement().firstChild().toElement();
2977 QDomDocument doc = QDomDocument(name);
2978 QDomElement colorsElement = doc.createElement(
"colors");
2979 doc.appendChild(colorsElement);
2982 Q_FOREACH(
const KoColor & color, colors) {
2983 color.
toXML(doc, colorsElement);
2985 m_cfg.writeEntry(name, doc.toString());
2991 QString colorListXML =
m_cfg.readEntry(name);
2993 if (!colorListXML.isNull()) {
2995 doc.setContent(colorListXML);
2996 QDomElement colorsElement = doc.firstChildElement();
2997 if (!colorsElement.isNull()) {
2998 QDomNodeList colorNodes = colorsElement.childNodes();
2999 colors.reserve(colorNodes.size());
3001 for (
int k = 0; k < colorNodes.size(); k++) {
3002 QDomElement colorElement = colorNodes.at(k).toElement();
3004 colors.push_back(color);
3014 QDebugStateSaver saver(debug);
3015 debug.nospace() <<
"CanvasSurfaceMode(";
3019 debug.nospace() <<
"Preferred";
3022 debug.nospace() <<
"Rec709g22";
3025 debug.nospace() <<
"Rec709g10";
3028 debug.nospace() <<
"Rec2020pq";
3031 debug.nospace() <<
"Unmanaged";
3034 debug.nospace() <<
"unknown(" <<
static_cast<int>(mode) <<
")";
3038 debug.nospace() <<
")";
3040 return debug.space();
3046 QDebugStateSaver saver(debug);
3047 debug.nospace() <<
"CanvasSurfaceBitDepthMode(";
3051 debug.nospace() <<
"DepthAuto";
3054 debug.nospace() <<
"Depth8Bit";
3057 debug.nospace() <<
"Depth10Bit";
3060 debug.nospace() <<
"unknown(" <<
static_cast<int>(mode) <<
")";
3064 debug.nospace() <<
")";
3066 return debug.space();
qreal length(const QPointF &vec)
float value(const T *src, size_t ch)
QList< QString > QStringList
const KoID Integer8BitsColorDepthID("U8", ki18n("8-bit integer/channel"))
const KoID Integer16BitsColorDepthID("U16", ki18n("16-bit integer/channel"))
const KoID RGBAColorModelID("RGBA", ki18n("RGB/Alpha"))
const quint8 OPACITY_OPAQUE_U8
QByteArray displayProfile(const QString &device, int profile=0) const
Return the icc profile for the given device and index (if a device has more than one profile)
static KisColorManager * instance()
void notifyLongPressChanged(bool enabled)
static KisConfigNotifier * instance()
void notifyDropFramesModeChanged()
void notifyTouchPaintingChanged()
void notifyColorSamplerPreviewStyleChanged()
void notifyConfigChanged(void)
QString widgetStyle(bool defaultValue=false)
void setCumulativeUndoData(KisCumulativeUndoData value)
qreal lineSmoothingDistanceMin(bool defaultValue=false) const
bool testingAcceptCompressedTabletEvents(bool defaultValue=false) const
void setForceShowSaveMessages(bool value) const
QString importConfiguration(const QString &filterId, bool defaultValue=false) const
void setPreferredVectorImportResolutionPPI(int value) const
bool backupFile(bool defaultValue=false) const
void setAntialiasCurves(bool v) const
bool useOcio(bool defaultValue=false) const
void setSwitchSelectionCtrlAlt(bool value)
qint32 defImageHeight(bool defaultValue=false) const
bool antialiasSelectionOutline(bool defaultValue=false) const
void setZoomSteps(int steps)
@ ASSISTANTS_DRAW_MODE_DIRECT
int zoomSteps(bool defaultValue=false) const
qreal lineSmoothingTailAggressiveness(bool defaultValue=false) const
OcioColorManagementMode ocioColorManagementMode(bool defaultValue=false) const
void setHideDockersFullscreen(const bool value) const
void setUseEraserBrushOpacity(bool value)
LayerInfoTextStyle layerInfoTextStyle(bool defaultValue=false) const
static CanvasSurfaceBitDepthMode canvasSurfaceBitDepthMode(QSettings *settings, bool defaultValue=false)
void setCurrentInputProfile(const QString &name)
int preferredVectorImportResolutionPPI(bool defaultValue=false) const
void setAdaptivePlaybackRange(bool value)
void setEnableCanvasSurfaceColorSpaceManagement(bool value)
void setLineSmoothingTailAggressiveness(qreal value)
void loadSnapConfig(KisSnapConfig *config, bool defaultValue=false) const
bool colorSamplerPreviewCircleOutlineEnabled(bool defaultValue=false) const
void setPasteFormat(qint32 format)
QColor checkersColor2(bool defaultValue=false) const
void setColorSamplerPreviewCircleOutlineEnabled(bool enabled)
void setGridSubdivisionColor(const QColor &v) const
void setUseRightMiddleTabletButtonWorkaround(bool value)
int lineSmoothingType(bool defaultValue=false) const
void setCheckersColor1(const QColor &v) const
QString toolbarSlider(int sliderNumber, bool defaultValue=false) const
int stabilizerSampleSize(bool defaultValue=false) const
quint32 guidesLineStyle(bool defaultValue=false) const
void setHidePopups(bool hidePopups)
void setFullscreenMode(const bool value) const
void setLineSmoothingUseDelayDistance(bool value)
void setMDIBackgroundColor(const QString &v) const
QString pressureTabletCurve(bool defaultValue=false) const
void setUndoStackLimit(int limit) const
qint32 defImageWidth(bool defaultValue=false) const
bool showGlobalSelection(bool defaultValue=false) const
bool hideScrollbars(bool defaultValue=false) const
int verticalSplitLines(bool defaultValue=false) const
int openGLFilteringMode(bool defaultValue=false) const
void setUseZip64(bool value)
bool showSingleChannelAsColor(bool defaultValue=false) const
void setWidgetStyle(QString name)
void setHideToolbarFullscreen(const bool value) const
void setCanvasState(const QString &state) const
void setLineSmoothingDistanceKeepAspectRatio(bool value)
int kineticScrollingSensitivity(bool defaultValue=false) const
bool convertToImageColorspaceOnImport(bool defaultValue=false) const
QString exportConfigurationXML(const QString &filterId, bool defaultValue=false) const
int zoomMarginSize(bool defaultValue=false) const
void setFFMpegLocation(const QString &value)
void setAutoZoomTimelineToPlaybackRange(bool value)
bool showRootLayer(bool defaultValue=false) const
void setTestingAcceptCompressedTabletEvents(bool value)
qint32 pasteFormat(bool defaultValue) const
void setEnableBrushSpeedLogging(bool value) const
void setShowDockers(const bool value) const
void setExportMimeType(const QString &defaultExportMimeType)
bool forceShowSaveMessages(bool defaultValue=true) const
bool useInlineLayerInfoText(bool defaultValue=false) const
void setUseWin8PointerInput(bool value)
QPoint getDefaultGridSpacing(bool defaultValue=false) const
void setShowBrushHud(bool value)
void enablePixelGrid(bool v) const
void setShowStatusBar(const bool value) const
bool useDirtyPresets(bool defaultValue=false) const
void setOcioLutEdgeSize(int value)
void setDefaultPalette(const QString &name) const
qreal getPixelGridDrawingThreshold(bool defaultValue=false) const
bool switchSelectionCtrlAlt(bool defaultValue=false) const
void setRenamePastedLayers(bool value)
bool shouldEatDriverShortcuts(bool defaultValue=false) const
BackgroundStyle defaultBackgroundStyle(bool defaultValue=false) const
QColor checkersColor1(bool defaultValue=false) const
void setHideScrollbars(bool value) const
void writeKoColors(const QString &name, const QList< KoColor > &colors) const
bool allowLCMSOptimization(bool defaultValue=false) const
KisConfig(bool readOnly)
KisConfig create a kisconfig object.
int animationPlaybackBackend(bool defaultValue=false) const
void setShowPaletteBottomBar(bool value)
CanvasSurfaceBitDepthMode effectiveCanvasSurfaceBitDepthMode(const QSurfaceFormat &format) const
static void setCanvasSurfaceBitDepthMode(QSettings *settings, CanvasSurfaceBitDepthMode value)
int numMipmapLevels(bool defaultValue=false) const
void setIgnoreHighFunctionKeys(bool value)
const KoColorSpace * customColorSelectorColorSpace(bool defaultValue=false) const
bool showFilterGalleryLayerMaskDialog(bool defaultValue=false) const
bool activateTransformToolAfterPaste(bool defaultValue=false) const
void setNewCursorStyle(CursorStyle style)
bool hideDockersFullscreen(bool defaultValue=false) const
static void setUseWin8PointerInputNoApp(QSettings *settings, bool value)
void setUseInlineLayerInfoText(bool value)
void disableOpenGL() const
void setGridSubdivisionStyle(quint32 v) const
void setEraserCursorStyle(CursorStyle style)
bool compressKra(bool defaultValue=false) const
void setTrackTabletEventLatency(bool value)
static bool preferXcbEglProvider(const QSettings *settings, bool defaultValue=false)
int textureOverlapBorder() const
bool disableVectorOptimizations(bool defaultValue=false) const
void setCursorMainColor(const QColor &v) const
void setColorSamplerPreviewCircleThickness(qreal thickness)
void setCanvasSurfaceColorSpaceManagementMode(CanvasSurfaceMode value)
void setUndoEnabled(bool undo) const
bool levelOfDetailEnabled(bool defaultValue=false) const
void setCumulativeUndoRedo(bool value)
void setConvertToImageColorspaceOnImport(bool value)
void setPixelGridColor(const QColor &v) const
void setToolOptionsInDocker(bool inDocker)
void setForceAlwaysFullSizedOutline(bool value) const
void setLongPressEnabled(bool value)
SessionOnStartup sessionOnStartup(bool defaultValue=false) const
bool lineSmoothingScalableDistance(bool defaultValue=false) const
bool forceOpenGLFenceWorkaround(bool defaultValue=false) const
void setForcePaletteColors(bool forcePaletteColors)
void setHideTitlebarFullscreen(const bool value) const
void setScrubbingAudioUpdatesDelay(int value)
int layerThumbnailSize(bool defaultValue=false) const
bool enableOpenGLFramerateLogging(bool defaultValue=false) const
QColor getPixelGridColor(bool defaultValue=false) const
void setGridIsoVerticalStyle(quint32 v) const
qreal vastScrolling(bool defaultValue=false) const
void setSelectionViewSizeMinimum(qreal outlineSizeMinimum) const
bool fullscreenMode(bool defaultValue=false) const
bool useDefaultColorSpace(bool defaultvalue=false) const
bool toolOptionsPopupDetached(bool defaultValue=false) const
bool autoSmoothBezierCurves(bool defaultValue=false) const
bool pixelGridEnabled(bool defaultValue=false) const
void setRulersTrackMouse(bool value) const
QColor defaultAssistantsColor(bool defaultValue=false) const
bool hideMenuFullscreen(bool defaultValue=false) const
QString getMDIBackgroundColor(bool defaultValue=false) const
void setMonitorProfile(int screen, const QString &monitorProfile, bool override) const
bool showPaletteBottomBar(bool defaultValue=false) const
bool lineSmoothingFinishStabilizedCurve(bool defaultValue=false) const
void setLineSmoothingFinishStabilizedCurve(bool value)
void setUseDefaultColorSpace(bool value) const
void setDefaultColorDepth(const QString &depth) const
bool hideScrollbarsFullscreen(bool defaultValue=false) const
QString printerProfile(bool defaultValue=false) const
void setStabilizerDelayedPaint(bool value)
TouchPainting touchPainting(bool defaultValue=false) const
void setSeparateEraserCursor(bool value) const
qint32 monitorRenderIntent(bool defaultValue=false) const
bool showFilterGallery(bool defaultValue=false) const
void setActivateTransformToolAfterPaste(bool value)
void setShowFilterGallery(bool showFilterGallery) const
int kineticScrollingGesture(bool defaultValue=false) const
bool useZip64(bool defaultValue=false) const
bool calculateAnimationCacheInBackground(bool defaultValue=false) const
void setLineSmoothingDistanceMin(qreal value)
int favoritePresets(bool defaultValue=false) const
bool zoomHorizontal(bool defaultValue=false) const
QString getMDIBackgroundImage(bool defaultValue=false) const
KisPropertiesConfigurationSP exportConfiguration(const QString &filterId, bool defaultValue=false) const
void setAssistantsDrawMode(AssistantsDrawMode value)
void setShowGlobalSelection(bool showGlobalSelection) const
quint32 getGridMainStyle(bool defaultValue=false) const
void setScrubbingUpdatesDelay(int value)
CanvasSurfaceMode canvasSurfaceColorSpaceManagementMode(bool defaultValue=false) const
bool hideToolbarFullscreen(bool defaultValue=false) const
void setScratchpadVisible(bool visible)
qreal outlineSizeMinimum(bool defaultValue=false) const
bool showCanvasMessages(bool defaultValue=false) const
void setNumDefaultLayers(int num)
QList< KoColor > readKoColors(const QString &name) const
QColor getGridMainColor(bool defaultValue=false) const
void setUseSystemMonitorProfile(bool _useSystemMonitorProfile) const
bool hideDevFundBanner(bool defaultValue=false) const
void setAnimationDropFrames(bool value)
int openGLTextureSize(bool defaultValue=false) const
qreal timelineZoom(bool defaultValue=false) const
void setDefaultGridSpacing(QPoint gridSpacing)
bool useWin8PointerInput(bool defaultValue=false) const
void setPrinterColorSpace(const QString &printerColorSpace) const
bool useOpenGLTextureBuffer(bool defaultValue=false) const
void setToolOptionsPopupDetached(bool detached) const
void setLineSmoothingDelayDistance(qreal value)
OutlineStyle lastUsedOutlineStyle(bool defaultValue=false) const
void setCalculateAnimationCacheInBackground(bool value)
void setGridMainStyle(quint32 v) const
void setColorSamplerPreviewCircleExtraCirclesEnabled(bool enabled)
void setAutoSaveInterval(int seconds) const
void setShowSingleChannelAsColor(bool asColor)
void setTrimFramesImport(bool trim)
bool forcePaletteColors(bool defaultValue=false) const
void setClicklessSpacePan(const bool toggle) const
bool convertLayerColorSpaceInProperties(bool defaultValue=false) const
bool showDockerTitleBars(bool defaultValue=false) const
qreal defImageResolution(bool defaultValue=false) const
void setTimelineZoom(qreal value)
void setAllowLCMSOptimization(bool allowLCMSOptimization)
void setPrinterProfile(const QString &printerProfile) const
void setUseLayerSelectionCheckbox(bool value)
void setVerticalSplitLines(const int numberLines) const
KisOcioConfiguration ocioConfiguration(bool defaultValue=false) const
void setColorSamplerPreviewCircleDiameter(int style)
void setSliderLabels(bool enabled)
void setRenderIntent(qint32 monitorRenderIntent) const
void setBrushHudSetting(const QString &value) const
void setFavoritePresets(const int value)
void setEraserOutlineStyle(OutlineStyle style)
void setShowOutlineWhilePainting(bool showOutlineWhilePainting) const
bool lineSmoothingDistanceKeepAspectRatio(bool defaultValue=false) const
RootSurfaceFormat rootSurfaceFormat(bool defaultValue=false) const
QColor canvasBorderColor(bool defaultValue=false) const
void setPresetStripVisible(bool visible)
int colorSamplerPreviewCircleDiameter(bool defaultValue=false) const
int tabletEventsDelay(bool defaultValue=false) const
QString exportMimeType(bool defaultValue) const
void setScrollingCheckers(bool scrollCheckers) const
const QString getScreenStringIdentfier(int screenNo) const
bool firstRun(bool defaultValue=false) const
void setBackupFile(bool backupFile) const
void setTabletEventsDelay(int value)
KoColor readKoColor(const QString &name, const KoColor &color=KoColor()) const
void logImportantSettings() const
Log the most interesting settings to the usage log.
QString ffmpegLocation(bool defaultValue=false) const
void setImportConfiguration(const QString &filterId, KisPropertiesConfigurationSP properties) const
bool useLayerSelectionCheckbox(bool defaultValue=false) const
QColor guidesColor(bool defaultValue=false) const
CursorStyle newCursorStyle(bool defaultValue=false) const
bool useCumulativeUndoRedo(bool defaultValue=false) const
void setCheckSize(qint32 checkSize) const
void setLevelOfDetailEnabled(bool value)
bool paintopPopupDetached(bool defaultValue=false) const
void setToolbarSlider(int sliderNumber, const QString &slider)
CursorStyle eraserCursorStyle(bool defaultValue=false) const
void setKineticScrollingGesture(int kineticScroll)
QString defColorProfile(bool defaultValue=false) const
void setLineSmoothingSmoothPressure(bool value)
void setPreferXcbEglProvider(bool value)
void setPixelGridDrawingThreshold(qreal v) const
void setStabilizerSampleSize(int value)
void setMonitorForScreen(int screen, const QString &monitor)
QString currentInputProfile(bool defaultValue=false) const
void setCanvasBorderColor(const QColor &color) const
QString monitorProfile(int screen) const
get the profile the user has selected for the given screen
void setDefaultBackgroundOpacity(quint8 value)
void setGridIsoVerticalColor(const QColor &v) const
void setVastScrolling(const qreal factor) const
@ TOUCH_PAINTING_DISABLED
void setShowCanvasMessages(bool show)
void setDefaultAssistantsColor(const QColor &color) const
qint32 checkSize(bool defaultValue=false) const
void setConvertLayerColorSpaceInProperties(bool value)
void setWorkingColorSpace(const QString &workingColorSpace) const
KisCumulativeUndoData cumulativeUndoData(bool defaultValue=false) const
bool scratchpadVisible(bool defaultValue=false) const
OutlineStyle newOutlineStyle(bool defaultValue=false) const
int layerThumbnailGenerationTimeout(bool defaultValue=false) const
bool forceAlwaysFullSizedOutline(bool defaultValue=false) const
void setCustomColorSelectorColorSpace(const KoColorSpace *cs)
void setLineSmoothingType(int value)
void setPressureTabletCurve(const QString &curveString) const
qreal colorSamplerPreviewCircleThickness(bool defaultValue=false) const
bool clicklessSpacePan(bool defaultValue=false) const
QString workingColorSpace(bool defaultValue=false) const
void setEnableOpenGLFramerateLogging(bool value) const
bool trackTabletEventLatency(bool defaultValue=false) const
bool renamePastedLayers(bool defaultValue=false) const
int horizontalSplitLines(bool defaultValue=false) const
void setShowDockerTitleBars(const bool value) const
void setFirstRun(const bool firstRun) const
void setNewOutlineStyle(OutlineStyle style)
void setCheckersColor2(const QColor &v) const
void setShowRootLayer(bool showRootLayer) const
void setAutoSmoothBezierCurves(bool value)
OutlineStyle eraserOutlineStyle(bool defaultValue=false) const
void saveSnapConfig(const KisSnapConfig &config)
void setScrollbarZoomEnabled(bool enabled) const
int presetChooserViewMode(bool defaultValue=false) const
void setUseBlackPointCompensation(bool useBlackPointCompensation) const
bool kineticScrollingEnabled(bool defaultValue=false) const
bool animationDropFrames(bool defaultValue=false) const
void setLineSmoothingStabilizeSensors(bool value)
QColor defaultBackgroundColor(bool defaultValue=false) const
bool disableTouchOnCanvas() const
int ocioLutEdgeSize(bool defaultValue=false) const
void setAudioOffsetTolerance(int value)
void setUseOpenGLTextureBuffer(bool useBuffer)
void setTrimKra(bool trim)
void setOcioConfiguration(const KisOcioConfiguration &cfg)
void setPresetIconSize(const int value) const
bool hideTitlebarFullscreen(bool defaultValue=false) const
QString defaultPalette(bool defaultValue=false) const
bool useRightMiddleTabletButtonWorkaround(bool defaultValue=false) const
void setDefaultBackgroundStyle(BackgroundStyle value)
bool longPressEnabled(bool defaultValue=false) const
QStringList favoriteCompositeOps(bool defaultValue=false) const
bool useEraserBrushOpacity(bool defaultValue=false) const
void setColorSamplerPreviewStyle(ColorSamplerPreviewStyle style)
bool sliderLabels(bool defaultValue=false) const
bool hidePopups(bool defaultValue=false) const
bool enableCanvasSurfaceColorSpaceManagement(bool defaultValue=false) const
void setGuidesLineStyle(quint32 v) const
QString printerColorSpace(bool defaultValue=false) const
bool showBrushHud(bool defaultValue=false) const
void setRootSurfaceFormat(RootSurfaceFormat value)
bool autoPinLayersToTimeline(bool defaultValue=false) const
bool scrollbarZoomEnabled(bool defaultValue=false) const
bool toolOptionsInDocker(bool defaultValue=false) const
void setPresetChooserViewMode(const int mode) const
void setOpenGLFilteringMode(int filteringMode)
void setKineticScrollingHideScrollbars(bool scrollbar)
void setAntialiasSelectionOutline(bool v) const
bool trimKra(bool defaultValue=false) const
static bool useWin8PointerInputNoApp(QSettings *settings, bool defaultValue=false)
bool forceShowAutosaveMessages(bool defaultValue=true) const
int layerTreeIndentation(bool defaultValue=false) const
void setFavoriteCompositeOps(const QStringList &compositeOps) const
void setOcioColorManagementMode(OcioColorManagementMode mode) const
bool enableBrushSpeedLogging(bool defaultValue=false) const
bool forceAlwaysFullSizedEraserOutline(bool defaultValue=false) const
int autoSaveInterval(bool defaultValue=false) const
int workaroundX11SmoothPressureSteps(bool defaultValue=false) const
QString defColorModel(bool defaultValue=false) const
void setPaintopPopupDetached(bool detached) const
void setDisableVectorOptimizations(bool value)
void setHideStatusbarFullscreen(const bool value) const
void setCompressKra(bool compress)
void setTouchPainting(TouchPainting value) const
int audioOffsetTolerance(bool defaultValue=false) const
bool showOutlineWhilePainting(bool defaultValue=false) const
qreal lineSmoothingDelayDistance(bool defaultValue=false) const
void setUseEraserBrushSize(bool value)
quint32 getGridIsoVerticalStyle(bool defaultValue=false) const
void setShowEraserOutlineWhilePainting(bool showEraserOutlineWhilePainting) const
bool lineSmoothingSmoothPressure(bool defaultValue=false) const
QString canvasState(bool defaultValue=false) const
void setHideMenuFullscreen(const bool value) const
int scrubbingUpdatesDelay(bool defaultValue=false) const
bool useSystemMonitorProfile(bool defaultValue=false) const
bool autoZoomTimelineToPlaybackRange(bool defaultValue=false) const
bool scrollCheckers(bool defaultValue=false) const
void setForceShowAutosaveMessages(bool ShowAutosaveMessages) const
QColor getGridIsoVerticalColor(bool defaultValue=false) const
bool colorHistoryPerDocument(bool defaultValue=false) const
bool stabilizerDelayedPaint(bool defaultValue=false) const
void setOutlineSizeMinimum(qreal outlineSizeMinimum) const
CanvasSurfaceBitDepthMode
bool useEraserBrushSize(bool defaultValue=false) const
void setLayerThumbnailSize(int size)
void setZoomMarginSize(int zoomMarginSize)
void setShowRulers(bool rulers) const
void setLayerInfoTextOpacity(int value)
bool hideStatusbarFullscreen(bool defaultValue=false) const
void setGridMainColor(const QColor &v) const
qreal lineSmoothingDistanceMax(bool defaultValue=false) const
static const KoColorProfile * getScreenProfile(int screen)
get the profile the color management system has stored for the given screen
bool presetStripVisible(bool defaultValue=false) const
bool lineSmoothingUseDelayDistance(bool defaultValue=false) const
bool colorSamplerPreviewCircleExtraCirclesEnabled(bool defaultValue=false) const
void setZoomHorizontal(bool value)
void setLineSmoothingScalableDistance(bool value)
void setHideDevFundBanner(bool value=true)
bool kineticScrollingHiddenScrollbars(bool defaultValue=false) const
bool showDockers(bool defaultValue=false) const
void setExportConfiguration(const QString &filterId, KisPropertiesConfigurationSP properties) const
const KoColorProfile * displayProfile(int screen) const
void setLineSmoothingDistanceMax(qreal value)
bool useOpenGL(bool defaultValue=false) const
void setTestingCompressBrushEvents(bool value)
bool trimFramesImport(bool defaultValue=false) const
int presetIconSize(bool defaultValue=false) const
bool testingCompressBrushEvents(bool defaultValue=false) const
void setForceAlwaysFullSizedEraserOutline(bool value) const
bool selectionActionBar(bool defaultValue=false) const
QString defaultColorDepth(bool defaultValue=false) const
void setDefaultBackgroundColor(const QColor &value)
int undoStackLimit(bool defaultValue=false) const
bool useBlackPointCompensation(bool defaultValue=false) const
bool saveSessionOnQuit(bool defaultValue) const
ColorSamplerPreviewStyle colorSamplerPreviewStyle(bool defaultValue=false) const
void setMDIBackgroundImage(const QString &fileName) const
QColor getCursorMainColor(bool defaultValue=false) const
void setLayerThumbnailGenerationTimeout(int value)
void setUseProjections(bool useProj) const
void setSelectionActionBar(bool value)
qint32 pasteBehaviour(bool defaultValue=false) const
AssistantsDrawMode assistantsDrawMode(bool defaultValue=false) const
bool rulersTrackMouse(bool defaultValue=false) const
void setUseDirtyPresets(bool value)
quint32 getGridSubdivisionStyle(bool defaultValue=false) const
bool separateEraserCursor(bool defaultValue=false) const
int numDefaultLayers(bool defaultValue=false) const
void setGuidesColor(const QColor &v) const
void setEraserCursorMainColor(const QColor &v) const
void setSaveSessionOnQuit(bool value)
bool disableAVXOptimizations(bool defaultValue=false) const
bool showEraserOutlineWhilePainting(bool defaultValue=false) const
bool showStatusBar(bool defaultValue=false) const
bool showRulers(bool defaultValue=false) const
void setPasteBehaviour(qint32 behaviour) const
void setLayerInfoTextStyle(LayerInfoTextStyle value)
quint8 defaultBackgroundOpacity(bool defaultValue=false) const
void setSessionOnStartup(SessionOnStartup value)
void setLayerTreeIndentation(int percentage)
int scrubbingAudioUpdatesDelay(bool defaultValue=false) const
void setHideScrollbarsFullscreen(const bool value) const
int layerInfoTextOpacity(bool defaultValue=false) const
QString monitorForScreen(int screen, const QString &defaultMonitor, bool defaultValue=true) const
QColor getGridSubdivisionColor(bool defaultValue=false) const
void setAnimationPlaybackBackend(int value)
void setAutoPinLayersToTimeline(bool value)
QColor getEraserCursorMainColor(bool defaultValue=false) const
void setUseOcio(bool useOCIO) const
void setLastUsedOutlineStyle(OutlineStyle style)
bool lineSmoothingStabilizeSensors(bool defaultValue=false) const
bool antialiasCurves(bool defaultValue=false) const
void setKineticScrollingSensitivity(int sensitivity)
QString brushHudSetting(bool defaultValue=false) const
bool ignoreHighFunctionKeys(bool defaultValue=false) const
bool useProjections(bool defaultValue=false) const
void setDisableAVXOptimizations(bool value)
qreal selectionViewSizeMinimum(bool defaultValue=false) const
bool adaptivePlaybackRange(bool defaultValue=false) const
void writeKoColor(const QString &name, const KoColor &color) const
void setOcioLockColorVisualRepresentation(bool value)
void setShowFilterGalleryLayerMaskDialog(bool showFilterGallery) const
void setHorizontalSplitLines(const int numberLines) const
bool undoEnabled(bool defaultValue=false) const
void setKineticScrollingEnabled(bool enabled)
bool ocioLockColorVisualRepresentation(bool defaultValue=false) const
QString configurationPath
static const QString resourceLocationKey
void setImageCenter(bool value)
void setIntersection(bool value)
void setOrthogonal(bool value)
void setExtension(bool value)
void setToPixel(bool value)
void setBoundingBox(bool value)
bool intersection() const
void setImageBounds(bool value)
static void log(const QString &message)
Logs with date/time.
static void writeSysInfo(const QString &message)
Writes to the system information file and Krita log.
virtual KoID colorModelId() const =0
virtual KoID colorDepthId() const =0
virtual const KoColorProfile * profile() const =0
static KoColor fromXML(const QDomElement &elt, const QString &channelDepthId)
void toXML(QDomDocument &doc, QDomElement &colorElt) const
void fromQColor(const QColor &c)
Convenient function for converting from a QColor.
static bool tabletInputReceived()
#define KIS_SAFE_ASSERT_RECOVER_RETURN(cond)
void cleanOldCursorStyleKeys(KConfigGroup &cfg)
QDebug operator<<(QDebug debug, const KisConfig::CanvasSurfaceMode &mode)
const QString DEFAULT_CURVE_STRING
@ OLD_CURSOR_STYLE_OUTLINE_TRIANGLE_RIGHTHANDED
@ OLD_CURSOR_STYLE_OUTLINE
@ OLD_CURSOR_STYLE_OUTLINE_CENTER_CROSS
@ OLD_CURSOR_STYLE_CROSSHAIR
@ OLD_CURSOR_STYLE_NO_CURSOR
@ OLD_CURSOR_STYLE_TOOLICON
@ OLD_CURSOR_STYLE_TRIANGLE_LEFTHANDED
@ OLD_CURSOR_STYLE_POINTER
@ OLD_CURSOR_STYLE_OUTLINE_CENTER_DOT
@ OLD_CURSOR_STYLE_OUTLINE_TRIANGLE_LEFTHANDED
@ OLD_CURSOR_STYLE_TRIANGLE_RIGHTHANDED
@ OLD_CURSOR_STYLE_SMALL_ROUND
#define INTENT_PERCEPTUAL
@ CURSOR_STYLE_SMALL_ROUND
@ CURSOR_STYLE_TRIANGLE_RIGHTHANDED
@ CURSOR_STYLE_TRIANGLE_LEFTHANDED
bool looksLikeXiaomiDevice()
static const KisCumulativeUndoData defaultValue
bool read(const KConfigGroup *config)
void write(KConfigGroup *config) const
virtual bool isSuitableForDisplay() const =0
const KoColorProfile * profileByName(const QString &name) const
const KoColorSpace * colorSpace(const QString &colorModelId, const QString &colorDepthId, const KoColorProfile *profile)
static KoColorSpaceRegistry * instance()
const KoColorProfile * createColorProfile(const QString &colorModelId, const QString &colorDepthId, const QByteArray &rawData)