PerceptualColor

PerceptualColor Namespace Reference

Classes

class  AbstractDiagram
 
class  ChromaHueDiagram
 
class  ColorDialog
 
class  ColorPatch
 
class  ColorWheel
 
class  GradientSlider
 
struct  LchaDouble
 
struct  LchDouble
 
class  MultiSpinBox
 
class  MultiSpinBoxSection
 
class  RgbColorSpaceFactory
 
class  WheelColorPicker
 

Typedefs

using QColorFloatType = decltype(std::declval< QColor >().redF())
 
using QListSizeType = decltype(std::declval< QList< int > >().count())
 
using QStringLength = decltype(std::declval< QString >().length())
 
using QStringSize = decltype(std::declval< QString >().size())
 
using Quartet = QGenericMatrix< 1, 4, double >
 
using SquareMatrix3 = QGenericMatrix< 3, 3, double >
 
using Trio = QGenericMatrix< 1, 3, double >
 

Functions

SquareMatrix3 createSquareMatrix3 (double r0c0, double r0c1, double r0c2, double r1c0, double r1c1, double r1c2, double r2c0, double r2c1, double r2c2)
 
template<typename T = void>
void delayedEventProcessing (unsigned long msecWaitInitially=50, unsigned long msecWaitBetweenEventLoopPasses=50, int numberEventLoopPasses=3)
 
void drawQWidgetStyleSheetAware (QWidget *widget)
 
cmsCIELab fromCmscielabD50ToOklab (const cmsCIELab &cielabD50)
 
template<typename T >
constexpr quint8 fromFloatingToEightBit (const T &original)
 
cmsCIELab fromOklabToCmscielabD50 (const cmsCIELab &oklab)
 
Trio fromOklabToXyzd65 (const Trio &value)
 
QColor fromRgbDoubleToQColor (const RgbDouble &color)
 
Trio fromXyzd65ToOklab (const Trio &value)
 
QPair< QString, QStringgetPrefixSuffix (const QString &formatString)
 
void initializeTranslation (QCoreApplication *instance, std::optional< QStringList > newUiLanguages)
 
std::optional< SquareMatrix3inverseMatrix (const SquareMatrix3 &matrix)
 
template<typename First , typename... T>
bool isIn (First &&first, T &&...t)
 
template<typename A , typename B >
constexpr bool isNearlyEqual (A a, B b)
 
template<typename T >
constexpr bool isNearlyEqual (T a, T b, T epsilon)
 
template<typename T >
constexpr bool isOdd (const T &number)
 
template<typename T >
normalizedAngleDegree (T value)
 
QDebug operator<< (QDebug dbg, const PerceptualColor::LchaDouble &value)
 
QDebug operator<< (QDebug dbg, const PerceptualColor::LchDouble &value)
 
QDebug operator<< (QDebug dbg, const PerceptualColor::MultiColor &value)
 
QDebug operator<< (QDebug dbg, const PerceptualColor::MultiRgb &value)
 
QDebug operator<< (QDebug dbg, const PerceptualColor::MultiSpinBoxSection &value)
 
QDebug operator<< (QDebug dbg, const PerceptualColor::PolarPointF value)
 
QDebug operator<< (QDebug dbg, const PerceptualColor::RgbDouble &value)
 
QVersionNumber perceptualColorRunTimeVersion ()
 
template<typename T >
QColor qColorFromRgbDouble (T red, T green, T blue)
 
template<typename T >
constexpr T roundToDigits (T value, int precision)
 
void setTranslation (QCoreApplication *instance, const QStringList &newUiLanguages)
 
qreal standardWheelStepCount (QWheelEvent *event)
 
cmsCIELab toCmsLab (const cmsCIELCh &value)
 
cmsCIELCh toCmsLch (const LchDouble &value)
 
LchDouble toLchDouble (const cmsCIELab &value)
 
LchDouble toLchDouble (const cmsCIELCh &value)
 
QImage transparencyBackground (qreal devicePixelRatioF)
 

Variables

constexpr qreal gamutPrecision = 0.001
 
constexpr int overlap = 2
 
constexpr qreal pageStepAlpha = 10 * singleStepAlpha
 
constexpr int pageStepChroma = 10 * singleStepChroma
 
constexpr int pageStepHue = 10 * singleStepHue
 
constexpr int pageStepLightness = 10 * singleStepLightness
 
constexpr auto pi = M_PI
 
const QString richTextMarker = QStringLiteral(u"<a/>")
 
constexpr qreal scaleFromMinumumSizeHintToSizeHint = 1.2
 
constexpr qreal singleStepAlpha = 0.01
 
constexpr int singleStepChroma = 1
 
constexpr int singleStepHue = 360 / 100
 
constexpr int singleStepLightness = 1
 
constexpr cmsCIEXYZ whitePointD65TwoDegree {0.95047, 1.00000, 1.08883}
 

Detailed Description

The namespace of this library.

All symbols that are provided in this library are encapsulated within this namespace.

Typedef Documentation

◆ Quartet

using PerceptualColor::Quartet = typedef QGenericMatrix<1, 4, double>

A vector with 4 elements (double precision).

This type is declared as type to Qt’s type system via Q_DECLARE_METATYPE. Depending on your use case (for example if you want to use for queued signal-slot connections), you might consider calling qRegisterMetaType() for this type, once you have a QApplication object.

