当前位置: 首页>>代码示例>>C++>>正文


C++ checkCommand函数代码示例

本文整理汇总了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;
    }
}
开发者ID:Rupicapra-rupicapra,项目名称:LibreCAD,代码行数:35,代码来源:rs_actionmodifymoverotate.cpp

示例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;
    }
}
开发者ID:ASF-inhambane,项目名称:LibreCAD,代码行数:35,代码来源:rs_actiondrawcirclecr.cpp

示例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;
    }
}
开发者ID:Harpalus,项目名称:LibreCAD,代码行数:34,代码来源:rs_actiondrawtext.cpp

示例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;
    }
}
开发者ID:0825732889,项目名称:LibreCAD,代码行数:30,代码来源:rs_actiondrawspline.cpp

示例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;
    }
}
开发者ID:Aly1029,项目名称:LibreCAD,代码行数:27,代码来源:rs_actiondimaligned.cpp

示例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);
    }
}
开发者ID:CERobertson,项目名称:LibreCAD,代码行数:25,代码来源:rs_actiondimangular.cpp

示例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;
    }
}
开发者ID:Harpalus,项目名称:LibreCAD,代码行数:58,代码来源:rs_actiondrawlinebisector.cpp

示例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);
}
开发者ID:4144,项目名称:paranucker,代码行数:10,代码来源:generic.cpp

示例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;
    }
}
开发者ID:priyankacool10,项目名称:LibreCAD,代码行数:55,代码来源:rs_actiondrawflower.cpp

示例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;
}
开发者ID:davereikher,项目名称:pps-daq,代码行数:54,代码来源:main_acquisition.cpp

示例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;
}
开发者ID:robotics-upo,项目名称:upo_robot_navigation,代码行数:52,代码来源:AssistedSteering.cpp

示例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;
    }
}
开发者ID:ASF-inhambane,项目名称:LibreCAD,代码行数:52,代码来源:rs_actiondrawlineangle.cpp

示例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;
    }
}
开发者ID:Akaur,项目名称:qdraw,代码行数:51,代码来源:rs_actiondrawlinepolygon2.cpp

示例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;
    }
}
开发者ID:0825732889,项目名称:LibreCAD,代码行数:51,代码来源:rs_actiondimlinear.cpp

示例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();
        }
    }
}
开发者ID:tytower,项目名称:LibreCAD,代码行数:50,代码来源:rs_actionprintpreview.cpp


注:本文中的checkCommand函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。