New cross-platform GUI committed

View: New views
9 Messages — Rating Filter:   Alert me  

New cross-platform GUI committed

by Robert Lipe-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I've now committed a new GUI written in Trolltech/Nokia's Qt cross-platform GUI contributed by Khai Mong.  It has new tricks  like intelligent use of Google Maps and exposes many features in our filters.

Those of you that have been here a while know that the GUIs have been one of the longest-running sources of problems for us.  After a lot of thrash in the early days, we iterated down to two - Olaf's for Windows and Karl's on Mac that have held up pretty well, but they're different and they really have nothing in common.  Additionally, maintenance has been done by a single developer on each platform just because they're each written in an uncommon toolkit that most hobbyists don't have and aren't familiar with.  

Qt isn't without problems, but it has the advantage of being free to use, being well documented (there are several books available on it), having a large user/developer base, having functional cross-platform ports, and being C++ so it's not totally alien to most of our developers.  

If you're interested in experimenting with it, here's the nickel tour.  Just

$ cvs up -d  

to get the new 'gui' directory.

You'll need the Qt development kit for your OS.  Free download for Windows, Mac, and Linux is at.  http://www.qtsoftware.com/downloads/   Most Linux strains come with their own Qt.



$ cd gui
$ qmake     # This tells Qt to read app.pro and build msvc build files or xcodeproj files or Makefiles or whatever your system considers "native"
[ now do whatever you do to run any of those; F8 or xcodebuild or make or whatever. ]

In the objects/ directory, you should now have a GUI that's ready to rock.



There are still lots of things to work through like moving those top two buttions into a menu, improving look-and-feel, working through the (substantial) binary distribution issues, better identification of available serial ports, ports, improving build integration, and generally shaking things down but now that things are in the tree, I'm hopeful that others can help shake these things out.  Right now it's "developer only" but later we'll distribute beta binaries.

So please check it out.

Thanx, Khai!
RJL

------------------------------------------------------------------------------

_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code

Re: New cross-platform GUI committed

by Greg Troxel :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


The qt gui sounds interesting and I'll check it out at some point.

A plea from the "pkgsrc gpsbabel maintainer" viewpoint: qt is huge, and
many people won't want it.  So what I'd like to be able to do is build
gpsbabel without needing any qt things installed, and of course just get
the command-line version.  And then, to build the gui with a different
./configure line.  It would be fine if the gui build assumed that the
command-line version was already installed.  We'd end up with a gpsbabel
package and then gpsbabel-qt or some other name for the gui.  The
gpsbabel package itself would not depend on qt.

I realize that some packaging systems have the package build depend on
everything and then have split packages for various pieces.  This
strategy works well when 99.9% of the people install distributed
binaries but doesn't work well for packaging systems where the normal
path is building from source and some machines are not that capable
(cross building, old cpus, etc.).


------------------------------------------------------------------------------

_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code

attachment0 (199 bytes) Download Attachment

Parent Message unknown Re: New cross-platform GUI committed

by Robert Lipe-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



On Mon, Jul 6, 2009 at 1:27 AM, Andreas Loeffler <lefty01@...> wrote:
GREAT ... gpsbabel really rocks.

Thanx
 
tried compiling the gui under Linux/x86_64(ubuntu) and get an error
about some missing file 'ui_advui.h' is that something missing from
cvs ?

g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT  -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I/usr/include/qt3 -Itmp/ -I. -Iobjects/ -o objects/advdlg.o advdlg.cpp
advdlg.cpp:22:23: error: QMessageBox: No such file or directory
advdlg.cpp:23:20: error: QProcess: No such file or directory
advdlg.cpp:24:23: error: QFileDialog: No such file or directory
advdlg.cpp:25:21: error: QSettings: No such file or directory
In file included from advdlg.cpp:26:
advdlg.h:25:22: error: ui_advui.h: No such file or directory
In file included from advdlg.cpp:26:


Nope.  It's not missing from our tree.    It's a generated file.  You're the second Linux developer to report that his Linux system includes the old and unsupported Qt3 by default instead of the current Qt4.   At least on Fedora, Qt4 is an installable package:

