References QGpCoreTools::endl(), WaranGpsWidget::Gps, help(), mode, WaranGpsWidget::NoGps, WaranGpsWidget::setCoordinates(), WaranGpsWidget::setGpsStations(), WaranGpsWidget::setMode(), QGpCoreTools::CoreApplicationPrivate::setStream(), QGpCoreTools::tr(), and w.
{
Application a(argc, argv, help);
WaranGpsWidget::Mode mode=WaranGpsWidget::NoGps;
QString stationFile;
QString coordinateFormat;
qint16 port=2974;
int i, j=1;
for(i=1; i<argc; i++) {
QByteArray arg=argv[i];
if(arg[0]=='-') {
if(arg=="-no-gps") {
mode=WaranGpsWidget::NoGps;
} else if(arg=="-gps") {
mode=WaranGpsWidget::Gps;
} else if(arg=="-format") {
CoreApplication::checkOptionArg(i, argc, argv);
coordinateFormat=argv[i];
} else if(arg=="-port") {
CoreApplication::checkOptionArg(i, argc, argv);
port=atoi(argv[i]);
} else {
App::stream() << tr("warangps: bad option %1, see -help").arg(argv[i]) << endl;
return 2;
}
} else {
argv[j++]=argv[i];
}
}
if(j < argc) {
argv[j]=0;
argc=j;
}
if(argc>2) {
App::stream() << tr("No more than one file accepted for station list") << endl;
return 2;
}
if(argc==2) {
stationFile=argv[1];
}
a.setStream(new StandardStream(stdout));
SciFigsGlobal s;
WaranGpsWidget * w=new WaranGpsWidget;
w->setObjectName( "warangps" );
Settings::getWidget(w, "warangps");
w->show();
if(mode==WaranGpsWidget::NoGps) {
if(stationFile.isEmpty()) {
w->tab->setCurrentIndex(0);
} else {
w->setCoordinates(stationFile, coordinateFormat);
}
} else if(!stationFile.isEmpty()){
w->setGpsStations(port);
}
w->setMode(mode);
w->arrayCoordinateFactor->setValue(1.0);
int appReturn=a.exec();
Settings::setWidget(w, "warangps");
delete w;
return appReturn;
}