QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
QGCPalette.h File Reference
#include <QtCore/QObject>
#include <QtGui/QColor>
#include <QtCore/QMap>
#include <QtQmlIntegration/QtQmlIntegration>
+ Include dependency graph for QGCPalette.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  QGCPalette
 

Macros

#define DECLARE_QGC_COLOR(name, lightDisabled, lightEnabled, darkDisabled, darkEnabled)
 
#define DECLARE_QGC_NONTHEMED_COLOR(name, disabledColor, enabledColor)
 
#define DECLARE_QGC_SINGLE_COLOR(name, color)
 
#define DEFINE_QGC_COLOR(NAME, SETNAME)
 

Macro Definition Documentation

◆ DECLARE_QGC_COLOR

#define DECLARE_QGC_COLOR (   name,
  lightDisabled,
  lightEnabled,
  darkDisabled,
  darkEnabled 
)
Value:
{ \
PaletteColorInfo_t colorInfo = { \
{ QColor(lightDisabled), QColor(lightEnabled) }, \
{ QColor(darkDisabled), QColor(darkEnabled) } \
}; \
QGCCorePlugin::instance()->paletteOverride(#name, colorInfo); \
_colorInfoMap[Light][ColorGroupEnabled][QStringLiteral(#name)] = colorInfo[Light][ColorGroupEnabled]; \
_colorInfoMap[Light][ColorGroupDisabled][QStringLiteral(#name)] = colorInfo[Light][ColorGroupDisabled]; \
_colorInfoMap[Dark][ColorGroupEnabled][QStringLiteral(#name)] = colorInfo[Dark][ColorGroupEnabled]; \
_colorInfoMap[Dark][ColorGroupDisabled][QStringLiteral(#name)] = colorInfo[Dark][ColorGroupDisabled]; \
_colors << #name; \
}

Definition at line 8 of file QGCPalette.h.

◆ DECLARE_QGC_NONTHEMED_COLOR

#define DECLARE_QGC_NONTHEMED_COLOR (   name,
  disabledColor,
  enabledColor 
)
Value:
{ \
PaletteColorInfo_t colorInfo = { \
{ QColor(disabledColor), QColor(enabledColor) }, \
{ QColor(disabledColor), QColor(enabledColor) } \
}; \
QGCCorePlugin::instance()->paletteOverride(#name, colorInfo); \
_colorInfoMap[Light][ColorGroupEnabled][QStringLiteral(#name)] = colorInfo[Light][ColorGroupEnabled]; \
_colorInfoMap[Light][ColorGroupDisabled][QStringLiteral(#name)] = colorInfo[Light][ColorGroupDisabled]; \
_colorInfoMap[Dark][ColorGroupEnabled][QStringLiteral(#name)] = colorInfo[Dark][ColorGroupEnabled]; \
_colorInfoMap[Dark][ColorGroupDisabled][QStringLiteral(#name)] = colorInfo[Dark][ColorGroupDisabled]; \
_colors << #name; \
}

Definition at line 22 of file QGCPalette.h.

◆ DECLARE_QGC_SINGLE_COLOR

#define DECLARE_QGC_SINGLE_COLOR (   name,
  color 
)
Value:
{ \
PaletteColorInfo_t colorInfo = { \
{ QColor(color), QColor(color) }, \
{ QColor(color), QColor(color) } \
}; \
QGCCorePlugin::instance()->paletteOverride(#name, colorInfo); \
_colorInfoMap[Light][ColorGroupEnabled][QStringLiteral(#name)] = colorInfo[Light][ColorGroupEnabled]; \
_colorInfoMap[Light][ColorGroupDisabled][QStringLiteral(#name)] = colorInfo[Light][ColorGroupDisabled]; \
_colorInfoMap[Dark][ColorGroupEnabled][QStringLiteral(#name)] = colorInfo[Dark][ColorGroupEnabled]; \
_colorInfoMap[Dark][ColorGroupDisabled][QStringLiteral(#name)] = colorInfo[Dark][ColorGroupDisabled]; \
_colors << #name; \
}

Definition at line 36 of file QGCPalette.h.

◆ DEFINE_QGC_COLOR

#define DEFINE_QGC_COLOR (   NAME,
  SETNAME 
)
Value:
Q_PROPERTY(QColor NAME READ NAME WRITE SETNAME NOTIFY paletteChanged) \
Q_PROPERTY(QStringList NAME ## Colors READ NAME ## Colors NOTIFY paletteChanged) \
QColor NAME() const { return _colorInfoMap[_theme][_colorGroupEnabled ? ColorGroupEnabled : ColorGroupDisabled][QStringLiteral(#NAME)]; } \
QStringList NAME ## Colors() const { \
QStringList c; \
c << _colorInfoMap[Light][ColorGroupEnabled][QStringLiteral(#NAME)].name(QColor::HexRgb); \
c << _colorInfoMap[Light][ColorGroupDisabled][QStringLiteral(#NAME)].name(QColor::HexRgb); \
c << _colorInfoMap[Dark][ColorGroupEnabled][QStringLiteral(#NAME)].name(QColor::HexRgb); \
c << _colorInfoMap[Dark][ColorGroupDisabled][QStringLiteral(#NAME)].name(QColor::HexRgb); \
return c; \
} \
void SETNAME(const QColor& color) { _colorInfoMap[_theme][_colorGroupEnabled ? ColorGroupEnabled : ColorGroupDisabled][QStringLiteral(#NAME)] = color; _signalPaletteChangeToAll(); }

Definition at line 50 of file QGCPalette.h.