http://www.rpmfind.net/linux/rpm2html/search.php?query=qt&submit=Search+...&system=&arch=

For Ubuntu, the recipe looks to be
sudo apt-get install qt4


RJL

------------------------------------------------------------------------------

_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code

Re: New cross-platform GUI committed

by Robert Lipe-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Mon, Jul 6, 2009 at 6:47 AM, Greg Troxel <gdt@...> wrote:

many people won't want it.  So what I'd like to be able to do is build
gpsbabel without needing any qt things installed, and of course just get

Right now, they're completely independent.   They may intertwine closer in the future, but I don't forsee discontinuing a standalone, command line version.
 
binaries but doesn't work well for packaging systems where the normal
path is building from source and some machines are not that capable
(cross building, old cpus, etc.).

I hear you, but that "99.9" number when it comes to people that actually build is pretty compelling.  If a cross build or an old CPU is too wimpy to build a GUI, it just shouldn't be used.

RJL

------------------------------------------------------------------------------

_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code

Re: New cross-platform GUI committed

by Greg Troxel :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Robert Lipe <robertlipe@...> writes:

> On Mon, Jul 6, 2009 at 6:47 AM, Greg Troxel <gdt@...> wrote:
>
> many people won't want it.  So what I'd like to be able to do is build
>> gpsbabel without needing any qt things installed, and of course just get
>
> Right now, they're completely independent.   They may intertwine closer in
> the future, but I don't forsee discontinuing a standalone, command line
> version.

OK, sounds good - thanks for listening.

>> binaries but doesn't work well for packaging systems where the normal
>> path is building from source and some machines are not that capable
>> (cross building, old cpus, etc.).
>
> I hear you, but that "99.9" number when it comes to people that actually
> build is pretty compelling.  If a cross build or an old CPU is too wimpy to
> build a GUI, it just shouldn't be used.

On Linux and Mac, I realize that hardly ever do people build things
themselves.  On BSD, the usage patters are different and many people
build from source, particularly on non-i386.

My real point is that there are machines for which it's normal to build
From source and that building command-line programs works fine but
building qt or even spending the disk space to have it installed is
annoying.

Part of my sensitivity comes from using gpsd in an embedded situation.
No need for gpsbabel there yet, and I realize it's more of a
postprocess/desktop program.


------------------------------------------------------------------------------

_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code

attachment0 (199 bytes) Download Attachment

Re: New cross-platform GUI committed

by Khai Mong :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello everyone,

This is just a start in getting a single toolkit UI across the three major platforms, Windows, Linux and Mac, and the first order was to be able to replicate 99% of what is in the current GUI programs.

The interface to Google Maps is hidden in the "More Options" dialog.

Please feel free put in suggestions for improvements in the GUI.

Khai

On Sun, Jul 5, 2009 at 9:32 PM, Robert Lipe <robertlipe@...> wrote:
I've now committed a new GUI written in Trolltech/Nokia's Qt cross-platform GUI contributed by Khai Mong.  It has new tricks  like intelligent use of Google Maps and exposes many features in our filters.

Those of you that have been here a while know that the GUIs have been one of the longest-running sources of problems for us.  After a lot of thrash in the early days, we iterated down to two - Olaf's for Windows and Karl's on Mac that have held up pretty well, but they're different and they really have nothing in common.  Additionally, maintenance has been done by a single developer on each platform just because they're each written in an uncommon toolkit that most hobbyists don't have and aren't familiar with.  

Qt isn't without problems, but it has the advantage of being free to use, being well documented (there are several books available on it), having a large user/developer base, having functional cross-platform ports, and being C++ so it's not totally alien to most of our developers.  

If you're interested in experimenting with it, here's the nickel tour.  Just

$ cvs up -d  

to get the new 'gui' directory.

You'll need the Qt development kit for your OS.  Free download for Windows, Mac, and Linux is at.  http://www.qtsoftware.com/downloads/   Most Linux strains come with their own Qt.



