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>
53 : m_cfg( KSharedConfig::openConfig()->group(
""))
54 , m_readOnly(readOnly)
65 if (qApp && qApp->thread() != QThread::currentThread()) {
66 dbgKrita.noquote() <<
"WARNING: KisConfig: requested config synchronization from nonGUI thread! Called from:" <<
kisBacktrace();
91 switch(
m_cfg.readEntry(
"backupfilelocation", 0)) {
93 backupDir = QStandardPaths::writableLocation(QStandardPaths::HomeLocation);
96 backupDir = QStandardPaths::writableLocation(QStandardPaths::TempLocation);
100 backupDir =
"Same Folder as the File";
114#if defined Q_OS_WIN && QT_VERSION > QT_VERSION_CHECK(6, 0, 0)
116 auto tabletAPIName = [] (
bool useWinTab) {
117 return useWinTab ?
"WinTab" :
"WinInk";
120 QString actualTabletProtocol =
"<unknown>";
122 using QWindowsApplication = QNativeInterface::Private::QWindowsApplication;
123 if (
auto nativeWindowsApp =
dynamic_cast<QWindowsApplication *
>(QGuiApplicationPrivate::platformIntegration())) {
124 actualTabletProtocol = tabletAPIName(nativeWindowsApp->isWinTabEnabled());
126 KisUsageLogger::log(
"WARNING: Failed to fetch WinTab protocol status: QWindowsApplication is not available");
150 m_cfg.writeEntry(
"touchPainting",
int(
value));
171 return (defaultValue ?
true :
m_cfg.readEntry(
"useProjections",
true));
176 m_cfg.writeEntry(
"useProjections", useProj);
181 return (defaultValue ?
true :
m_cfg.readEntry(
"undoEnabled",
true));
186 m_cfg.writeEntry(
"undoEnabled", undo);
191 return (defaultValue ? 200 :
m_cfg.readEntry(
"undoStackLimit", 200));
196 m_cfg.writeEntry(
"undoStackLimit", limit);
201 return (defaultValue ?
false :
m_cfg.readEntry(
"useCumulativeUndoRedo",
false));
206 m_cfg.writeEntry(
"useCumulativeUndoRedo",
value);
227 return (defaultValue ? 2480 :
m_cfg.readEntry(
"imageWidthDef", 2480));
232 return (defaultValue ? 3508 :
m_cfg.readEntry(
"imageHeightDef", 3508));
237 return (defaultValue ? 300.0 :
m_cfg.readEntry(
"imageResolutionDef", 300.0)) / 72.0;
248 m_cfg.writeEntry(
"colorModelDef", model);
259 m_cfg.writeEntry(
"colorDepthDef", depth);
265 m_cfg.readEntry(
"colorProfileDef",
271 m_cfg.writeEntry(
"colorProfileDef", profile);
276 m_cfg.writeEntry(
"imageWidthDef", width);
281 m_cfg.writeEntry(
"imageHeightDef", height);
286 m_cfg.writeEntry(
"imageResolutionDef", res*72.0);
291 return defaultValue ? 100.0 :
m_cfg.readEntry(
"preferredVectorImportResolution", 100.0);
296 m_cfg.writeEntry(
"preferredVectorImportResolution",
value);
301 return (defaultvalue?
false:
m_cfg.readEntry(
"useDefaultColorSpace",
false));
306 m_cfg.writeEntry(
"useDefaultColorSpace",
value);
313 if (cfg.hasKey(
"newCursorStyle") &&
314 cfg.hasKey(
"newOutlineStyle")) {
316 cfg.deleteEntry(
"cursorStyleDef");
327 int style =
m_cfg.readEntry(
"newCursorStyle",
int(-1));
377 m_cfg.writeEntry(
"newCursorStyle", (
int)style);
383 col.setRgbF(1.0, 0.0, 1.0);
384 return (defaultValue ? col :
m_cfg.readEntry(
"cursorMaincColor", col));
389 m_cfg.writeEntry(
"cursorMaincColor",
v);
398 int style =
m_cfg.readEntry(
"newOutlineStyle",
int(-1));
438 m_cfg.writeEntry(
"newOutlineStyle", (
int)style);
447 int style =
m_cfg.readEntry(
"lastUsedOutlineStyle",
int(-1));
454 m_cfg.writeEntry(
"lastUsedOutlineStyle", (
int)style);
461 return (defaultValue ?
false :
m_cfg.readEntry(
"separateEraserCursor",
false));
466 m_cfg.writeEntry(
"separateEraserCursor",
value);
475 int style =
m_cfg.readEntry(
"eraserCursorStyle",
int(-1));
487 m_cfg.writeEntry(
"eraserCursorStyle", (
int)style);
493 col.setRgbF(0.501961, 1.0, 0.501961);
494 return (defaultValue ? col :
m_cfg.readEntry(
"eraserCursorMaincColor", col));
499 m_cfg.writeEntry(
"eraserCursorMaincColor",
v);
508 int style =
m_cfg.readEntry(
"eraserOutlineStyle",
int(-1));
520 m_cfg.writeEntry(
"eraserOutlineStyle", (
int)style);
525 return m_cfg.readEntry(
"colorPreviewRect", QVariant(QRect(32, 32, 48, 48))).toRect();
530 m_cfg.writeEntry(
"colorPreviewRect", QVariant(
rect));
535 return (defaultValue ?
false :
m_cfg.readEntry(
"useDirtyPresets",
true));
545 return (defaultValue ?
false :
m_cfg.readEntry(
"useEraserBrushSize",
false));
556 return (defaultValue ?
false :
m_cfg.readEntry(
"useEraserBrushOpacity",
false));
561 m_cfg.writeEntry(
"useEraserBrushOpacity",
value);
567 return (defaultValue ? QPoint(16, 16) :
m_cfg.readEntry(
"defaultGridSpacing", QPoint(16, 16)));
572 m_cfg.writeEntry(
"defaultGridSpacing", gridSpacing);
577 QColor col(77, 77, 77);
580 QString xml = kol.
toXML();
581 return (defaultValue ? xml :
m_cfg.readEntry(
"mdiBackgroundColorXML", xml));
586 m_cfg.writeEntry(
"mdiBackgroundColorXML",
v);
591 return (defaultValue ?
"" :
m_cfg.readEntry(
"mdiBackgroundImage",
""));
596 m_cfg.writeEntry(
"mdiBackgroundImage", filename);
601 return (defaultValue ?
true :
m_cfg.readEntry(
"enableCanvasSurfaceColorSpaceManagement",
true));
606 m_cfg.writeEntry(
"enableCanvasSurfaceColorSpaceManagement",
value);
610 QString modeStr = defaultValue ?
"preferred" :
m_cfg.readEntry(
"canvasSurfaceColorSpaceManagementMode",
"preferred");
612 if (modeStr ==
"preferred") {
614 }
else if (modeStr ==
"rec709g22") {
616 }
else if (modeStr ==
"rec709g10") {
618 }
else if (modeStr ==
"unmanaged") {
630 modeStr =
"preferred";
633 modeStr =
"rec709g22";
636 modeStr =
"rec709g10";
639 modeStr =
"unmanaged";
643 m_cfg.writeEntry(
"canvasSurfaceColorSpaceManagementMode", modeStr);
649 QString modeStr = defaultValue ?
"auto" : settings->value(
"canvasSurfaceBitDepthMode",
"auto").toString();
651 if (modeStr ==
"auto") {
653 }
else if (modeStr ==
"8bit") {
655 }
else if (modeStr ==
"10bit") {
678 settings->setValue(
"canvasSurfaceBitDepthMode", modeStr);
683 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
684 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
690 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
691 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
700 if (format.redBufferSize() == 10 &&
701 format.greenBufferSize() == 10 &&
702 format.blueBufferSize() == 10) {
717 const QString defaultProfile =
"sRGB-elle-V2-srgbtrc.icc";
721 const QString screenIdentifierKey =
"monitorProfile" + screenIdentifier;
728 if (!screenIdentifier.isEmpty() &&
m_cfg.hasKey(screenIdentifierKey)) {
729 profile =
m_cfg.readEntry(screenIdentifierKey, defaultProfile);
731 profile =
m_cfg.readEntry(
"monitorProfile" + QString(screen == 0 ?
"": QString(
"_%1").arg(screen)), defaultProfile);
740 return (defaultValue ? defaultMonitor
741 :
m_cfg.readEntry(QString(
"monitor_for_screen_%1").arg(screen), defaultMonitor));
746 m_cfg.writeEntry(QString(
"monitor_for_screen_%1").arg(screen), monitor);
751 m_cfg.writeEntry(
"monitorProfile/OverrideX11",
override);
752 m_cfg.writeEntry(
"monitorProfile" + QString(screen == 0 ?
"": QString(
"_%1").arg(screen)),
monitorProfile);
761 if (screen < 0)
return 0;
770 if (monitorId.isEmpty()) {
778 if (bytes.length() > 0) {
787 if (screen < 0)
return 0;
804 if (!monitorProfileName.isEmpty()) {
832 if (screenNo < 0 || screenNo >= QGuiApplication::screens().
length()) {
835 QScreen* screen = QGuiApplication::screens()[screenNo];
837 QString manufacturer = screen->manufacturer();
838 QString model = screen->model();
839 QString serialNumber = screen->serialNumber();
841 if (manufacturer ==
"" && model ==
"" && serialNumber ==
"") {
845 QString identifier =
QStringList({manufacturer, model, serialNumber}).join(
"_");
851 return (defaultValue ?
"RGBA" :
m_cfg.readEntry(
"workingColorSpace",
"RGBA"));
863 return QString(
"RGBA");
874 return (defaultValue ?
"" :
m_cfg.readEntry(
"printerProfile",
""));
885 return (defaultValue ?
true :
m_cfg.readEntry(
"useBlackPointCompensation",
true));
895 return (defaultValue ?
true :
m_cfg.readEntry(
"allowLCMSOptimization",
true));
905 return (defaultValue ?
false :
m_cfg.readEntry(
"colorsettings/forcepalettecolors",
false));
915 KConfigGroup cfg = KSharedConfig::openConfig()->group(
"advancedColorSelector");
916 return (defaultValue ?
false : cfg.readEntry(
"lastUsedColorsPerDocument",
false));
921 return (defaultValue ?
false :
m_cfg.readEntry(
"showrulers",
false));
926 m_cfg.writeEntry(
"showrulers", rulers);
931 return (defaultValue ?
false :
m_cfg.readEntry(
"forceShowSaveMessages",
false));
936 m_cfg.writeEntry(
"forceShowSaveMessages",
value);
941 return (defaultValue ?
false :
m_cfg.readEntry(
"forceShowAutosaveMessages",
false));
946 m_cfg.writeEntry(
"forceShowAutosaveMessages",
value);
951 return (defaultValue ?
true :
m_cfg.readEntry(
"rulersTrackMouse",
true));
961 return (defaultValue ? 2 :
m_cfg.readEntry(
"pasteBehaviour", 2));
966 m_cfg.writeEntry(
"pasteBehaviour", renderIntent);
971 return defaultValue ? 0 :
m_cfg.readEntry(
"pasteFormat", 0);
976 m_cfg.writeEntry(
"pasteFormat", format);
982 if (intent > 3) intent = 3;
983 if (intent < 0) intent = 0;
989 if (renderIntent > 3) renderIntent = 3;
990 if (renderIntent < 0) renderIntent = 0;
991 m_cfg.writeEntry(
"renderIntent", renderIntent);
1000 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1001 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1003 return kritarc.value(
"OpenGLRenderer",
"auto").toString() !=
"none";
1008 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1009 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1011 kritarc.setValue(
"OpenGLRenderer",
"none");
1016 return (defaultValue ? 3 :
m_cfg.readEntry(
"OpenGLFilterMode", 3));
1021 m_cfg.writeEntry(
"OpenGLFilterMode", filteringMode);
1026 m_cfg.writeEntry(
"widgetStyle", name);
1031 return (defaultValue ?
"" :
m_cfg.readEntry(
"widgetStyle",
""));
1036 return (defaultValue ?
true :
m_cfg.readEntry(
"useOpenGLTextureBuffer",
true));
1041 m_cfg.writeEntry(
"useOpenGLTextureBuffer", useBuffer);
1046 return (defaultValue ? 256 :
m_cfg.readEntry(
"textureSize", 256));
1051 return (defaultValue ?
false :
m_cfg.readEntry(
"forceOpenGLFenceWorkaround",
false));
1056 return (defaultValue ? 4 :
m_cfg.readEntry(
"numMipmapLevels", 4));
1066 int v =
m_cfg.readEntry(
"gridmainstyle", 0);
1067 v = qBound(0,
v, 2);
1068 return (defaultValue ? 0 :
v);
1073 m_cfg.writeEntry(
"gridmainstyle",
v);
1078 quint32
v =
m_cfg.readEntry(
"gridsubdivisionstyle", 1);
1080 return (defaultValue ? 1 :
v);
1085 m_cfg.writeEntry(
"gridsubdivisionstyle",
v);
1090 int v =
m_cfg.readEntry(
"gridisoverticalstyle", 0);
1091 v = qBound(0,
v, 3);
1092 return (defaultValue ? 0 :
v);
1097 m_cfg.writeEntry(
"gridisoverticalstyle",
v);
1102 QColor col(99, 99, 99);
1103 return (defaultValue ? col :
m_cfg.readEntry(
"gridmaincolor", col));
1108 m_cfg.writeEntry(
"gridmaincolor",
v);
1113 QColor col(150, 150, 150);
1114 return (defaultValue ? col :
m_cfg.readEntry(
"gridsubdivisioncolor", col));
1119 m_cfg.writeEntry(
"gridsubdivisioncolor",
v);
1124 QColor col(150, 150, 150);
1125 return (defaultValue ? col :
m_cfg.readEntry(
"gridisoverticalcolor", col));
1130 m_cfg.writeEntry(
"gridisoverticalcolor",
v);
1135 QColor col(255, 255, 255);
1136 return (defaultValue ? col :
m_cfg.readEntry(
"pixelGridColor", col));
1141 m_cfg.writeEntry(
"pixelGridColor",
v);
1146 qreal border = 24.0f;
1147 return (defaultValue ? border :
m_cfg.readEntry(
"pixelGridDrawingThreshold", border));
1152 m_cfg.writeEntry(
"pixelGridDrawingThreshold",
v);
1157 bool enabled =
true;
1158 return (defaultValue ? enabled :
m_cfg.readEntry(
"pixelGridEnabled", enabled));
1163 m_cfg.writeEntry(
"pixelGridEnabled",
v);
1168 int v =
m_cfg.readEntry(
"guidesLineStyle", 0);
1169 v = qBound(0,
v, 2);
1170 return (defaultValue ? 0 :
v);
1175 m_cfg.writeEntry(
"guidesLineStyle",
v);
1180 QColor col(99, 99, 99);
1181 return (defaultValue ? col :
m_cfg.readEntry(
"guidesColor", col));
1186 m_cfg.writeEntry(
"guidesColor",
v);
1194 *config = defaultConfig;
1211 m_cfg.writeEntry(
"globalSnapNode", config.
node());
1217 m_cfg.writeEntry(
"globalSnapToPixel", config.
toPixel());
1222 qint32 size = (defaultValue ? 32 :
m_cfg.readEntry(
"checksize", 32));
1223 if (size == 0) size = 32;
1229 if (checksize == 0) {
1232 m_cfg.writeEntry(
"checksize", checksize);
1237 return (defaultValue ?
false :
m_cfg.readEntry(
"scrollingcheckers",
false));
1242 m_cfg.writeEntry(
"scrollingcheckers", sc);
1247 QColor color(QColor(128,128,128));
1248 return (defaultValue ? color :
m_cfg.readEntry(
"canvasBorderColor", color));
1253 m_cfg.writeEntry(
"canvasBorderColor", color);
1258 return (defaultValue ?
false :
m_cfg.readEntry(
"hideScrollbars",
false));
1268 return (defaultValue ?
true :
m_cfg.readEntry(
"scrollbarZoomEnabled",
true));
1273 m_cfg.writeEntry(
"scrollbarZoomEnabled", enabled);
1278 QColor col(220, 220, 220);
1279 return (defaultValue ? col :
m_cfg.readEntry(
"checkerscolor", col));
1284 m_cfg.writeEntry(
"checkerscolor",
v);
1289 return (defaultValue ? QColor(Qt::white) :
m_cfg.readEntry(
"checkerscolor2", QColor(Qt::white)));
1294 m_cfg.writeEntry(
"checkerscolor2",
v);
1299 return (defaultValue ?
true :
m_cfg.readEntry(
"antialiascurves",
true));
1304 m_cfg.writeEntry(
"antialiascurves",
v);
1309 return (defaultValue ?
false :
m_cfg.readEntry(
"AntialiasSelectionOutline",
false));
1314 m_cfg.writeEntry(
"AntialiasSelectionOutline",
v);
1319 return (defaultValue ?
false :
m_cfg.readEntry(
"ShowRootLayer",
false));
1329 return (defaultValue ?
false :
m_cfg.readEntry(
"ShowGlobalSelection",
false));
1341 return (defaultValue ?
true :
m_cfg.readEntry(
"ShowOutlineWhilePainting",
true));
1351 return (defaultValue ?
false :
m_cfg.readEntry(
"forceAlwaysFullSizedOutline",
false));
1356 m_cfg.writeEntry(
"forceAlwaysFullSizedOutline",
value);
1363 return (defaultValue ?
true :
m_cfg.readEntry(
"ShowEraserOutlineWhilePainting",
true));
1373 return (defaultValue ?
false :
m_cfg.readEntry(
"forceAlwaysFullSizedEraserOutline",
false));
1378 m_cfg.writeEntry(
"forceAlwaysFullSizedEraserOutline",
value);
1388 m_cfg.writeEntry(
"sessionOnStartup", (
int)
value);
1393 return defaultValue ? false :
m_cfg.readEntry(
"saveSessionOnQuit",
false);
1397 m_cfg.writeEntry(
"saveSessionOnQuit",
value);
1402 return defaultValue ? false :
m_cfg.readEntry(
"hideDevFundBanner",
false);
1407 m_cfg.writeEntry(
"hideDevFundBanner",
value);
1412 return (defaultValue ? 1.0 :
m_cfg.readEntry(
"OutlineSizeMinimum", 1.0));
1422 return (defaultValue ? 5.0 :
m_cfg.readEntry(
"SelectionViewSizeMinimum", 5.0));
1433 return (defaultValue ? def :
m_cfg.readEntry(
"AutoSaveInterval", def));
1438 return m_cfg.writeEntry(
"AutoSaveInterval", seconds);
1443 return (defaultValue ?
true :
m_cfg.readEntry(
"CreateBackupFile",
true));
1453 return (defaultValue ?
false :
m_cfg.readEntry(
"showFilterGallery",
false));
1463 return (defaultValue ?
true :
m_cfg.readEntry(
"showFilterGalleryLayerMaskDialog",
true));
1473 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1474 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1475 return (defaultValue ?
"OPENGL_NOT_TRIED" : kritarc.value(
"canvasState",
"OPENGL_NOT_TRIED").toString());
1481 if (acceptableStates.isEmpty()) {
1482 acceptableStates <<
"OPENGL_SUCCESS" <<
"TRY_OPENGL" <<
"OPENGL_NOT_TRIED" <<
"OPENGL_FAILED";
1484 if (acceptableStates.contains(state)) {
1485 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1486 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1487 kritarc.setValue(
"canvasState", state);
1493 return (defaultValue ?
false :
m_cfg.readEntry(
"ToolOptionsPopupDetached",
false));
1498 m_cfg.writeEntry(
"ToolOptionsPopupDetached", detached);
1504 return (defaultValue ?
true :
m_cfg.readEntry(
"PaintopPopupDetached",
true));
1509 m_cfg.writeEntry(
"PaintopPopupDetached", detached);
1514 return (defaultValue ?
"0,0;1,1" :
m_cfg.readEntry(
"tabletPressureCurve",
"0,0;1,1;"));
1519 m_cfg.writeEntry(
"tabletPressureCurve", curveString);
1525 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1526 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1530 Q_UNUSED(defaultValue);
1542 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
1543 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
1554 return defaultValue ? false : settings->value(
"useWin8PointerInput",
false).toBool();
1559 settings->setValue(
"useWin8PointerInput",
value);
1564 return (defaultValue ?
false :
m_cfg.readEntry(
"useRightMiddleTabletButtonWorkaround",
false));
1569 m_cfg.writeEntry(
"useRightMiddleTabletButtonWorkaround",
value);
1574 return (defaultValue ? 0.9 :
m_cfg.readEntry(
"vastScrolling", 0.9));
1579 m_cfg.writeEntry(
"vastScrolling", factor);
1584 return (defaultValue ? 0 :
m_cfg.readEntry(
"presetChooserViewMode", 0));
1589 m_cfg.writeEntry(
"presetChooserViewMode", mode);
1594 return (defaultValue ? 60 :
m_cfg.readEntry(
"presetIconSize", 60));
1604 return (defaultValue ?
true :
m_cfg.readEntry(
"firstRun",
true));
1609 m_cfg.writeEntry(
"firstRun", first);
1614 return (defaultValue ? 1 :
m_cfg.readEntry(
"horizontalSplitLines", 1));
1618 m_cfg.writeEntry(
"horizontalSplitLines", numberLines);
1623 return (defaultValue ? 1 :
m_cfg.readEntry(
"verticalSplitLines", 1));
1628 m_cfg.writeEntry(
"verticalSplitLines", numberLines);
1633 return (defaultValue ?
true :
m_cfg.readEntry(
"clicklessSpacePan",
true));
1638 m_cfg.writeEntry(
"clicklessSpacePan", toggle);
1644 return (defaultValue ?
true :
m_cfg.readEntry(
"hideDockersFullScreen",
true));
1649 m_cfg.writeEntry(
"hideDockersFullScreen",
value);
1654 return (defaultValue ?
true :
m_cfg.readEntry(
"showDockerTitleBars",
true));
1659 m_cfg.writeEntry(
"showDockerTitleBars",
value);
1664 return (defaultValue ?
true :
m_cfg.readEntry(
"showDockers",
true));
1674 return (defaultValue ?
true :
m_cfg.readEntry(
"showStatusBar",
true));
1684 return (defaultValue ?
true:
m_cfg.readEntry(
"hideMenuFullScreen",
true));
1689 m_cfg.writeEntry(
"hideMenuFullScreen",
value);
1694 return (defaultValue ?
true :
m_cfg.readEntry(
"hideScrollbarsFullScreen",
true));
1699 m_cfg.writeEntry(
"hideScrollbarsFullScreen",
value);
1704 return (defaultValue ?
true:
m_cfg.readEntry(
"hideStatusbarFullScreen",
true));
1709 m_cfg.writeEntry(
"hideStatusbarFullScreen",
value);
1714 return (defaultValue ?
true :
m_cfg.readEntry(
"hideTitleBarFullscreen",
true));
1719 m_cfg.writeEntry(
"hideTitleBarFullscreen",
value);
1724 return (defaultValue ?
true :
m_cfg.readEntry(
"hideToolbarFullscreen",
true));
1729 m_cfg.writeEntry(
"hideToolbarFullscreen",
value);
1734 return (defaultValue ?
true :
m_cfg.readEntry(
"fullscreenMode",
false));
1745 m_cfg.readEntry(
"favoriteCompositeOps",
1746 QString(
"normal,erase,multiply,burn,darken,add,dodge,screen,overlay,soft_light_svg,luminize,lighten,saturation,color,divide").split(
',')));
1751 m_cfg.writeEntry(
"favoriteCompositeOps", compositeOps);
1756 return (defaultValue ? QString() :
m_cfg.readEntry(
"ExportConfiguration-" + filterId, QString()));
1763 cfg->fromXML(xmlData);
1769 QString exportConfig = properties->toXML();
1770 m_cfg.writeEntry(
"ExportConfiguration-" + filterId, exportConfig);
1775 return (defaultValue ? QString() :
m_cfg.readEntry(
"ImportConfiguration-" + filterId, QString()));
1780 QString importConfig = properties->toXML();
1781 m_cfg.writeEntry(
"ImportConfiguration-" + filterId, importConfig);
1787 return (defaultValue ?
false :
m_cfg.readEntry(
"Krita/Ocio/UseOcio",
false));
1789 Q_UNUSED(defaultValue);
1796 m_cfg.writeEntry(
"Krita/Ocio/UseOcio", useOCIO);
1801 return (defaultValue ? 10:
m_cfg.readEntry(
"numFavoritePresets", 10));
1806 m_cfg.writeEntry(
"numFavoritePresets",
value);
1811 return (defaultValue ?
false :
m_cfg.readEntry(
"levelOfDetailEnabled",
false));
1816 m_cfg.writeEntry(
"levelOfDetailEnabled",
value);
1823 if (!defaultValue) {
1826 cfg.
lutPath =
m_cfg.readEntry(
"Krita/Ocio/OcioLutPath", QString());
1830 cfg.
look =
m_cfg.readEntry(
"Krita/Ocio/DisplayLook", QString());
1838 m_cfg.writeEntry(
"Krita/Ocio/OcioColorManagementMode", (
int) cfg.
mode);
1840 m_cfg.writeEntry(
"Krita/Ocio/OcioLutPath", cfg.
lutPath);
1844 m_cfg.writeEntry(
"Krita/Ocio/DisplayLook", cfg.
look);
1852 :
m_cfg.readEntry(
"Krita/Ocio/OcioColorManagementMode", (
int)
INTERNAL));
1858 m_cfg.writeEntry(
"Krita/Ocio/OcioColorManagementMode", (
int) mode);
1863 return (defaultValue ? 64 :
m_cfg.readEntry(
"Krita/Ocio/LutEdgeSize", 64));
1868 m_cfg.writeEntry(
"Krita/Ocio/LutEdgeSize",
value);
1873 return (defaultValue ?
false :
m_cfg.readEntry(
"Krita/Ocio/OcioLockColorVisualRepresentation",
false));
1878 m_cfg.writeEntry(
"Krita/Ocio/OcioLockColorVisualRepresentation",
value);
1883 return (defaultValue ? QString() :
m_cfg.readEntry(
"defaultPalette",
"Default"));
1888 m_cfg.writeEntry(
"defaultPalette", name);
1893 QString def =
"flow";
1894 if (sliderNumber == 1) {
1897 if (sliderNumber == 2) {
1900 return (defaultValue ? def :
m_cfg.readEntry(QString(
"toolbarslider_%1").arg(sliderNumber), def));
1905 m_cfg.writeEntry(QString(
"toolbarslider_%1").arg(sliderNumber), slider);
1910 return (defaultValue ? 20 :
m_cfg.readEntry(
"layerThumbnailSize", 20));
1915 m_cfg.writeEntry(
"layerThumbnailSize", size);
1920 return (defaultValue ? 50 :
m_cfg.readEntry(
"layerTreeIndentation", 50));
1925 m_cfg.writeEntry(
"layerTreeIndentation", percentage);
1930 return (defaultValue ?
true :
m_cfg.readEntry(
"sliderLabels",
true));
1935 m_cfg.writeEntry(
"sliderLabels", enabled);
1940 return (defaultValue ? QString() :
m_cfg.readEntry(
"currentInputProfile", QString()));
1945 m_cfg.writeEntry(
"currentInputProfile", name);
1950 return (defaultValue ?
false :
m_cfg.readEntry(
"ColorManagement/UseSystemMonitorProfile",
false));
1955 m_cfg.writeEntry(
"ColorManagement/UseSystemMonitorProfile", _useSystemMonitorProfile);
1960 return (defaultValue ?
true :
m_cfg.readEntry(
"presetStripVisible",
true));
1965 m_cfg.writeEntry(
"presetStripVisible", visible);
1970 return (defaultValue ?
true :
m_cfg.readEntry(
"scratchpadVisible",
true));
1975 m_cfg.writeEntry(
"scratchpadVisible", visible);
1980 return (defaultValue ?
false :
m_cfg.readEntry(
"showSingleChannelAsColor",
false));
1985 m_cfg.writeEntry(
"showSingleChannelAsColor", asColor);
1990 return (defaultValue ?
false :
m_cfg.readEntry(
"hidePopups",
false));
2000 return (defaultValue ? 2 :
m_cfg.readEntry(
"NumberOfLayersForNewImage", 2));
2005 m_cfg.writeEntry(
"NumberOfLayersForNewImage", num);
2015 m_cfg.writeEntry(
"BackgroundOpacityForNewImage", (
int)
value);
2020 return (defaultValue ? QColor(Qt::white) :
m_cfg.readEntry(
"BackgroundColorForNewImage", QColor(Qt::white)));
2025 m_cfg.writeEntry(
"BackgroundColorForNewImage",
value);
2035 m_cfg.writeEntry(
"BackgroundStyleForNewImage", (
int)
value);
2040 return (defaultValue ? 1 :
m_cfg.readEntry(
"LineSmoothingType", 1));
2045 m_cfg.writeEntry(
"LineSmoothingType",
value);
2050 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDistanceMin", 50.0));
2055 m_cfg.writeEntry(
"LineSmoothingDistanceMin",
value);
2060 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDistanceMax", 50.0));
2065 m_cfg.writeEntry(
"LineSmoothingDistanceMax",
value);
2070 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingDistanceKeepAspectRatio",
true));
2075 m_cfg.writeEntry(
"LineSmoothingDistanceKeepAspectRatio",
value);
2080 return (defaultValue ? 0.15 :
m_cfg.readEntry(
"LineSmoothingTailAggressiveness", 0.15));
2085 m_cfg.writeEntry(
"LineSmoothingTailAggressiveness",
value);
2090 return (defaultValue ?
false :
m_cfg.readEntry(
"LineSmoothingSmoothPressure",
false));
2095 m_cfg.writeEntry(
"LineSmoothingSmoothPressure",
value);
2100 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingScalableDistance",
true));
2105 m_cfg.writeEntry(
"LineSmoothingScalableDistance",
value);
2110 return (defaultValue ? 50.0 :
m_cfg.readEntry(
"LineSmoothingDelayDistance", 50.0));
2115 m_cfg.writeEntry(
"LineSmoothingDelayDistance",
value);
2120 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingUseDelayDistance",
true));
2125 m_cfg.writeEntry(
"LineSmoothingUseDelayDistance",
value);
2130 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingFinishStabilizedCurve",
true));
2135 m_cfg.writeEntry(
"LineSmoothingFinishStabilizedCurve",
value);
2140 return (defaultValue ?
true :
m_cfg.readEntry(
"LineSmoothingStabilizeSensors",
true));
2145 m_cfg.writeEntry(
"LineSmoothingStabilizeSensors",
value);
2150 return (defaultValue ? 10 :
m_cfg.readEntry(
"tabletEventsDelay", 10));
2155 m_cfg.writeEntry(
"tabletEventsDelay",
value);
2160 return (defaultValue ?
false :
m_cfg.readEntry(
"trackTabletEventLatency",
false));
2165 m_cfg.writeEntry(
"trackTabletEventLatency",
value);
2170 return (defaultValue ?
true :
m_cfg.readEntry(
"ignoreHighFunctionKeys",
true));
2175 m_cfg.writeEntry(
"ignoreHighFunctionKeys",
value);
2180 return (defaultValue ?
false :
m_cfg.readEntry(
"testingAcceptCompressedTabletEvents",
false));
2185 m_cfg.writeEntry(
"testingAcceptCompressedTabletEvents",
value);
2190 return (defaultValue ?
false :
m_cfg.readEntry(
"shouldEatDriverShortcuts",
false));
2195 return (defaultValue ?
false :
m_cfg.readEntry(
"testingCompressBrushEvents",
false));
2200 m_cfg.writeEntry(
"testingCompressBrushEvents",
value);
2205 return (defaultValue ? 0 :
m_cfg.readEntry(
"workaroundX11SmoothPressureSteps", 0));
2210 return (defaultValue ?
true :
m_cfg.readEntry(
"showOnCanvasMessages",
true));
2215 m_cfg.writeEntry(
"showOnCanvasMessages", show);
2220 return (defaultValue ?
false :
m_cfg.readEntry(
"compressLayersInKra",
false));
2225 m_cfg.writeEntry(
"compressLayersInKra", compress);
2230 return (defaultValue ?
false :
m_cfg.readEntry(
"TrimKra",
false));
2235 m_cfg.writeEntry(
"TrimKra", trim);
2240 return (defaultValue ?
false :
m_cfg.readEntry(
"TrimFramesImport",
false));
2244 m_cfg.writeEntry(
"TrimFramesImport", trim);
2249 return (defaultValue ? 0 :
m_cfg.readEntry(
"defaultExportMimeType", QString()));
2254 m_cfg.writeEntry(
"defaultExportMimeType", defaultExportMimeType);
2259 return (defaultValue ?
true :
m_cfg.readEntry(
"ToolOptionsInDocker",
true));
2264 m_cfg.writeEntry(
"ToolOptionsInDocker", inDocker);
2269 return (defaultValue ?
true :
m_cfg.readEntry(
"KineticScrollingEnabled",
true));
2274 m_cfg.writeEntry(
"KineticScrollingEnabled",
value);
2280 int defaultGesture = 1;
2282 int defaultGesture = 2;
2285 return (defaultValue ? defaultGesture :
m_cfg.readEntry(
"KineticScrollingGesture", defaultGesture));
2290 m_cfg.writeEntry(
"KineticScrollingGesture", gesture);
2295 return (defaultValue ? 75 :
m_cfg.readEntry(
"KineticScrollingSensitivity", 75));
2300 m_cfg.writeEntry(
"KineticScrollingSensitivity", sensitivity);
2305 return (defaultValue ?
false :
m_cfg.readEntry(
"KineticScrollingHideScrollbar",
false));
2310 m_cfg.writeEntry(
"KineticScrollingHideScrollbar", scrollbar);
2315 return (defaultValue ? 2 :
m_cfg.readEntry(
"zoomSteps", 2));
2320 m_cfg.writeEntry(
"zoomSteps", steps);
2325 return (defaultValue ? 0 :
m_cfg.readEntry(
"zoomMarginSize", 0));
2337 KConfigGroup cfg = KSharedConfig::openConfig()->group(
"advancedColorSelector");
2338 if (defaultValue || cfg.readEntry(
"useCustomColorSpace",
true)) {
2340 QString modelID = cfg.readEntry(
"customColorSpaceModel",
"RGBA");
2341 QString depthID = cfg.readEntry(
"customColorSpaceDepthID",
"U8");
2342 QString profile = cfg.readEntry(
"customColorSpaceProfile",
"sRGB built-in - (lcms internal)");
2343 if (profile ==
"default") {
2345 profile =
"sRGB built-in - (lcms internal)";
2347 cs = csr->
colorSpace(modelID, depthID, profile);
2355 KConfigGroup cfg = KSharedConfig::openConfig()->group(
"advancedColorSelector");
2356 cfg.writeEntry(
"useCustomColorSpace",
bool(cs));
2358 cfg.writeEntry(
"customColorSpaceModel", cs->
colorModelId().
id());
2359 cfg.writeEntry(
"customColorSpaceDepthID", cs->
colorDepthId().
id());
2360 cfg.writeEntry(
"customColorSpaceProfile", cs->
profile()->
name());
2366 return (defaultValue ?
false :
m_cfg.readEntry(
"enableOpenGLFramerateLogging",
false));
2371 m_cfg.writeEntry(
"enableOpenGLFramerateLogging",
value);
2376 return (defaultValue ?
false :
m_cfg.readEntry(
"enableBrushSpeedLogging",
false));
2381 m_cfg.writeEntry(
"enableBrushSpeedLogging",
value);
2387 m_cfg.writeEntry(
"amdDisableVectorWorkaround",
value);
2393 return (defaultValue ?
false :
m_cfg.readEntry(
"amdDisableVectorWorkaround",
false));
2398 m_cfg.writeEntry(
"disableAVXOptimizations",
value);
2403 return (defaultValue ?
false :
m_cfg.readEntry(
"disableAVXOptimizations",
false));
2408 m_cfg.writeEntry(
"animationPlaybackBackend",
value);
2413 return (defaultValue ? 1 :
m_cfg.readEntry(
"animationPlaybackBackend", 1));
2420 if (
value == oldValue)
return;
2422 m_cfg.writeEntry(
"animationDropFrames",
value);
2428 return (defaultValue ?
true :
m_cfg.readEntry(
"autoPinLayers",
true));
2438 return (defaultValue ?
true :
m_cfg.readEntry(
"adaptivePlaybackRange",
true));
2443 m_cfg.writeEntry(
"adaptivePlaybackRange",
value);
2448 return (defaultValue ?
true :
m_cfg.readEntry(
"autoZoomTimelineToPlaybackRange",
true));
2453 m_cfg.writeEntry(
"autoZoomTimelineToPlaybackRange",
value);
2457 return (defaultValue ?
"" :
m_cfg.readEntry(
"ffmpegLocation",
""));
2466 return (defaultValue ? 1.0f :
m_cfg.readEntry(
"timelineZoom", 1.0f));
2476 return (defaultValue ?
true :
m_cfg.readEntry(
"animationDropFrames",
true));
2481 return (defaultValue ? 30 :
m_cfg.readEntry(
"scrubbingUpdatesDelay", 30));
2486 m_cfg.writeEntry(
"scrubbingUpdatesDelay",
value);
2491 return (defaultValue ? -1 :
m_cfg.readEntry(
"scrubbingAudioUpdatesDelay", -1));
2496 m_cfg.writeEntry(
"scrubbingAudioUpdatesDelay",
value);
2501 return (defaultValue ? -1 :
m_cfg.readEntry(
"audioOffsetTolerance", -1));
2506 m_cfg.writeEntry(
"audioOffsetTolerance",
value);
2511 return defaultValue ? false :
m_cfg.readEntry(
"switchSelectionCtrlAlt",
false);
2516 m_cfg.writeEntry(
"switchSelectionCtrlAlt",
value);
2521 return defaultValue ? false :
m_cfg.readEntry(
"ConvertToImageColorSpaceOnImport",
false);
2526 m_cfg.writeEntry(
"ConvertToImageColorSpaceOnImport",
value);
2532 const int defaultSampleSize = 50;
2534 const int defaultSampleSize = 15;
2537 return defaultValue ?
2538 defaultSampleSize :
m_cfg.readEntry(
"stabilizerSampleSize", defaultSampleSize);
2543 m_cfg.writeEntry(
"stabilizerSampleSize",
value);
2548 const bool defaultEnabled =
true;
2550 return defaultValue ?
2551 defaultEnabled :
m_cfg.readEntry(
"stabilizerDelayedPaint", defaultEnabled);
2556 m_cfg.writeEntry(
"stabilizerDelayedPaint",
value);
2561 return defaultValue ? false :
m_cfg.readEntry(
"showBrushHud",
false);
2571 return defaultValue ? true :
m_cfg.readEntry(
"showPaletteBottomBar",
true);
2576 m_cfg.writeEntry(
"showPaletteBottomBar",
value);
2581 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";
2582 return defaultValue ? defaultDoc :
m_cfg.readEntry(
"brushHudSettings", defaultDoc);
2592 return defaultValue ? true :
m_cfg.readEntry(
"calculateAnimationCacheInBackground",
true);
2597 m_cfg.writeEntry(
"calculateAnimationCacheInBackground",
value);
2602 static const QColor defaultColor = QColor(176, 176, 176, 255);
2603 return defaultValue ? defaultColor :
m_cfg.readEntry(
"defaultAssistantsColor", defaultColor);
2608 m_cfg.writeEntry(
"defaultAssistantsColor", color);
2613 return defaultValue ? false :
m_cfg.readEntry(
"autoSmoothBezierCurves",
false);
2618 m_cfg.writeEntry(
"autoSmoothBezierCurves",
value);
2623 return defaultValue ? false :
m_cfg.readEntry(
"activateTransformToolAfterPaste",
false);
2628 m_cfg.writeEntry(
"activateTransformToolAfterPaste",
value);
2633 return defaultValue ? false :
m_cfg.readEntry(
"zoomHorizontal",
false);
2643 return defaultValue ? true :
m_cfg.readEntry(
"selectionActionBar",
true);
2648 m_cfg.writeEntry(
"selectionActionBar",
value);
2653 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
2654 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
2661 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
2662 QSettings kritarc(configPath + QStringLiteral(
"/kritadisplayrc"), QSettings::IniFormat);
2669 QString textValue =
"bt709-g22";
2671 if (!defaultValue) {
2672 textValue = displayrc->value(
"rootSurfaceFormat", textValue).toString();
2675 return textValue ==
"bt709-g10" ?
BT709_G10 :
2682 const QString textValue =
2687 displayrc->setValue(
"rootSurfaceFormat", textValue);
2692 return defaultValue ? false :
m_cfg.readEntry(
"UseZip64",
false);
2702 return defaultValue ? true :
m_cfg.readEntry(
"convertLayerColorSpaceInProperties",
true);
2707 m_cfg.writeEntry(
"convertLayerColorSpaceInProperties",
value);
2712 return defaultValue ? true :
m_cfg.readEntry(
"renamePastedLayers",
true);
2717 m_cfg.writeEntry(
"renamePastedLayers",
value);
2727 m_cfg.writeEntry(
"layerInfoTextStyle", (
int)
value);
2732 return defaultValue ? 55 :
m_cfg.readEntry(
"layerInfoTextOpacity", 55);
2737 m_cfg.writeEntry(
"layerInfoTextOpacity",
value);
2742 return defaultValue ? false :
m_cfg.readEntry(
"useInlineLayerInfoText",
false);
2747 m_cfg.writeEntry(
"useInlineLayerInfoText",
value);
2752 return defaultValue ? false :
m_cfg.readEntry(
"useLayerSelectionCheckbox",
true);
2757 m_cfg.writeEntry(
"useLayerSelectionCheckbox",
value);
2772 m_cfg.writeEntry(
"assistantsDrawMode",
static_cast<int>(
value));
2778 bool defaultEnabled =
true;
2780 bool defaultEnabled =
false;
2783 return defaultEnabled;
2785 return m_cfg.readEntry(
"longPressEnabled", defaultEnabled);
2795#include <QDomDocument>
2796#include <QDomElement>
2800 QDomDocument doc = QDomDocument(name);
2801 QDomElement el = doc.createElement(name);
2802 doc.appendChild(el);
2803 color.
toXML(doc, el);
2804 m_cfg.writeEntry(name, doc.toString());
2814 if (!
m_cfg.readEntry(name).isNull()) {
2815 doc.setContent(
m_cfg.readEntry(name));
2816 QDomElement e = doc.documentElement().firstChild().toElement();
2820 QString blackColor =
"<!DOCTYPE Color>\n<Color>\n <RGB r=\"0\" space=\"sRGB-elle-V2-srgbtrc.icc\" b=\"0\" g=\"0\"/>\n</Color>\n";
2821 doc.setContent(blackColor);
2822 QDomElement e = doc.documentElement().firstChild().toElement();
2830 QDomDocument doc = QDomDocument(name);
2831 QDomElement colorsElement = doc.createElement(
"colors");
2832 doc.appendChild(colorsElement);
2835 Q_FOREACH(
const KoColor & color, colors) {
2836 color.
toXML(doc, colorsElement);
2838 m_cfg.writeEntry(name, doc.toString());
2844 QString colorListXML =
m_cfg.readEntry(name);
2846 if (!colorListXML.isNull()) {
2848 doc.setContent(colorListXML);
2849 QDomElement colorsElement = doc.firstChildElement();
2850 if (!colorsElement.isNull()) {
2851 QDomNodeList colorNodes = colorsElement.childNodes();
2852 colors.reserve(colorNodes.size());
2854 for (
int k = 0; k < colorNodes.size(); k++) {
2855 QDomElement colorElement = colorNodes.at(k).toElement();
2857 colors.push_back(color);
2867 QDebugStateSaver saver(debug);
2868 debug.nospace() <<
"CanvasSurfaceMode(";
2872 debug.nospace() <<
"Preferred";
2875 debug.nospace() <<
"Rec709g22";
2878 debug.nospace() <<
"Rec709g10";
2881 debug.nospace() <<
"Unmanaged";
2884 debug.nospace() <<
"unknown(" <<
static_cast<int>(mode) <<
")";
2888 debug.nospace() <<
")";
2890 return debug.space();
2896 QDebugStateSaver saver(debug);
2897 debug.nospace() <<
"CanvasSurfaceBitDepthMode(";
2901 debug.nospace() <<
"DepthAuto";
2904 debug.nospace() <<
"Depth8Bit";
2907 debug.nospace() <<
"Depth10Bit";
2910 debug.nospace() <<
"unknown(" <<
static_cast<int>(mode) <<
")";
2914 debug.nospace() <<
")";
2916 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 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
void setPasteFormat(qint32 format)
QColor checkersColor2(bool defaultValue=false) const
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)
QRect colorPreviewRect() const
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 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 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 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 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
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
bool sliderLabels(bool defaultValue=false) const
bool hidePopups(bool defaultValue=false) const
void setColorPreviewRect(const QRect &rect)
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
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
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)
@ 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
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)