17
17
/* $Id: qgisapp.h 12390 2009-12-09 21:35:43Z jef $ */
18
18
#include " qgsgpsinformationwidget.h"
19
19
#include " qgsvectorlayer.h"
20
- #include " qextserialport.h"
21
20
#include " qgsnmeaconnection.h"
22
21
#include " qgsgpstrackerthread.h"
23
22
#include " qgscoordinatetransform.h"
@@ -308,13 +307,7 @@ void QgsGPSInformationWidget::connectGps()
308
307
{
309
308
if ( !mCboDevices ->currentText ().isEmpty () )
310
309
{
311
- mSerialPort = new QextSerialPort ( mCboDevices ->currentText () );
312
- mSerialPort ->setBaudRate ( BAUD4800 );
313
- mSerialPort ->setFlowControl ( FLOW_OFF );
314
- mSerialPort ->setParity ( PAR_NONE );
315
- mSerialPort ->setDataBits ( DATA_8 );
316
- mSerialPort ->setStopBits ( STOP_2 );
317
- mNmea = new QgsNMEAConnection ( mSerialPort , 500 );
310
+ mNmea = new QgsNMEAConnection ( mCboDevices ->currentText (), 500 );
318
311
QObject::connect ( mNmea , SIGNAL ( stateChanged ( const QgsGPSInformation& ) ),
319
312
this , SLOT ( displayGPSInformation ( const QgsGPSInformation& ) ) );
320
313
mThread = new QgsGPSTrackerThread ( mNmea );
@@ -329,7 +322,7 @@ void QgsGPSInformationWidget::connectGps()
329
322
mConnectButton ->setChecked ( false );
330
323
}
331
324
}
332
- else // autdetect
325
+ else // autodetect
333
326
{
334
327
mNmea = QgsGPSConnection::detectGPSConnection ();
335
328
if ( !mNmea )
@@ -861,86 +854,8 @@ void QgsGPSInformationWidget::on_mBtnRefreshDevices_clicked( )
861
854
/* Copied from gps plugin */
862
855
void QgsGPSInformationWidget::populateDevices ()
863
856
{
864
-
865
857
mCboDevices ->clear ();
866
- #ifdef linux
867
- // look for linux serial devices
868
- QString linuxDev ( " /dev/ttyS%1" );
869
- for ( int i = 0 ; i < 10 ; ++i )
870
- {
871
- if ( QFileInfo ( linuxDev.arg ( i ) ).exists () )
872
- {
873
- mCboDevices ->addItem ( linuxDev.arg ( i ) );
874
- }
875
- else
876
- break ;
877
- }
878
-
879
- // and the ttyUSB* devices (serial USB adaptor)
880
- linuxDev = " /dev/ttyUSB%1" ;
881
- for ( int i = 0 ; i < 10 ; ++i )
882
- {
883
- if ( QFileInfo ( linuxDev.arg ( i ) ).exists () )
884
- {
885
- mCboDevices ->addItem ( linuxDev.arg ( i ) );
886
- }
887
- else
888
- break ;
889
- }
890
-
891
- mCboDevices ->addItem ( " usb:" );
892
- #endif
893
-
894
- #ifdef __FreeBSD__ // freebsd
895
- // and freebsd devices (untested)
896
- QString freebsdDev ( " /dev/cuaa%1" );
897
- for ( int i = 0 ; i < 10 ; ++i )
898
- {
899
- if ( QFileInfo ( freebsdDev.arg ( i ) ).exists () )
900
- {
901
- mCboDevices ->addItem ( freebsdDev.arg ( i ) );
902
- }
903
- else
904
- break ;
905
- }
906
-
907
- // and the ucom devices (serial USB adaptors)
908
- freebsdDev = " /dev/ucom%1" ;
909
- for ( int i = 0 ; i < 10 ; ++i )
910
- {
911
- if ( QFileInfo ( freebsdDev.arg ( i ) ).exists () )
912
- {
913
- mCboDevices ->addItem ( freebsdDev.arg ( i ) );
914
- }
915
- else
916
- break ;
917
- }
918
-
919
- #endif
920
-
921
- #ifdef sparc
922
- // and solaris devices (also untested)
923
- QString solarisDev ( " /dev/cua/%1" );
924
- for ( int i = ' a' ; i < ' k' ; ++i )
925
- {
926
- if ( QFileInfo ( solarisDev.arg ( char ( i ) ) ).exists () )
927
- {
928
- mCboDevices ->addItem ( solarisDev.arg ( char ( i ) ) );
929
- }
930
- else
931
- break ;
932
- }
933
- #endif
934
-
935
- #ifdef WIN32
936
- mCboDevices ->addItem ( " com1" );
937
- mCboDevices ->addItem ( " com2" );
938
- mCboDevices ->addItem ( " com3" );
939
- mCboDevices ->addItem ( " com4" );
940
- mCboDevices ->addItem ( " usb:" );
941
- #endif
942
-
943
- // OSX, OpenBSD, NetBSD etc? Anyone?
858
+ mCboDevices ->addItems ( QgsGPSConnection::availablePorts () );
944
859
945
860
// remember the last ports used
946
861
QSettings settings;
0 commit comments