📄 trackpointeditorui.cpp
字号:
#include "trackPointEditorUI.h"#include <qlineedit.h>#include <qmessagebox.h>#include <qvalidator.h>#include <sstream>namespace gpsmgr { namespace ui { TrackPointEditorUI::TrackPointEditorUI(QWidget* parent, const char* name, bool modal, WFlags fl) : TrackPointEditorUIBase (parent, name, modal, fl) { mAltEdit->setValidator(new QDoubleValidator(this)); mTimeEdit->setValidator(new QIntValidator(this)); } TrackPointEditorUI::PointType TrackPointEditorUI::point() const { PointType rval; Latitude lat; istringstream latiss(mLatEdit->text()); latiss >> lat; Longitude lon; istringstream loniss(mLonEdit->text()); loniss >> lon; rval.setPosition(LatLon(lat, lon)); double alt; istringstream altiss(mAltEdit->text()); altiss >> alt; rval.setAltitude(alt); int time; istringstream timeiss(mTimeEdit->text()); timeiss >> time; rval.setTime(time); return rval; } void TrackPointEditorUI::setPoint(const PointType& pt) { ostringstream latoss; latoss << pt.position().lat(); mLatEdit->setText(latoss.str()); ostringstream lonoss; lonoss << pt.position().lon(); mLonEdit->setText(lonoss.str()); ostringstream altoss; altoss << pt.altitude(); mAltEdit->setText(altoss.str()); ostringstream timeoss; timeoss << pt.time(); mTimeEdit->setText(timeoss.str()); } void TrackPointEditorUI::accept() { using namespace gpsmgr::exceptions; try { PointType pt = point(); } catch (Exception<ParseError>& e) { QMessageBox::warning(this, "Invalid TrackPoint", e.what(), "OK"); return; } TrackPointEditorUIBase::accept(); } } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -