mirror of
https://github.com/hyperion-project/hyperion.ng.git
synced 2023-10-10 13:36:59 +02:00
61db9f43b8
* Replaced getoptplusplus with QCommandLineParser. Fixes #39 * enabling C++11 if possible * enabling C++11 if possible * fixed gcc compilation issues * fixed linux builds and improved os x build * trying to fix dispmanx * trying to fix dispmanx * simplified travis build script * fixed argumentparser default values * rewrote validator system and made sure default arguments are processed correctly * rewrote validator system and made sure default arguments are processed correctly * fixed bool vs. regular options * oops... removing debug code * reverted screenshot api change
31 lines
823 B
C++
31 lines
823 B
C++
#include <QRegularExpression>
|
|
#include "commandline/ColorOption.h"
|
|
#include "commandline/Parser.h"
|
|
|
|
using namespace commandline;
|
|
|
|
bool ColorOption::validate(Parser & parser, QString & value)
|
|
{
|
|
// Check if we can create the color by name
|
|
_color = QColor(value);
|
|
if (_color.isValid()) {
|
|
return true;
|
|
}
|
|
|
|
// check if we can create the color by hex RRGGBB getColors
|
|
_color = QColor(QString("#%1").arg(value));
|
|
if (_color.isValid()) {
|
|
return true;
|
|
}
|
|
|
|
if(!parser.isSet(*this)){
|
|
// Return true if no value is available
|
|
return true;
|
|
}
|
|
|
|
QStringList error;
|
|
_error = QString("Invalid color. A color is specified by a six lettered RRGGBB hex getColors or one of the following names:\n\t- %1").arg(QColor::colorNames().join("\n\t- "));
|
|
|
|
return false;
|
|
}
|