2004-03-22 23:38:26 +00:00
|
|
|
/***************************************************************************
|
|
|
|
* Copyright (C) 2003 by Tim Sutton *
|
|
|
|
* tim@linfiniti.com *
|
|
|
|
* *
|
|
|
|
* This is a plugin generated from the QGIS plugin template *
|
|
|
|
* *
|
|
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
|
|
* it under the terms of the GNU General Public License as published by *
|
|
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
|
|
* (at your option) any later version. *
|
|
|
|
***************************************************************************/
|
|
|
|
#ifndef PLUGINGUI_H
|
|
|
|
#define PLUGINGUI_H
|
|
|
|
|
2004-06-21 11:49:58 +00:00
|
|
|
#include "../../src/qgsvectorlayer.h"
|
|
|
|
#include "pluginguibase.h"
|
2004-10-21 22:24:31 +00:00
|
|
|
#include "qgsbabelformat.h"
|
2004-03-22 23:38:26 +00:00
|
|
|
|
2004-06-14 22:37:38 +00:00
|
|
|
#include <vector>
|
|
|
|
|
2004-06-18 23:11:45 +00:00
|
|
|
#include <qstring.h>
|
|
|
|
|
2004-06-14 22:37:38 +00:00
|
|
|
|
2004-03-22 23:38:26 +00:00
|
|
|
/**
|
|
|
|
@author Tim Sutton
|
|
|
|
*/
|
|
|
|
class PluginGui : public PluginGuiBase
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
2004-10-21 22:24:31 +00:00
|
|
|
public:
|
|
|
|
PluginGui(const BabelMap& importers, BabelMap& devices,
|
|
|
|
std::vector<QgsVectorLayer*> gpxMapLayers, QWidget* parent,
|
|
|
|
const char* name , bool modal , WFlags);
|
|
|
|
~PluginGui();
|
2004-03-22 23:38:26 +00:00
|
|
|
|
2004-10-21 22:24:31 +00:00
|
|
|
public slots:
|
2004-03-22 23:38:26 +00:00
|
|
|
|
2004-10-21 22:24:31 +00:00
|
|
|
void openDeviceEditor();
|
|
|
|
void slotDevicesUpdated();
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
void pbnSelectInputFile_clicked();
|
|
|
|
void pbnSelectOutputFile_clicked();
|
|
|
|
|
|
|
|
void pbnGPXSelectFile_clicked();
|
|
|
|
|
|
|
|
void pbnIMPInput_clicked();
|
|
|
|
void pbnIMPOutput_clicked();
|
|
|
|
|
|
|
|
void pbnDLOutput_clicked();
|
|
|
|
|
|
|
|
void enableRelevantControls();
|
|
|
|
void pbnCancel_clicked();
|
|
|
|
void pbnOK_clicked();
|
|
|
|
|
|
|
|
void populateDeviceComboBox();
|
|
|
|
void populateULLayerComboBox();
|
|
|
|
void populateIMPBabelFormats();
|
|
|
|
void populatePortComboBoxes();
|
|
|
|
|
2004-03-22 23:38:26 +00:00
|
|
|
signals:
|
2004-10-21 22:24:31 +00:00
|
|
|
void drawRasterLayer(QString);
|
|
|
|
void drawVectorLayer(QString,QString,QString);
|
|
|
|
void loadGPXFile(QString filename, bool showWaypoints, bool showRoutes,
|
|
|
|
bool showTracks);
|
|
|
|
void importGPSFile(QString inputFilename, QgsBabelFormat* importer,
|
|
|
|
bool importWaypoints, bool importRoutes,
|
|
|
|
bool importTracks, QString outputFilename,
|
|
|
|
QString layerName);
|
|
|
|
void downloadFromGPS(QString device, QString port, bool downloadWaypoints,
|
|
|
|
bool downloadRoutes, bool downloadTracks,
|
|
|
|
QString outputFilename, QString layerName);
|
|
|
|
void uploadToGPS(QgsVectorLayer* gpxLayer, QString device, QString port);
|
|
|
|
|
2004-06-14 22:37:38 +00:00
|
|
|
private:
|
2004-10-21 22:24:31 +00:00
|
|
|
|
|
|
|
std::vector<QgsVectorLayer*> gpxLayers;
|
|
|
|
const BabelMap& mImporters;
|
|
|
|
BabelMap& mDevices;
|
|
|
|
QString babelFilter;
|
|
|
|
QString impFormat;
|
2004-03-22 23:38:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|