本文整理汇总了C++中actiontools::ActionInstance::color方法的典型用法代码示例。如果您正苦于以下问题:C++ ActionInstance::color方法的具体用法?C++ ActionInstance::color怎么用?C++ ActionInstance::color使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类actiontools::ActionInstance
的用法示例。
在下文中一共展示了ActionInstance::color方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: executeCurrentAction
void Executer::executeCurrentAction()
{
//Skip disabled actions
if(mCurrentActionIndex >= 0)
{
while(mCurrentActionIndex < mScript->actionCount() && canExecuteAction(mCurrentActionIndex) != CanExecute)
++mCurrentActionIndex;
}
if(mCurrentActionIndex < 0 || mCurrentActionIndex >= mScript->actionCount())
{
stopExecution();
return;
}
int nextLine = mCurrentActionIndex + 2;
if(nextLine > mScript->actionCount())
nextLine = -1;
QScriptValue script = mScriptEngine->globalObject().property("Script");
script.setProperty("nextLine", mScriptEngine->newVariant(QVariant(nextLine)));
script.setProperty("line", mCurrentActionIndex + 1, QScriptValue::ReadOnly);
ActionTools::ActionInstance *actionInstance = currentActionInstance();
const ActionTools::ExceptionActionInstancesHash &exceptionActionInstancesHash = actionInstance->exceptionActionInstances();
const ActionTools::ActionException::ExceptionActionInstance &exceptionAction = exceptionActionInstancesHash.value(ActionTools::ActionException::CodeErrorException);
mShowDebuggerOnCodeError = (exceptionAction.action() == ActionTools::ActionException::StopExecutionExceptionAction);
mExecutionWindow->setCurrentActionName(actionInstance->definition()->name());
mExecutionWindow->setCurrentActionColor(actionInstance->color());
connect(actionInstance, SIGNAL(executionEnded()), this, SLOT(actionExecutionEnded()));
connect(actionInstance, SIGNAL(executionException(int,QString)), this, SLOT(executionException(int,QString)));
connect(actionInstance, SIGNAL(disableAction(bool)), this, SLOT(disableAction(bool)));
connect(actionInstance, SIGNAL(showProgressDialog(QString,int)), this, SLOT(showProgressDialog(QString,int)));
connect(actionInstance, SIGNAL(updateProgressDialog(int)), this, SLOT(updateProgressDialog(int)));
connect(actionInstance, SIGNAL(updateProgressDialog(QString)), this, SLOT(updateProgressDialog(QString)));
connect(actionInstance, SIGNAL(hideProgressDialog()), this, SLOT(hideProgressDialog()));
connect(actionInstance, SIGNAL(consolePrint(QString)), this, SLOT(consolePrint(QString)));
connect(actionInstance, SIGNAL(consolePrintWarning(QString)), this, SLOT(consolePrintWarning(QString)));
connect(actionInstance, SIGNAL(consolePrintError(QString)), this, SLOT(consolePrintError(QString)));
mExecutionStatus = PrePause;
mExecutionTimer.start();
mExecutionTime.start();
if(currentActionInstance()->pauseBefore() + mPauseBefore > 0)
{
mExecutionWindow->setProgressEnabled(true);
mExecutionWindow->setProgressMinimum(0);
mExecutionWindow->setProgressMaximum(currentActionInstance()->pauseBefore() + mPauseBefore);
mExecutionWindow->setProgressValue(0);
}
else
mExecutionWindow->setProgressEnabled(false);
mExecutionEnded = true;
}
示例2: QUndoCommand
//ChangeColorCommand
ChangeColorCommand::ChangeColorCommand(const QList<int> &rows, const QColor &color, ScriptModel *model, ScriptProxyModel *proxyModel)
: QUndoCommand(),
mModel(model),
mProxyModel(proxyModel),
mRows(rows),
mNew(color)
{
for(int row: mRows)
{
ActionTools::ActionInstance *actionInstance = mModel->mScript->actionAt(row);
if(!actionInstance)
continue;
mOld << actionInstance->color();
}
setText(QObject::tr("Change the color"));
}
示例3: data
QVariant ScriptModel::data(const QModelIndex &index, int role) const
{
if(!index.isValid())
return QVariant();
ActionTools::ActionInstance *actionInstance = mScript->actionAt(index.row());
if(!actionInstance)
return QVariant();
switch(role)
{
case ActionDataRole:
return QVariant::fromValue(*actionInstance);
case ActionIdRole:
return actionInstance->definition()->id();
case Qt::BackgroundRole:
{
const QColor &color = actionInstance->color();
if(color.isValid())
return QBrush(color);
return QBrush();
}
case Qt::FontRole:
{
if(!actionInstance->definition()->worksUnderThisOS())
{
QFont font = QApplication::font();
font.setItalic(true);
return font;
}
return QFont();
}
case Qt::ForegroundRole:
{
const QColor &color = actionInstance->color();
if(color.isValid())
{
if(color.lightness() < 128)
return QBrush(Qt::white);
else
return QBrush(Qt::black);
}
else
{
const QPalette &palette = QApplication::palette();
if(!actionInstance->isEnabled())
return QBrush(palette.color(QPalette::Disabled, QPalette::WindowText));
return QBrush();
}
}
}
switch(index.column())
{
case ColumnLabel:
switch(role)
{
case Qt::CheckStateRole:
return QVariant(actionInstance->isEnabled() ? Qt::Checked : Qt::Unchecked);
case Qt::DisplayRole:
{
QString labelString = actionInstance->label();
if(!labelString.isNull() && !labelString.isEmpty())
return labelString;
return QString("%1").arg(index.row() + 1, 3, 10, QChar('0'));
}
case Qt::EditRole:
return actionInstance->label();
}
break;
case ColumnActionName:
switch(role)
{
case Qt::ToolTipRole:
return tr("Double-clic to edit the action");
case Qt::DisplayRole:
return actionInstance->definition()->name();
case Qt::DecorationRole:
return QIcon(actionInstance->definition()->icon());
case Qt::TextAlignmentRole:
return Qt::AlignCenter;
}
break;
case ColumnComment:
switch(role)
{
case Qt::DisplayRole:
case Qt::EditRole:
return actionInstance->comment();
}
break;
}
//.........这里部分代码省略.........