$ cd gui
$ qmake     # This tells Qt to read app.pro and build msvc build files or xcodeproj files or Makefiles or whatever your system considers "native"
[ now do whatever you do to run any of those; F8 or xcodebuild or make or whatever. ]

In the objects/ directory, you should now have a GUI that's ready to rock.



There are still lots of things to work through like moving those top two buttions into a menu, improving look-and-feel, working through the (substantial) binary distribution issues, better identification of available serial ports, ports, improving build integration, and generally shaking things down but now that things are in the tree, I'm hopeful that others can help shake these things out.  Right now it's "developer only" but later we'll distribute beta binaries.

So please check it out.

Thanx, Khai!
RJL


------------------------------------------------------------------------------

_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code

Re: New cross-platform GUI committed

by Bernd Zeimetz :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Robert Lipe wrote:
> For Ubuntu, the recipe looks to be
>
> sudo apt-get install qt4

libqt4-dev is the package you need to build qt4 stuff.
Also make sure to use qmake-qt4 and friends as qmake may point to the qt3 files
in case you've installed both of them.

The next upload of gpsbabel to Debian will contain the gui, of course. Should
migrate to Ubuntu then, too.

--
 Bernd Zeimetz                             Debian GNU/Linux Developer
 GPG Fingerprints: 06C8 C9A2 EAAD E37E 5B2C BE93 067A AD04 C93B FF79
                   ECA1 E3F2 8E11 2432 D485 DD95 EB36 171A 6FF9 435F

------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time,
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code

Re: New cross-platform GUI committed

by Robert Lipe-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



On Mon, Jul 6, 2009 at 1:37 PM, Khai Mong <khai@...> wrote:
Hello everyone,

This is just a start in getting a single toolkit UI across the three major platforms, Windows, Linux and Mac, and the first order was to be able to replicate 99% of what is in the current GUI programs.

I've committed several minor changes to the Qt GUI over the weekend, improving device support and making the maps actually work in a default build..   A strong desire to promite MainDlg fro a QWidget to a QMainWindow remains, so that menus work sensibly and it "looks right" on a Mac, in particular..   I'll be removing those buttons from the top row as soon as we do..