Definition at line 32 of file helpermath.h.

◆ SquareMatrix3

using PerceptualColor::SquareMatrix3 = typedef QGenericMatrix<3, 3, double>

A 3×3 matrix (double precision).

This type is declared as type to Qt’s type system via Q_DECLARE_METATYPE. Depending on your use case (for example if you want to use for queued signal-slot connections), you might consider calling qRegisterMetaType() for this type, once you have a QApplication object.

Definition at line 41 of file helpermath.h.

◆ Trio

using PerceptualColor::Trio = typedef QGenericMatrix<1, 3, double>

A vector with 3 elements (double precision).

This type is declared as type to Qt’s type system via Q_DECLARE_METATYPE. Depending on your use case (for example if you want to use for queued signal-slot connections), you might consider calling qRegisterMetaType() for this type, once you have a QApplication object.

Definition at line 50 of file helpermath.h.

Function Documentation

◆ createSquareMatrix3()

SquareMatrix3 PerceptualColor::createSquareMatrix3 ( double  r0c0,
double  r0c1,
double  r0c2,
double  r1c0,
double  r1c1,
double  r1c2,
double  r2c0,
double  r2c1,
double  r2c2 
)

Convenience constructor for SquareMatrix3.

Parameters
r0c0row 0, column 0
r0c1row 0, column 1
r0c2row 0, column 2
r1c0row 1, column 0
r1c1row 1, column 1
r1c2row 1, column 2
r2c0row 2, column 0
r2c1row 2, column 1
r2c2row 2, column 2
Returns
The corresponding SquareMatrix3.

Definition at line 26 of file helpermath.cpp.

◆ inverseMatrix()

std::optional< SquareMatrix3 > PerceptualColor::inverseMatrix ( const SquareMatrix3 matrix)

Try to find the inverse matrix.

Parameters
matrixThe original matrix.
Returns
If the original matrix is invertible, its inverse matrix. An empty value otherwise.

Definition at line 42 of file helpermath.cpp.

◆ operator<<() [1/3]

PERCEPTUALCOLOR_IMPORTEXPORT QDebug PerceptualColor::operator<< ( QDebug  dbg,
const PerceptualColor::LchaDouble value 
)

Adds QDebug() support for data type PerceptualColor::LchaDouble.

Parameters
dbgExisting debug object
valueValue to stream into the debug object
Returns
Debug object with value streamed in

Definition at line 58 of file lchadouble.cpp.

◆ operator<<() [2/3]

PERCEPTUALCOLOR_IMPORTEXPORT QDebug PerceptualColor::operator<< ( QDebug  dbg,
const PerceptualColor::LchDouble value 
)

Adds QDebug() support for data type PerceptualColor::LchDouble.

Parameters
dbgExisting debug object
valueValue to stream into the debug object
Returns
Debug object with value streamed in

Definition at line 60 of file lchdouble.cpp.

◆ operator<<() [3/3]

PERCEPTUALCOLOR_IMPORTEXPORT QDebug PerceptualColor::operator<< ( QDebug  dbg,
const PerceptualColor::MultiSpinBoxSection value 
)

Adds QDebug() support for data type PerceptualColor::MultiSpinBoxSection.

Parameters
dbgExisting debug object
valueValue to stream into the debug object
Returns
Debug object with value streamed in

Definition at line 255 of file multispinboxsection.cpp.

◆ perceptualColorRunTimeVersion()

PERCEPTUALCOLOR_IMPORTEXPORT QVersionNumber PerceptualColor::perceptualColorRunTimeVersion ( )

Against which version of this library you are running.

Returns
The library version with major, minor and patch version. Note that there is no pre-release identifier included. For example, if your application is running against version 1.2.3-alpha of this library, this function will return QVersionNumber(1, 2, 3).

To use this function, include version.h

See also
Version information at compiletime and runtime

Definition at line 33 of file version.cpp.

◆ setTranslation()

void PERCEPTUALCOLOR_IMPORTEXPORT PerceptualColor::setTranslation ( QCoreApplication instance,
const QStringList newUiLanguages 
)

Set the translation for the whole library.

After calling this function, all objects of this library that are created from now on are translated according to translation that was set.

Objects that were yet existing when calling are not always automatically updated: When calling this function, Qt sends a QEvent::LanguageChange event only to top-level widgets, and these will get updated then. You can send the event yourself to non-top-level widgets to update those widgets also. Note that also RgbColorSpaceFactory generates objects that might have localized properties; these objects do not support translation updates.

If you create objects that use translations before a translation has been set explicitly, than automatically an environment-dependant translation is loaded.

You might call this function again after a change of QLocale() to change the translation. Also, call this function again after destroying the QCoreApplication object and creating a new one.

It is safe to call this function multiple times.

Precondition
There exists exactly one instance of QCoreApplication to which the parameter points. This function is called from the same thread in which the QCoreApplication instance lives.
Parameters
instanceA pointer to the QCoreApplication instance for which the initialization will be done.
newUiLanguagesList of translations, ordered by priority, most important ones first, like in QLocale::uiLanguages().

Definition at line 55 of file settranslation.cpp.

This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Sat Apr 1 2023 03:56:59 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.