本文整理汇总了C++中AMListAction3::subActionAt方法的典型用法代码示例。如果您正苦于以下问题:C++ AMListAction3::subActionAt方法的具体用法?C++ AMListAction3::subActionAt怎么用?C++ AMListAction3::subActionAt使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AMListAction3
的用法示例。
在下文中一共展示了AMListAction3::subActionAt方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: findActionsOfType
QList<AMAction3*> findActionsOfType(AMAction3 *rootAction, AMAction3 *typeAction){
QList<AMAction3*> retVal;
AMListAction3 *castToListAction = qobject_cast<AMListAction3*>(rootAction);
if(castToListAction){
for(int x = 0; x < castToListAction->subActionCount(); x++){
if(typeAction->metaObject()->className() == castToListAction->subActionAt(x)->metaObject()->className())
retVal.append(castToListAction->subActionAt(x));
retVal.append((findActionsOfType(castToListAction->subActionAt(x), typeAction)));
}
}
return retVal;
}
示例2: findActionsWhereNameContains
QList<AMAction3*> findActionsWhereNameContains(AMAction3 *rootAction, const QString &searchString){
QList<AMAction3*> retVal;
AMListAction3 *castToListAction = qobject_cast<AMListAction3*>(rootAction);
if(castToListAction){
for(int x = 0; x < castToListAction->subActionCount(); x++){
AMListAction3 *subActionToListAction = qobject_cast<AMListAction3*>(castToListAction->subActionAt(x));
if(subActionToListAction && subActionToListAction->info()->shortDescription().contains(searchString))
retVal.append(subActionToListAction);
retVal.append((findActionsNamed(castToListAction->subActionAt(x), searchString)));
}
}
return retVal;
}
示例3: findActionsNamed
QList<AMAction3*> findActionsNamed(AMAction3 *rootAction, const QString &name){
QList<AMAction3*> retVal;
AMListAction3 *castToListAction = qobject_cast<AMListAction3*>(rootAction);
if(castToListAction){
for(int x = 0; x < castToListAction->subActionCount(); x++){
AMListAction3 *subActionToListAction = qobject_cast<AMListAction3*>(castToListAction->subActionAt(x));
if(subActionToListAction && subActionToListAction->info()->shortDescription() == name)
retVal.append(subActionToListAction);
retVal.append((findActionsNamed(castToListAction->subActionAt(x), name)));
}
}
return retVal;
}
示例4: generateActionTree
void AMScanActionControllerScanAssembler::generateActionTree(){
actionTree_ = generateActionTreeForAxis(controls_->at(0), axes_.at(0));
QList<AMAction3*> insertionPoints = findInsertionPoints(actionTree_);
for(int x = 1; x < axes_.count(); x++){
QList<AMAction3*> newInsertionPoints;
newInsertionPoints.clear();
for(int y = 0; y < insertionPoints.count(); y++){
AMListAction3 *castParentToListAction = qobject_cast<AMListAction3*>(insertionPoints.at(y)->parentAction());
if(castParentToListAction){
int indexOfAction = castParentToListAction->indexOfSubAction(insertionPoints.at(y));
castParentToListAction->insertSubAction(generateActionTreeForAxis(controls_->at(x), axes_.at(x)), indexOfAction);
castParentToListAction->deleteSubAction(indexOfAction+1);
newInsertionPoints.append(findInsertionPoints(castParentToListAction->subActionAt(indexOfAction)));
}
}
insertionPoints.clear();
insertionPoints = newInsertionPoints;
}
QList<AMAction3*> detectorInsertionPoints = findInsertionPoints(actionTree_);
for(int x = 0; x < detectorInsertionPoints.count(); x++){
AMListAction3 *castParentToListAction = qobject_cast<AMListAction3*>(detectorInsertionPoints.at(x)->parentAction());
if(castParentToListAction){
int indexOfAction = castParentToListAction->indexOfSubAction(detectorInsertionPoints.at(x));
castParentToListAction->insertSubAction(generateActionListForDetectorAcquisition(), indexOfAction);
castParentToListAction->deleteSubAction(indexOfAction+1);
}
}
AMListAction3 *castRetValToListAction = qobject_cast<AMListAction3*>(actionTree_);
if(castRetValToListAction){
AMListAction3 *castFirstToListAction = qobject_cast<AMListAction3*>(castRetValToListAction->subActionAt(1));
if(castFirstToListAction)
castFirstToListAction->addSubAction(generateActionListForDetectorInitialization());
AMListAction3 *castLastToListAction = qobject_cast<AMListAction3*>(castRetValToListAction->subActionAt(castRetValToListAction->subActionCount()-2));
if(castLastToListAction)
castLastToListAction->addSubAction(generateActionListForDetectorCleanup());
}
emit actionTreeGenerated(actionTree_);
}