Mac developers can now
  make mac-gui-dmg && open gui/objects/*dmg   to exercise the universal (and depressingly large) dmg that contains the app and all the necessary libs.

A lighterweight approach for development is
  make mac-gui && open gui/objects/gpsbabelfe-bin.app

If you're working on just the GUI, it's even lighterweight to run xcodebuild or crank off a build/run w/in the XCode GUI....

RJL
 


 

The interface to Google Maps is hidden in the "More Options" dialog.

Please feel free put in suggestions for improvements in the GUI.

Khai


On Sun, Jul 5, 2009 at 9:32 PM, Robert Lipe <robertlipe@...> wrote:
I've now committed a new GUI written in Trolltech/Nokia's Qt cross-platform GUI contributed by Khai Mong.  It has new tricks  like intelligent use of Google Maps and exposes many features in our filters.

Those of you that have been here a while know that the GUIs have been one of the longest-running sources of problems for us.  After a lot of thrash in the early days, we iterated down to two - Olaf's for Windows and Karl's on Mac that have held up pretty well, but they're different and they really have nothing in common.  Additionally, maintenance has been done by a single developer on each platform just because they're each written in an uncommon toolkit that most hobbyists don't have and aren't familiar with.  

Qt isn't without problems, but it has the advantage of being free to use, being well documented (there are several books available on it), having a large user/developer base, having functional cross-platform ports, and being C++ so it's not totally alien to most of our developers.  

If you're interested in experimenting with it, here's the nickel tour.  Just

$ cvs up -d  

to get the new 'gui' directory.

You'll need the Qt development kit for your OS.  Free download for Windows, Mac, and Linux is at.  http://www.qtsoftware.com/downloads/   Most Linux strains come with their own Qt.



$ cd gui
$ qmake     # This tells Qt to read app.pro and build msvc build files or xcodeproj files or Makefiles or whatever your system considers "native"
[ now do whatever you do to run any of those; F8 or xcodebuild or make or whatever. ]

In the objects/ directory, you should now have a GUI that's ready to rock.



There are still lots of things to work through like moving those top two buttions into a menu, improving look-and-feel, working through the (substantial) binary distribution issues, better identification of available serial ports, ports, improving build integration, and generally shaking things down but now that things are in the tree, I'm hopeful that others can help shake these things out.  Right now it's "developer only" but later we'll distribute beta binaries.

So please check it out.

Thanx, Khai!
RJL


------------------------------------------------------------------------------

_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code



------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time,
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code

Re: New cross-platform GUI committed

by Khai Mong :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I will take care of converting it to MainWindow in the next few days.

Khai

On Mon, Jul 20, 2009 at 1:58 AM, Robert Lipe <robertlipe@...> wrote:


On Mon, Jul 6, 2009 at 1:37 PM, Khai Mong <khai@...> wrote:
Hello everyone,

This is just a start in getting a single toolkit UI across the three major platforms, Windows, Linux and Mac, and the first order was to be able to replicate 99% of what is in the current GUI programs.

I've committed several minor changes to the Qt GUI over the weekend, improving device support and making the maps actually work in a default build..   A strong desire to promite MainDlg fro a QWidget to a QMainWindow remains, so that menus work sensibly and it "looks right" on a Mac, in particular..   I'll be removing those buttons from the top row as soon as we do..


Mac developers can now
  make mac-gui-dmg && open gui/objects/*dmg   to exercise the universal (and depressingly large) dmg that contains the app and all the necessary libs.

A lighterweight approach for development is
  make mac-gui && open gui/objects/gpsbabelfe-bin.app

If you're working on just the GUI, it's even lighterweight to run xcodebuild or crank off a build/run w/in the XCode GUI....

RJL
 


 

The interface to Google Maps is hidden in the "More Options" dialog.

Please feel free put in suggestions for improvements in the GUI.

Khai


On Sun, Jul 5, 2009 at 9:32 PM, Robert Lipe <robertlipe@...> wrote:
I've now committed a new GUI written in Trolltech/Nokia's Qt cross-platform GUI contributed by Khai Mong.  It has new tricks  like intelligent use of Google Maps and exposes many features in our filters.

Those of you that have been here a while know that the GUIs have been one of the longest-running sources of problems for us.  After a lot of thrash in the early days, we iterated down to two - Olaf's for Windows and Karl's on Mac that have held up pretty well, but they're different and they really have nothing in common.  Additionally, maintenance has been done by a single developer on each platform just because they're each written in an uncommon toolkit that most hobbyists don't have and aren't familiar with.  

Qt isn't without problems, but it has the advantage of being free to use, being well documented (there are several books available on it), having a large user/developer base, having functional cross-platform ports, and being C++ so it's not totally alien to most of our developers.  

If you're interested in experimenting with it, here's the nickel tour.  Just

$ cvs up -d  

to get the new 'gui' directory.

You'll need the Qt development kit for your OS.  Free download for Windows, Mac, and Linux is at.  http://www.qtsoftware.com/downloads/   Most Linux strains come with their own Qt.



$ cd gui
$ qmake     # This tells Qt to read app.pro and build msvc build files or xcodeproj files or Makefiles or whatever your system considers "native"
[ now do whatever you do to run any of those; F8 or xcodebuild or make or whatever. ]

In the objects/ directory, you should now have a GUI that's ready to rock.



There are still lots of things to work through like moving those top two buttions into a menu, improving look-and-feel, working through the (substantial) binary distribution issues, better identification of available serial ports, ports, improving build integration, and generally shaking things down but now that things are in the tree, I'm hopeful that others can help shake these things out.  Right now it's "developer only" but later we'll distribute beta binaries.

So please check it out.

Thanx, Khai!
RJL


------------------------------------------------------------------------------


_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code




------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time,
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Gpsbabel-code mailing list  http://www.gpsbabel.org
Gpsbabel-code@...
https://lists.sourceforge.net/lists/listinfo/gpsbabel-code