本文整理汇总了C++中checkCommand函数的典型用法代码示例。如果您正苦于以下问题:C++ checkCommand函数的具体用法?C++ checkCommand怎么用?C++ checkCommand使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了checkCommand函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getAvailableCommands
void RS_ActionModifyMoveRotate::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
return;
}
switch (getStatus()) {
case SetReferencePoint:
case SetTargetPoint:
// RVT_PORT changed from if (c==checkCommand("angle", c)) {
if (checkCommand("angle", c)) {
deletePreview();
lastStatus = (Status)getStatus();
setStatus(SetAngle);
}
break;
case SetAngle: {
bool ok;
double a = RS_Math::eval(c, &ok);
if (ok) {
e->accept();
pPoints->data.angle = RS_Math::deg2rad(a);
} else {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid expression"));
}
RS_DIALOGFACTORY->requestOptions(this, true, true);
setStatus(lastStatus);
}
break;
}
}
示例2: getAvailableCommands
void RS_ActionDrawCircleCR::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
return;
}
switch (getStatus()) {
case SetCenter:
if (checkCommand("radius", c)) {
deletePreview();
setStatus(SetRadius);
}
break;
case SetRadius: {
bool ok;
double r = RS_Math::eval(c, &ok);
if (ok==true) {
data.radius = r;
e->accept();
trigger();
} else {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid expression"));
}
RS_DIALOGFACTORY->requestOptions(this, true, true);
}
break;
default:
break;
}
}
示例3: getAvailableCommands
void RS_ActionDrawText::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
if (RS_DIALOGFACTORY) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
}
return;
}
switch (getStatus()) {
case SetPos:
if (checkCommand("text", c)) {
deletePreview();
graphicView->disableCoordinateInput();
setStatus(SetText);
}
break;
case SetText: {
setText(e->getCommand());
if (RS_DIALOGFACTORY) {
RS_DIALOGFACTORY->requestOptions(this, true, true);
}
graphicView->enableCoordinateInput();
setStatus(SetPos);
}
break;
default:
break;
}
}
示例4: switch
void RS_ActionDrawSpline::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
switch (getStatus()) {
case SetStartpoint:
if (checkCommand("help", c)) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
return;
}
break;
case SetNextPoint:
/*if (checkCommand("close", c)) {
close();
updateMouseButtonHints();
return;
}*/
if (checkCommand("undo", c)) {
undo();
updateMouseButtonHints();
return;
}
break;
default:
break;
}
}
示例5: getAvailableCommands
void RS_ActionDimAligned::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
return;
}
switch (getStatus()) {
case SetText: {
setText(c);
RS_DIALOGFACTORY->requestOptions(this, true, true);
setStatus(lastStatus);
graphicView->enableCoordinateInput();
}
break;
default:
if (checkCommand("text", c)) {
lastStatus = (Status)getStatus();
graphicView->disableCoordinateInput();
setStatus(SetText);
}
break;
}
}
示例6: getAvailableCommands
void RS_ActionDimAngular::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
return;
}
// setting new text label:
if (getStatus()==SetText) {
setText(c);
RS_DIALOGFACTORY->requestOptions(this, true, true);
graphicView->enableCoordinateInput();
setStatus(lastStatus);
return;
}
// command: text
if (checkCommand("text", c)) {
lastStatus = (Status)getStatus();
graphicView->disableCoordinateInput();
setStatus(SetText);
}
}
示例7: getAvailableCommands
void RS_ActionDrawLineBisector::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
return;
}
switch (getStatus()) {
case SetLine1:
case SetLine2:
lastStatus = (Status)getStatus();
if (checkCommand("length", c)) {
deletePreview();
setStatus(SetLength);
} else if (checkCommand("number", c)) {
deletePreview();
setStatus(SetNumber);
}
break;
case SetLength: {
bool ok;
double l = RS_Math::eval(c, &ok);
if (ok) {
e->accept();
length = l;
} else {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid expression"));
}
RS_DIALOGFACTORY->requestOptions(this, true, true);
setStatus(lastStatus);
}
break;
case SetNumber: {
bool ok;
int n = (int)RS_Math::eval(c, &ok);
if (ok) {
e->accept();
if(n>0 && n<=200)
number = n;
else
RS_DIALOGFACTORY->commandMessage(tr("Number sector lines not in range: ", "number of bisector to create must be in [1, 200]")+QString::number(n));
} else {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid expression"));
}
RS_DIALOGFACTORY->requestOptions(this, true, true);
setStatus(lastStatus);
}
break;
default:
break;
}
}
示例8: cleanAllNodes
void cleanAllNodes(Node *node)
{
foundNodesMap.clear();
updateNodesMap.clear();
if (checkCommand(MemoryUsage))
Log::error("Allocations before cleanup: %d", allocations);
cleanNodes(node);
if (checkCommand(MemoryUsage))
Log::error("Allocations after cleanup: %d", allocations);
}
示例9: getAvailableCommands
void RS_ActionDrawFlower::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
}
return;
}
switch (getStatus()) {
case SetCenter:
if (checkCommand("radius", c)) {
deletePreview();
setStatus(SetRadius);
}
break;
case SetRadius: {
bool ok;
double r = RS_Math::eval(c, &ok);
if (ok==true) {
data.radius = r;
} else {
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->commandMessage(
tr("Not a valid expression"));
}
}
setStatus(SetPetal);
}
break;
case SetPetal:{
bool ok;
int r = RS_Math::eval(c, &ok);
if (ok==true) {
petal=r;
}else {
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->commandMessage(
tr("Not a valid expression"));
}
}
trigger();
setStatus(SetCenter);
}
break;
default:
break;
}
}
示例10: main
int main(int argc, char** argv)
{
if (argc < 3)
{
Usage(argv[0]);
exit(-1);
}
try
{
std::pair<std::string, std::string> fileNames = GenerateFiles(argv[2]);
int c = 0;
Configuration::Instance().LoadConfiguration(argv[1]);
Logger::Instance().Init(fileNames.first);
Logger::Instance().AddNecessaryMessage(Configuration::Instance().GetDump());
Logger::Instance().AddNecessaryMessage((std::string("\n\nSetup Description:\n---------------------\n ") + argv[3] + "\n\n").c_str());
EventHandlerAcquisition eventHandler(fileNames.second);
DigitizerManager digitizerManager(eventHandler);
digitizerManager.InitAndConfigure();
digitizerManager.Start();
int i = 0;
while ( true)
{
try
{
digitizerManager.Acquire();
}
catch (ExceptionBase& ex)
{
printf("%s\n", ex.What().c_str());
Logger::Instance().AddNecessaryMessage(ex.What() + "\n");
sleep(1);
}
c = checkCommand();
if (c == 1) break;
}
std::cout << "Press 'q' again to quit..."<< std::endl;
fflush(stdout);
do
{
c = checkCommand();
eventHandler.ProcessEvents();
}while (c != 1);
}
catch(ExceptionBase& ex)
{
std::cout << "CAUGHT EXCEPTION. Details:\t" << ex.What() << std::endl << "Exiting..." << std::endl;
return -1;
}
return 0;
}
示例11: fabs
bool AssistedSteering::findValidCmd(geometry_msgs::Twist* twist)
{
float lv = twist->linear.x;
float av = twist->angular.z;
float aux_lv = lv;
float aux_av = av;
//float ang_inc = 0.15;
//float lin_inc = 0.1;
float slot = 0.0;
//if(lv > 0.0) {
//Linear vels
for(unsigned int i=0; i<3; i++)
{
aux_lv = fabs(lv) - (lin_vel_inc_*i);
if(lv < 0.0){
aux_lv *= (-1);
}
//Angular vels
for(unsigned int j=1; j<=3; j++)
{
aux_av = av + (ang_vel_inc_*j);
twist->linear.x = aux_lv;
twist->angular.z = aux_av;
if(checkCommand(twist)) {
printf("Correct velocities found!!! lv:%.3f, av:%.3f\n", twist->linear.x, twist->angular.z);
return true;
}
printf("Velocities lv:%.3f, av:%.3f not valid\n", twist->linear.x, twist->angular.z);
aux_av = av - (ang_vel_inc_*j);
twist->linear.x = aux_lv;
twist->angular.z = aux_av;
if(checkCommand(twist)) {
printf("Correct velocities found!!! lv:%.3f, av:%.3f\n", twist->linear.x, twist->angular.z);
return true;
}
printf("Velocities lv:%.3f, av:%.3f not valid\n", twist->linear.x, twist->angular.z);
}
}
//}
twist->linear.x = 0.0;
twist->angular.z = 0.0;
printf("Collision! Stopping the robot!!!\n");
return false;
}
示例12: getAvailableCommands
void RS_ActionDrawLineAngle::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
return;
}
switch (getStatus()) {
case SetPos:
if (!fixedAngle && checkCommand("angle", c)) {
deletePreview();
setStatus(SetAngle);
} else if (checkCommand("length", c)) {
deletePreview();
setStatus(SetLength);
}
break;
case SetAngle: {
bool ok;
double a = RS_Math::eval(c, &ok);
if (ok) {
e->accept();
angle = RS_Math::deg2rad(a);
} else {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid expression"));
}
RS_DIALOGFACTORY->requestOptions(this, true, true);
setStatus(SetPos);
}
break;
case SetLength: {
bool ok;
double l = RS_Math::eval(c, &ok);
if (ok) {
e->accept();
length = l;
} else {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid expression"));
}
RS_DIALOGFACTORY->requestOptions(this, true, true);
setStatus(SetPos);
}
break;
default:
break;
}
}
示例13: getAvailableCommands
void RS_ActionDrawLinePolygon2::commandEvent(RS_CommandEvent* e) {
RS_String c = e->getCommand().lower();
if (checkCommand("help", c)) {
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
}
return;
}
switch (getStatus()) {
case SetCorner1:
case SetCorner2:
if (checkCommand("number", c)) {
deleteSnapper();
deletePreview();
clearPreview();
lastStatus = (Status)getStatus();
setStatus(SetNumber);
}
break;
case SetNumber: {
bool ok;
int n = c.toInt(&ok);
if (ok==true) {
if (n>0 && n<10000) {
number = n;
} else {
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid number. "
"Try 1..9999"));
}
}
} else {
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid expression."));
}
}
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->requestOptions(this, true, true);
}
setStatus(lastStatus);
}
break;
default:
break;
}
}
示例14: getAvailableCommands
void RS_ActionDimLinear::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().toLower();
if (checkCommand("help", c)) {
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", "));
}
return;
}
switch (getStatus()) {
case SetText:
setText(c);
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->requestOptions(this, true, true);
}
graphicView->enableCoordinateInput();
setStatus(lastStatus);
break;
case SetAngle: {
bool ok;
double a = RS_Math::eval(c, &ok);
if (ok==true) {
setAngle(RS_Math::deg2rad(a));
} else {
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->commandMessage(tr("Not a valid expression"));
}
}
if (RS_DIALOGFACTORY!=NULL) {
RS_DIALOGFACTORY->requestOptions(this, true, true);
}
setStatus(lastStatus);
}
break;
default:
lastStatus = (Status)getStatus();
deletePreview();
if (checkCommand("text", c)) {
graphicView->disableCoordinateInput();
setStatus(SetText);
return;
} else if (!fixedAngle && (checkCommand("angle", c))) {
setStatus(SetAngle);
}
break;
}
}
示例15: setBlackWhite
void RS_ActionPrintPreview::commandEvent(RS_CommandEvent* e) {
QString c = e->getCommand().trimmed().toLower();
// qDebug()<<"cmd="<<c;
if (checkCommand("blackwhite", c)) {
setBlackWhite(true);
RS_DIALOGFACTORY->commandMessage(tr("Printout in Black/White"));
e->accept();
return;
} else if (checkCommand("color", c)) {
setBlackWhite(false);
RS_DIALOGFACTORY->commandMessage(tr("Printout in color"));
e->accept();
return;
} else if (checkCommand("graphoffset", c)) {
m_bPaperOffset=false;
RS_DIALOGFACTORY->commandMessage(tr("Printout offset in graph coordinates"));
e->accept();
return;
} else if (checkCommand("paperoffset", c)) {
m_bPaperOffset=true;
RS_DIALOGFACTORY->commandMessage(tr("Printout offset in paper coordinates"));
e->accept();
return;
} else if (checkCommand("help", c)) {
RS_DIALOGFACTORY->commandMessage(msgAvailableCommands()
+ getAvailableCommands().join(", ")+tr(": select printout offset coordinates")+
"\n"+tr("type in offset from command line to offset printout")
);
e->accept();
return;
}
//coordinate event
if (c.contains(',')) {
if(c.startsWith('@')) {
RS_DIALOGFACTORY->commandMessage(tr("Printout offset ignores relative zero. Ignoring '@'"));
c.remove(0, 1);
}
// qDebug()<<"offset by absolute coordinate: ";
const int commaPos = c.indexOf(',');
bool ok1, ok2;
double x = RS_Math::eval(c.left(commaPos), &ok1);
double y = RS_Math::eval(c.mid(commaPos+1), &ok2);
if (ok1 && ok2) {
RS_CoordinateEvent ce(RS_Vector(x,y));
this->coordinateEvent(&ce);
e->accept();
}
}
}