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 ? 256 :
m_cfg.readEntry(
"textureSize", 256));
1123 return (defaultValue ?
false :
m_cfg.readEntry(
"forceOpenGLFenceWorkaround",
false));
1128 return (defaultValue ? 4 :
m_cfg.readEntry(
"numMipmapLevels", 4));
1138 int v =
m_cfg.readEntry(
"gridmainstyle", 0);
1139 v = qBound(0,
v, 2);
1140 return (defaultValue ? 0 :
v);
1145 m_cfg.writeEntry(
"gridmainstyle",
v);
1150 quint32
v =
m_cfg.readEntry(
"gridsubdivisionstyle", 1);
1152 return (defaultValue ? 1 :
v);
1157 m_cfg.writeEntry(
"gridsubdivisionstyle",
v);
1162 int v =
m_cfg.readEntry(
"gridisoverticalstyle", 0);
1163 v = qBound(0,
v, 3);
1164 return (defaultValue ? 0 :
v);
1169 m_cfg.writeEntry(
"gridisoverticalstyle",
v);
1174 QColor col(99, 99, 99);
1175 return (defaultValue ? col :
m_cfg.readEntry(
"gridmaincolor", col));
1180 m_cfg.writeEntry(
"gridmaincolor",
v);
1185 QColor col(150, 150, 150);
1186 return (defaultValue ? col :
m_cfg.readEntry(
"gridsubdivisioncolor", col));
1191 m_cfg.writeEntry(
"gridsubdivisioncolor",
v);
1196 QColor col(150, 150, 150);
1197 return (defaultValue ? col :
m_cfg.readEntry(
"gridisoverticalcolor", col));
1202 m_cfg.writeEntry(
"gridisoverticalcolor",
v);
1207 QColor col(255, 255, 255);
1208 return (defaultValue ? col :
m_cfg.readEntry(
"pixelGridColor", col));
1213 m_cfg.writeEntry(
"pixelGridColor",
v);
1218 qreal border = 24.0f;
1219 return (defaultValue ? border :
m_cfg.readEntry(
"pixelGridDrawingThreshold", border));
1224 m_cfg.writeEntry(
"pixelGridDrawingThreshold",
v);
1229 bool enabled =
true;
1230 return (defaultValue ? enabled :
m_cfg.readEntry(
"pixelGridEnabled", enabled));
1235 m_cfg.writeEntry(
"pixelGridEnabled",
v);
1240 int v =
m_cfg.readEntry(
"guidesLineStyle", 0);
1241 v = qBound(0,
v, 2);
1242 return (defaultValue ? 0 :
v);
1247 m_cfg.writeEntry(
"guidesLineStyle",
v);
1252 QColor col(99, 99, 99);
1253 return (defaultValue ? col :
m_cfg.readEntry(
"guidesColor", col));
1258 m_cfg.writeEntry(
"guidesColor",
v);
1266 *config = defaultConfig;
1283 m_cfg.writeEntry(
"globalSnapNode", config.
node());
1289 m_cfg.writeEntry(
"globalSnapToPixel", config.
toPixel());
1294 qint32 size = (defaultValue ? 32 :
m_cfg.readEntry(
"checksize", 32));
1295 if (size == 0) size = 32;
1301 if (checksize == 0) {
1304 m_cfg.writeEntry(
"checksize", checksize);
1309 return (defaultValue ?
false :
m_cfg.readEntry(
"scrollingcheckers",
false));
1314 m_cfg.writeEntry(
"scrollingcheckers", sc);
1319 QColor color(QColor(128,128,128));
1320 return (defaultValue ? color :
m_cfg.readEntry(
"canvasBorderColor", color));
1325 m_cfg.writeEntry(
"canvasBorderColor", color);
1330 return (defaultValue ?
false :
m_cfg.readEntry(
"hideScrollbars",
false));
1340 return (defaultValue ?
true :
m_cfg.readEntry(
"scrollbarZoomEnabled",
true));
1345 m_cfg.writeEntry(
"scrollbarZoomEnabled", enabled);
1350 QColor col(220, 220, 220);
1351 return (defaultValue ? col :
m_cfg.readEntry(
"checkerscolor", col));
1356 m_cfg.writeEntry(
"checkerscolor",
v);
1361 return (defaultValue ? QColor(Qt::white) :
m_cfg.readEntry(
"checkerscolor2", QColor(Qt::white)));
1366 m_cfg.writeEntry(
"checkerscolor2",
v);
1371 return (defaultValue ?
true :
m_cfg.readEntry(
"antialiascurves",
true));
1376 m_cfg.writeEntry(
"antialiascurves",
v);
1381 return (defaultValue ?
false :
m_cfg.readEntry(
"AntialiasSelectionOutline",
false));
1386 m_cfg.writeEntry(
"AntialiasSelectionOutline",
v);
1391 return (defaultValue ?
false :
m_cfg.readEntry(
"ShowRootLayer",
false));
1401 return (defaultValue ?
false :
m_cfg.readEntry(
"ShowGlobalSelection",
false));
1413 return (defaultValue ?
true :
m_cfg.readEntry(
"ShowOutlineWhilePainting",
true));
1423 return (defaultValue ?
false :
m_cfg.readEntry(
"forceAlwaysFullSizedOutline",
false));
1428 m_cfg.writeEntry(
"forceAlwaysFullSizedOutline",
value);
1435 return (defaultValue ?
true :
m_cfg.readEntry(
"ShowEraserOutlineWhilePainting",
true));
1445 return (defaultValue ?
false :
m_cfg.readEntry(
"forceAlwaysFullSizedEraserOutline",
false));
1450 m_cfg.writeEntry(
"forceAlwaysFullSizedEraserOutline",
value);
1460 m_cfg.writeEntry(
"sessionOnStartup", (
int)
value);
1465 return defaultValue ? false :
m_cfg.readEntry(
"saveSessionOnQuit",
false);
1469 m_cfg.writeEntry(
"saveSessionOnQuit",
value);
1474 return defaultValue ? false :
m_cfg.readEntry(
"hideDevFundBanner",
false);
1479 m_cfg.writeEntry(
"hideDevFundBanner",
value);
1484 return (defaultValue ? 1.0 :
m_cfg.readEntry(
"OutlineSizeMinimum", 1.0));
1494 return (defaultValue ? 5.0 :
m_cfg.readEntry(
"SelectionViewSizeMinimum", 5.0));
1505 return (defaultValue ? def :
m_cfg.readEntry(
"AutoSaveInterval", def));
1510 return m_cfg.writeEntry(
"AutoSaveInterval", seconds);
1515 return (defaultValue ?
true :
m_cfg.readEntry(
"CreateBackupFile",
true));
1525 return (defaultValue ?
false :
m_cfg.readEntry(
"showFilterGallery",
false));
1535 return (defaultValue ?
true :
m_cfg.readEntry(
"showFilterGalleryLayerMaskDialog",
true));
1545 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1546 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1547 return (defaultValue ?
"OPENGL_NOT_TRIED" : kritarc.value(
"canvasState",
"OPENGL_NOT_TRIED").toString());
1553 if (acceptableStates.isEmpty()) {
1554 acceptableStates <<
"OPENGL_SUCCESS" <<
"TRY_OPENGL" <<
"OPENGL_NOT_TRIED" <<
"OPENGL_FAILED";
1556 if (acceptableStates.contains(state)) {
1557 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1558 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1559 kritarc.setValue(
"canvasState", state);
1565 return (defaultValue ?
false :
m_cfg.readEntry(
"ToolOptionsPopupDetached",
false));
1570 m_cfg.writeEntry(
"ToolOptionsPopupDetached", detached);
1576 return (defaultValue ?
true :
m_cfg.readEntry(
"PaintopPopupDetached",
true));
1581 m_cfg.writeEntry(
"PaintopPopupDetached", detached);
1595 fallback = QStringLiteral(
"0,0;0.7,1;");
1598 return (defaultValue ? fallback :
m_cfg.readEntry(
"tabletPressureCurve", fallback));
1603 m_cfg.writeEntry(
"tabletPressureCurve", curveString);
1609 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1610 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1614 Q_UNUSED(defaultValue);
1626 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1627 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1638 return defaultValue ? false : settings->value(
"useWin8PointerInput",
false).toBool();
1643 settings->setValue(
"useWin8PointerInput",
value);
1648 return (defaultValue ?
false :
m_cfg.readEntry(
"useRightMiddleTabletButtonWorkaround",
false));
1653 m_cfg.writeEntry(
"useRightMiddleTabletButtonWorkaround",
value);
1657bool KisConfig::usePageUpDownMouseButtonEmulationWorkaround(
bool defaultValue)
const
1663 return m_cfg.readEntry(
"usePageUpDownMouseButtonEmulationWorkaround", fallback);
1667void KisConfig::setUsePageUpDownMouseButtonEmulationWorkaround(
bool value)
1669 m_cfg.writeEntry(
"usePageUpDownMouseButtonEmulationWorkaround",
value);
1673bool KisConfig::useIgnoreHistoricTabletEventsWorkaround(
bool defaultValue)
const
1679 return m_cfg.readEntry(
"useIgnoreHistoricTabletEventsWorkaround", fallback);
1683void KisConfig::setUseIgnoreHistoricTabletEventsWorkaround(
bool value)
1685 m_cfg.writeEntry(
"useIgnoreHistoricTabletEventsWorkaround",
value);
1692 return (defaultValue ? 0.9 :
m_cfg.readEntry(
"vastScrolling", 0.9));
1697 m_cfg.writeEntry(
"vastScrolling", factor);
1702 return (defaultValue ? 0 :
m_cfg.readEntry(
"presetChooserViewMode", 0));
1707 m_cfg.writeEntry(
"presetChooserViewMode", mode);
1712 return (defaultValue ? 60 :
m_cfg.readEntry(
"presetIconSize", 60));
1722 return (defaultValue ?
true :
m_cfg.readEntry(
"firstRun",
true));
1727 m_cfg.writeEntry(
"firstRun", first);
1732 return (defaultValue ? 1 :
m_cfg.readEntry(
"horizontalSplitLines", 1));
1736 m_cfg.writeEntry(
"horizontalSplitLines", numberLines);
1741 return (defaultValue ? 1 :
m_cfg.readEntry(
"verticalSplitLines", 1));
1746 m_cfg.writeEntry(
"verticalSplitLines", numberLines);
1751 return (defaultValue ?
true :
m_cfg.readEntry(
"clicklessSpacePan",
true));
1756 m_cfg.writeEntry(
"clicklessSpacePan", toggle);
1762 return (defaultValue ?
true :
m_cfg.readEntry(
"hideDockersFullScreen",
true));
1767 m_cfg.writeEntry(
"hideDockersFullScreen",
value);
1772 return (defaultValue ?
true :
m_cfg.readEntry(
"showDockerTitleBars",
true));
1777 m_cfg.writeEntry(
"showDockerTitleBars",
value);
1782 return (defaultValue ?
true :
m_cfg.readEntry(
"showDockers",
true));
1792 return (defaultValue ?
true :
m_cfg.readEntry(
"showStatusBar",
true));
1802 return (defaultValue ?
true:
m_cfg.readEntry(
"hideMenuFullScreen",
true));
1807 m_cfg.writeEntry(
"hideMenuFullScreen",
value);
1812 return (defaultValue ?
true :
m_cfg.readEntry(
"hideScrollbarsFullScreen",
true));
1817 m_cfg.writeEntry(
"hideScrollbarsFullScreen",
value);
1822 return (defaultValue ?
true:
m_cfg.readEntry(
"hideStatusbarFullScreen",
true));
1827 m_cfg.writeEntry(
"hideStatusbarFullScreen",
value);
1832 return (defaultValue ?
true :
m_cfg.readEntry(
"hideTitleBarFullscreen",
true));
1837 m_cfg.writeEntry(
"hideTitleBarFullscreen",
value);
1842 return (defaultValue ?
true :
m_cfg.readEntry(
"hideToolbarFullscreen",
true));
1847 m_cfg.writeEntry(
"hideToolbarFullscreen",
value);
1852 return (defaultValue ?
true :
m_cfg.readEntry(
"fullscreenMode",
false));
1863 m_cfg.readEntry(
"favoriteCompositeOps",
1864 QString(
"normal,erase,multiply,burn,darken,add,dodge,screen,overlay,soft_light_svg,luminize,lighten,saturation,color,divide").split(
',')));
1869 m_cfg.writeEntry(
"favoriteCompositeOps", compositeOps);
1874 return (defaultValue ? QString() :
m_cfg.readEntry(
"ExportConfiguration-" + filterId, QString()));
1881 cfg->fromXML(xmlData);
1887 QString exportConfig = properties->toXML();
1888 m_cfg.writeEntry(
"ExportConfiguration-" + filterId, exportConfig);
1893 return (defaultValue ? QString() :
m_cfg.readEntry(
"ImportConfiguration-" + filterId, QString()));
1898 QString importConfig = properties->toXML();
1899 m_cfg.writeEntry(
"ImportConfiguration-" + filterId, importConfig);
1905 return (defaultValue ?
false :
m_cfg.readEntry(
"Krita/Ocio/UseOcio",
false));
1907 Q_UNUSED(defaultValue);
1914 m_cfg.writeEntry(
"Krita/Ocio/UseOcio", useOCIO);
1919 return (defaultValue ? 10:
m_cfg.readEntry(
"numFavoritePresets", 10));
1924 m_cfg.writeEntry(
"numFavoritePresets",
value);
1929 return (defaultValue ?
false :
m_cfg.readEntry(
"levelOfDetailEnabled",
false));
1934 m_cfg.writeEntry(
"levelOfDetailEnabled",
value);
1941 if (!defaultValue) {
1944 cfg.
lutPath =
m_cfg.readEntry(
"Krita/Ocio/OcioLutPath", QString());
1948 cfg.
look =
m_cfg.readEntry(
"Krita/Ocio/DisplayLook", QString());
1956 m_cfg.writeEntry(
"Krita/Ocio/OcioColorManagementMode", (
int) cfg.
mode);
1958 m_cfg.writeEntry(
"Krita/Ocio/OcioLutPath", cfg.
lutPath);
1962 m_cfg.writeEntry(
"Krita/Ocio/DisplayLook", cfg.
look);
1970 :
m_cfg.readEntry(
"Krita/Ocio/OcioColorManagementMode", (
int)
INTERNAL));
1976 m_cfg.writeEntry(
"Krita/Ocio/OcioColorManagementMode", (
int) mode);
1981 return (defaultValue ? 64 :
m_cfg.readEntry(
"Krita/Ocio/LutEdgeSize", 64));
1986 m_cfg.writeEntry(
"Krita/Ocio/LutEdgeSize",
value);
1991 return (defaultValue ?
false :
m_cfg.readEntry(
"Krita/Ocio/OcioLockColorVisualRepresentation",
false));
1996 m_cfg.writeEntry(
"Krita/Ocio/OcioLockColorVisualRepresentation",
value);
2001 return (defaultValue ? QString() :
m_cfg.readEntry(
"defaultPalette",
"Default"));
2006 m_cfg.writeEntry(
"defaultPalette", name);
2011 QString def =
"flow";
2012 if (sliderNumber == 1) {
2015 if (sliderNumber == 2) {
2018 return (defaultValue ? def :
m_cfg.readEntry(QString(
"toolbarslider_%1").arg(sliderNumber), def));
2023 m_cfg.writeEntry(QString(
"toolbarslider_%1").arg(sliderNumber), slider);
2028 return (defaultValue ? 20 :
m_cfg.readEntry(
"layerThumbnailSize", 20));
2033 m_cfg.writeEntry(
"layerThumbnailSize", size);
2038 return (defaultValue ? 50 :
m_cfg.readEntry(
"layerTreeIndentation", 50));
2043 m_cfg.writeEntry(
"layerTreeIndentation", percentage);
2048 return (defaultValue ?
true :
m_cfg.readEntry(
"sliderLabels",
true));
2053 m_cfg.writeEntry(
"sliderLabels", enabled);
2058 return (defaultValue ? QString() :
m_cfg.readEntry(
"currentInputProfile", QString()));
2063 m_cfg.writeEntry(
"currentInputProfile", name);
2068 return (defaultValue ?
false :
m_cfg.readEntry(
"ColorManagement/UseSystemMonitorProfile",
false));
2073 m_cfg.writeEntry(
"ColorManagement/UseSystemMonitorProfile", _useSystemMonitorProfile);
2078 return (defaultValue ?
true :
m_cfg.readEntry(
"presetStripVisible",
true));
2083 m_cfg.writeEntry(
"presetStripVisible", visible);
2088 return (defaultValue ?
true :
m_cfg.readEntry(
"scratchpadVisible",
true));
2093 m_cfg.writeEntry(
"scratchpadVisible", visible);
2098 return (defaultValue ?
false :
m_cfg.readEntry(
"showSingleChannelAsColor",
false));
2103 m_cfg.writeEntry(
"showSingleChannelAsColor", asColor);
2108 return (defaultValue ?
false :
m_cfg.readEntry(
"hidePopups",
false));
2118 return (defaultValue ? 2 :
m_cfg.readEntry(
"NumberOfLayersForNewImage", 2));
2123 m_cfg.writeEntry(
"NumberOfLayersForNewImage", num);
2133 m_cfg.writeEntry(
"BackgroundOpacityForNewImage", (
int)
value);
2138 return (defaultValue ? QColor(Qt::white) :
m_cfg.readEntry(
"BackgroundColorForNewImage", QColor(Qt::white)));
2143 m_cfg.writeEntry(
"BackgroundColorForNewImage",
value);
2153 m_cfg.writeEntry(
"BackgroundStyleForNewImage", (
int)
value);
2158 return (defaultValue ? 1 :
m_cfg.readEntry(
"LineSmoothingType", 1));
2163 m_cfg.writeEntry(
"LineSmoothingType",
value);
2168 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDistanceMin", 50.0));
2173 m_cfg.writeEntry(
"LineSmoothingDistanceMin",
value);
2178 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDistanceMax", 50.0));
2183 m_cfg.writeEntry(
"LineSmoothingDistanceMax",
value);
2188 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingDistanceKeepAspectRatio",
true));
2193 m_cfg.writeEntry(
"LineSmoothingDistanceKeepAspectRatio",
value);
2198 return (defaultValue ? 0.15 :
m_cfg.readEntry(
"LineSmoothingTailAggressiveness", 0.15));
2203 m_cfg.writeEntry(
"LineSmoothingTailAggressiveness",
value);
2208 return (defaultValue ?
false :
m_cfg.readEntry(
"LineSmoothingSmoothPressure",
false));
2213 m_cfg.writeEntry(
"LineSmoothingSmoothPressure",
value);
2218 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingScalableDistance",
true));
2223 m_cfg.writeEntry(
"LineSmoothingScalableDistance",
value);
2228 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDelayDistance", 50.0));
2233 m_cfg.writeEntry(
"LineSmoothingDelayDistance",
value);
2238 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingUseDelayDistance",
true));
2243 m_cfg.writeEntry(
"LineSmoothingUseDelayDistance",
value);
2248 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingFinishStabilizedCurve",
true));
2253 m_cfg.writeEntry(
"LineSmoothingFinishStabilizedCurve",
value);
2258 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingStabilizeSensors",
true));
2263 m_cfg.writeEntry(
"LineSmoothingStabilizeSensors",
value);
2268 return (defaultValue ? 10 :
m_cfg.readEntry(
"tabletEventsDelay", 10));
2273 m_cfg.writeEntry(
"tabletEventsDelay",
value);
2278 return (defaultValue ?
false :
m_cfg.readEntry(
"trackTabletEventLatency",
false));
2283 m_cfg.writeEntry(
"trackTabletEventLatency",
value);
2288 return (defaultValue ?
true :
m_cfg.readEntry(
"ignoreHighFunctionKeys",
true));
2293 m_cfg.writeEntry(
"ignoreHighFunctionKeys",
value);
2298 return (defaultValue ?
false :
m_cfg.readEntry(
"testingAcceptCompressedTabletEvents",
false));
2303 m_cfg.writeEntry(
"testingAcceptCompressedTabletEvents",
value);
2308 return (defaultValue ?
false :
m_cfg.readEntry(
"shouldEatDriverShortcuts",
false));
2313 return (defaultValue ?
false :
m_cfg.readEntry(
"testingCompressBrushEvents",
false));
2318 m_cfg.writeEntry(
"testingCompressBrushEvents",
value);
2323 return (defaultValue ? 0 :
m_cfg.readEntry(
"workaroundX11SmoothPressureSteps", 0));
2328 return (defaultValue ?
true :
m_cfg.readEntry(
"showOnCanvasMessages",
true));
2333 m_cfg.writeEntry(
"showOnCanvasMessages", show);
2338 return (defaultValue ?
false :
m_cfg.readEntry(
"compressLayersInKra",
false));
2343 m_cfg.writeEntry(
"compressLayersInKra", compress);
2348 return (defaultValue ?
false :
m_cfg.readEntry(
"TrimKra",
false));
2353 m_cfg.writeEntry(
"TrimKra", trim);
2358 return (defaultValue ?
false :
m_cfg.readEntry(
"TrimFramesImport",
false));
2362 m_cfg.writeEntry(
"TrimFramesImport", trim);
2367 return (defaultValue ? 0 :
m_cfg.readEntry(
"defaultExportMimeType", QString()));
2372 m_cfg.writeEntry(
"defaultExportMimeType", defaultExportMimeType);
2377 return (defaultValue ?
true :
m_cfg.readEntry(
"ToolOptionsInDocker",
true));
2382 m_cfg.writeEntry(
"ToolOptionsInDocker", inDocker);
2387 return (defaultValue ?
true :
m_cfg.readEntry(
"KineticScrollingEnabled",
true));
2392 m_cfg.writeEntry(
"KineticScrollingEnabled",
value);
2398 int defaultGesture = 1;
2400 int defaultGesture = 2;
2403 return (defaultValue ? defaultGesture :
m_cfg.readEntry(
"KineticScrollingGesture", defaultGesture));
2408 m_cfg.writeEntry(
"KineticScrollingGesture", gesture);
2413 return (defaultValue ? 75 :
m_cfg.readEntry(
"KineticScrollingSensitivity", 75));
2418 m_cfg.writeEntry(
"KineticScrollingSensitivity", sensitivity);
2423 return (defaultValue ?
false :
m_cfg.readEntry(
"KineticScrollingHideScrollbar",
false));
2428 m_cfg.writeEntry(
"KineticScrollingHideScrollbar", scrollbar);
2433 return (defaultValue ? 2 :
m_cfg.readEntry(
"zoomSteps", 2));
2438 m_cfg.writeEntry(
"zoomSteps", steps);
2443 return (defaultValue ? 0 :
m_cfg.readEntry(
"zoomMarginSize", 0));
2455 KConfigGroup cfg = KSharedConfig::openConfig()->group(
"advancedColorSelector");
2456 if (defaultValue || cfg.readEntry(
"useCustomColorSpace",
true)) {
2458 QString modelID = cfg.readEntry(
"customColorSpaceModel",
"RGBA");
2459 QString depthID = cfg.readEntry(
"customColorSpaceDepthID",
"U8");
2460 QString profile = cfg.readEntry(
"customColorSpaceProfile",
"sRGB built-in - (lcms internal)");
2461 if (profile ==
"default") {
2463 profile =
"sRGB built-in - (lcms internal)";
2465 cs = csr->
colorSpace(modelID, depthID, profile);
2473 KConfigGroup cfg = KSharedConfig::openConfig()->group(
"advancedColorSelector");
2474 cfg.writeEntry(
"useCustomColorSpace",
bool(cs));
2476 cfg.writeEntry(
"customColorSpaceModel", cs->
colorModelId().
id());
2477 cfg.writeEntry(
"customColorSpaceDepthID", cs->
colorDepthId().
id());
2478 cfg.writeEntry(
"customColorSpaceProfile", cs->
profile()->
name());
2484 return (defaultValue ?
false :
m_cfg.readEntry(
"enableOpenGLFramerateLogging",
false));
2489 m_cfg.writeEntry(
"enableOpenGLFramerateLogging",
value);
2494 return (defaultValue ?
false :
m_cfg.readEntry(
"enableBrushSpeedLogging",
false));
2499 m_cfg.writeEntry(
"enableBrushSpeedLogging",
value);
2505 m_cfg.writeEntry(
"amdDisableVectorWorkaround",
value);
2511 return (defaultValue ?
false :
m_cfg.readEntry(
"amdDisableVectorWorkaround",
false));
2516 m_cfg.writeEntry(
"disableAVXOptimizations",
value);
2521 return (defaultValue ?
false :
m_cfg.readEntry(
"disableAVXOptimizations",
false));
2526 m_cfg.writeEntry(
"animationPlaybackBackend",
value);
2531 return (defaultValue ? 1 :
m_cfg.readEntry(
"animationPlaybackBackend", 1));
2538 if (
value == oldValue)
return;
2540 m_cfg.writeEntry(
"animationDropFrames",
value);
2546 return (defaultValue ?
true :
m_cfg.readEntry(
"autoPinLayers",
true));
2556 return (defaultValue ?
true :
m_cfg.readEntry(
"adaptivePlaybackRange",
true));
2561 m_cfg.writeEntry(
"adaptivePlaybackRange",
value);
2566 return (defaultValue ?
true :
m_cfg.readEntry(
"autoZoomTimelineToPlaybackRange",
true));
2571 m_cfg.writeEntry(
"autoZoomTimelineToPlaybackRange",
value);
2575 return (defaultValue ?
"" :
m_cfg.readEntry(
"ffmpegLocation",
""));
2584 return (defaultValue ? 1.0f :
m_cfg.readEntry(
"timelineZoom", 1.0f));
2594 return (defaultValue ?
true :
m_cfg.readEntry(
"animationDropFrames",
true));
2599 return (defaultValue ? 30 :
m_cfg.readEntry(
"scrubbingUpdatesDelay", 30));
2604 m_cfg.writeEntry(
"scrubbingUpdatesDelay",
value);
2609 return (defaultValue ? -1 :
m_cfg.readEntry(
"scrubbingAudioUpdatesDelay", -1));
2614 m_cfg.writeEntry(
"scrubbingAudioUpdatesDelay",
value);
2619 return (defaultValue ? -1 :
m_cfg.readEntry(
"audioOffsetTolerance", -1));
2624 m_cfg.writeEntry(
"audioOffsetTolerance",
value);
2629 return defaultValue ? false :
m_cfg.readEntry(
"switchSelectionCtrlAlt",
false);
2634 m_cfg.writeEntry(
"switchSelectionCtrlAlt",
value);
2639 return defaultValue ? false :
m_cfg.readEntry(
"ConvertToImageColorSpaceOnImport",
false);
2644 m_cfg.writeEntry(
"ConvertToImageColorSpaceOnImport",
value);
2650 const int defaultSampleSize = 50;
2652 const int defaultSampleSize = 15;
2655 return defaultValue ?
2656 defaultSampleSize :
m_cfg.readEntry(
"stabilizerSampleSize", defaultSampleSize);
2661 m_cfg.writeEntry(
"stabilizerSampleSize",
value);
2666 const bool defaultEnabled =
true;
2668 return defaultValue ?
2669 defaultEnabled :
m_cfg.readEntry(
"stabilizerDelayedPaint", defaultEnabled);
2674 m_cfg.writeEntry(
"stabilizerDelayedPaint",
value);
2679 return defaultValue ? false :
m_cfg.readEntry(
"showBrushHud",
false);
2689 return defaultValue ? true :
m_cfg.readEntry(
"showPaletteBottomBar",
true);
2694 m_cfg.writeEntry(
"showPaletteBottomBar",
value);
2699 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";
2700 return defaultValue ? defaultDoc :
m_cfg.readEntry(
"brushHudSettings", defaultDoc);
2710 return defaultValue ? true :
m_cfg.readEntry(
"calculateAnimationCacheInBackground",
true);
2715 m_cfg.writeEntry(
"calculateAnimationCacheInBackground",
value);
2720 static const QColor defaultColor = QColor(176, 176, 176, 255);
2721 return defaultValue ? defaultColor :
m_cfg.readEntry(
"defaultAssistantsColor", defaultColor);
2726 m_cfg.writeEntry(
"defaultAssistantsColor", color);
2731 return defaultValue ? false :
m_cfg.readEntry(
"autoSmoothBezierCurves",
false);
2736 m_cfg.writeEntry(
"autoSmoothBezierCurves",
value);
2741 return defaultValue ? false :
m_cfg.readEntry(
"activateTransformToolAfterPaste",
false);
2746 m_cfg.writeEntry(
"activateTransformToolAfterPaste",
value);
2751 return defaultValue ? false :
m_cfg.readEntry(
"zoomHorizontal",
false);
2761 return defaultValue ? true :
m_cfg.readEntry(
"selectionActionBar",
true);
2766 m_cfg.writeEntry(
"selectionActionBar",
value);
2771 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
2772 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
2779 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
2780 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
2787 QString textValue =
"bt709-g22";
2789 if (!defaultValue) {
2790 textValue = displayrc->value(
"rootSurfaceFormat", textValue).toString();
2793 return textValue ==
"bt709-g10" ?
BT709_G10 :
2800 const QString textValue =
2805 displayrc->setValue(
"rootSurfaceFormat", textValue);
2810 return defaultValue ? false :
m_cfg.readEntry(
"UseZip64",
false);
2820 return defaultValue ? true :
m_cfg.readEntry(
"convertLayerColorSpaceInProperties",
true);
2825 m_cfg.writeEntry(
"convertLayerColorSpaceInProperties",
value);
2830 return defaultValue ? true :
m_cfg.readEntry(
"renamePastedLayers",
true);
2835 m_cfg.writeEntry(
"renamePastedLayers",
value);
2845 m_cfg.writeEntry(
"layerInfoTextStyle", (
int)
value);
2850 return defaultValue ? 55 :
m_cfg.readEntry(
"layerInfoTextOpacity", 55);
2855 m_cfg.writeEntry(
"layerInfoTextOpacity",
value);
2860 return defaultValue ? false :
m_cfg.readEntry(
"useInlineLayerInfoText",
false);
2865 m_cfg.writeEntry(
"useInlineLayerInfoText",
value);
2870 return defaultValue ? false :
m_cfg.readEntry(
"useLayerSelectionCheckbox",
true);
2875 m_cfg.writeEntry(
"useLayerSelectionCheckbox",
value);
2890 m_cfg.writeEntry(
"assistantsDrawMode",
static_cast<int>(
value));
2896 bool defaultEnabled =
true;
2898 bool defaultEnabled =
false;
2901 return defaultEnabled;
2903 return m_cfg.readEntry(
"longPressEnabled", defaultEnabled);
2913#include <QDomDocument>
2914#include <QDomElement>
2918 QDomDocument doc = QDomDocument(name);
2919 QDomElement el = doc.createElement(name);
2920 doc.appendChild(el);
2921 color.
toXML(doc, el);
2922 m_cfg.writeEntry(name, doc.toString());
2932 if (!
m_cfg.readEntry(name).isNull()) {
2933 doc.setContent(
m_cfg.readEntry(name));
2934 QDomElement e = doc.documentElement().firstChild().toElement();
2938 QString blackColor =
"<!DOCTYPE Color>\n<Color>\n <RGB r=\"0\" space=\"sRGB-elle-V2-srgbtrc.icc\" b=\"0\" g=\"0\"/>\n</Color>\n";
2939 doc.setContent(blackColor);
2940 QDomElement e = doc.documentElement().firstChild().toElement();
2948 QDomDocument doc = QDomDocument(name);
2949 QDomElement colorsElement = doc.createElement(
"colors");
2950 doc.appendChild(colorsElement);
2953 Q_FOREACH(
const KoColor & color, colors) {
2954 color.
toXML(doc, colorsElement);
2956 m_cfg.writeEntry(name, doc.toString());
2962 QString colorListXML =
m_cfg.readEntry(name);
2964 if (!colorListXML.isNull()) {
2966 doc.setContent(colorListXML);
2967 QDomElement colorsElement = doc.firstChildElement();
2968 if (!colorsElement.isNull()) {
2969 QDomNodeList colorNodes = colorsElement.childNodes();
2970 colors.reserve(colorNodes.size());
2972 for (
int k = 0; k < colorNodes.size(); k++) {
2973 QDomElement colorElement = colorNodes.at(k).toElement();
2975 colors.push_back(color);
2985 QDebugStateSaver saver(debug);
2986 debug.nospace() <<
"CanvasSurfaceMode(";
2990 debug.nospace() <<
"Preferred";
2993 debug.nospace() <<
"Rec709g22";
2996 debug.nospace() <<
"Rec709g10";
2999 debug.nospace() <<
"Rec2020pq";
3002 debug.nospace() <<
"Unmanaged";
3005 debug.nospace() <<
"unknown(" <<
static_cast<int>(mode) <<
")";
3009 debug.nospace() <<
")";
3011 return debug.space();
3017 QDebugStateSaver saver(debug);
3018 debug.nospace() <<
"CanvasSurfaceBitDepthMode(";
3022 debug.nospace() <<
"DepthAuto";
3025 debug.nospace() <<
"Depth8Bit";
3028 debug.nospace() <<
"Depth10Bit";
3031 debug.nospace() <<
"unknown(" <<
static_cast<int>(mode) <<
")";
3035 debug.nospace() <<
")";
3037 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)
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 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
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 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)