Re: Development of cross-platform GUI for Open Source DBs - Mailing list pgsql-general

From John McCawley
Subject Re: Development of cross-platform GUI for Open Source DBs
Date
Msg-id 456DA3F7.4050208@hardgeus.com
Whole thread Raw
In response to Re: Development of cross-platform GUI for Open Source DBs  ("Ritesh Nadhani" <rn.mailing@gmail.com>)
Responses Re: Development of cross-platform GUI for Open Source DBs
List pgsql-general
I have been struggling with this problem for a few years.  I have
written a basic relational database design tool:

http://www.hardgeus.com/pgdesigner/

I have completely rewritten this program 3 times.  I initially
implemented it in Fltk, but ran into a bunch of limitations in the API.
I rewrote it in WxGTK and was pretty happy with the results -- until I
ported to Windows.  My program was so abysmally broken in Windows that I
threw the code away and vowed never again to use WxWidgets.  I recently
ported the entire codebase over to QT4 and have been VERY happy with it.

Unfortunately, my love for QT4 has put my project into a bit of a
limbo...Most versions of Linux don't "play nice" with multiple versions
of the same API on the machine, and most Linux distros use QT3 since
that's the underlying API of KDE.    I already get a ton of mail from
people trying to compile the old versions of PGDesigner, I'd hate to
think what would happen if I tried to release my QT4 version now...My
build setup is pretty nuts, to say the least:

http://www.hardgeus.com/index.php?ndailyupdateid=685

It sucks, because I use pgDesigner almost every day to visualize my
Postgres databases, but QT4 just isn't "there" enough for me to support it.

Anyway, you didn't ask for a novel...I would recommend QT3 for your
project.  I am not entirely certain how much I am using is QT4 specific,
but I have been very happy with the signal/slot architecture, clean
database handling, and very robust variant-like variable handling (i.e.
I don't have to have giant bloated type-checking when copying data out
of my database into a local variable).


Ritesh Nadhani wrote:

> Hey
>
> Sorry for the critical mistake. Pressed the SEND button too early. In
> the first para I meant:
>
> The reason I *want* to develop the project in wxWindows or a C/C++
> based toolkit is that in the end I would be able to compile a binary
> which will have least dependency and can be bundled for downloaded in
> a single binary. With my experience while developing and selling
> SQLyog, I came across many customers who were working on a slow dial
> up connection for whom downloaded a 10MB package was also a pain. I
> have had customers who just had plain vanilla Win98 machines and
> SQLyog used to run great on it.
>
> instead of:
>
> The reason I *don't want* to develop the project in wxWindows or a C/C++
> based toolkit is that in the end I would be able to compile a binary
> which will have least dependency and can be bundled for downloaded in
> a single binary. With my experience while developing and selling
> SQLyog, I came across many customers who were working on a slow dial
> up connection for whom downloaded a 10MB package was also a pain. I
> have had customers who just had plain vanilla Win98 machines and
> SQLyog used to run great on it.
>
> Ritesh
>
> On 11/28/06, Ritesh Nadhani <rn.mailing@gmail.com> wrote:
>
>> Hello All
>>
>> Sorry for the late reply. Been a little busy with my assignments.
>>
>> I will try to answer all the queries in this mail.
>>
>> The reason I don't want to develop the project in wxWindows or a C/C++
>> based toolkit is that in the end I would be able to compile a binary
>> which will have least dependency and can be bundled for downloaded in
>> a single binary. With my experience while developing and selling
>> SQLyog, I came across many customers who were working on a slow dial
>> up connection for whom downloaded a 10MB package was also a pain. I
>> have had customers who just had plain vanilla Win98 machines and
>> SQLyog used to run great on it.
>>
>> Another reason why suggested wxWidgets is because I have worked with
>> it before and I am comfortable with the system. As somebody suggested,
>> even wxPython looks good as Python greatly increases the speed of
>> implementation.
>>
>> Also, IDEs like Delphi etc. are out of question as I cant afford to
>> buy the licenses.
>>
>> I have no experience with XUL but it looks good. I am not sure, how
>> easy is to design GUI with lots of forms etc, with XUL. Writing an
>> initial prototype in XUL will make things more clear.
>>
>> Even though I am not related to Webyog (developer of SQLyog) anymore,
>> I had started a project up there called SQLyog Max (which didn't work
>> due to time constraints rather then technological constraints) and we
>> even released one BETA release that had support for both MySQL and
>> PostgreSQL.
>>
>> I believe developing an actual prototype would help our cause more
>> then just deciding upon which tool kit to use. My semester gets over
>> on 15th December. I plan to sit with it after that. Right now I am
>> thinking of an architecture which can support something like this.
>>
>> If you have any idea how something like should be designed or
>> architectured, please provide me with your invaluable suggestions.
>>
>> In other related question, my primary desktop of usage is Mac OS X but
>> I will be buying a Ubuntu box soon so expect decent development
>> parallely in Mac and Linux. I am not sure about Windows but if we
>> write correct wxWidgets/wxPython code, it should be a 0 issue to get
>> it compiled in Windows.
>>
>> Ritesh
>>
>> On 11/28/06, Rich Shepard <rshepard@appl-ecosys.com> wrote:
>> > On Tue, 28 Nov 2006, Merlin Moncure wrote:
>> >
>> > > For a general purpose language, lately I've been taking a really
>> good look
>> > > at 'D', which looks to be an amazing language.  Has anybody tried
>> to hook
>> > > up postgresql to D?
>> >
>> >    No, I haven't. But, if you want a cross-platform language and
>> GUI toolkit,
>> > consider Python and wxPython.
>> >
>> > --
>> > Richard B. Shepard, Ph.D.               |    The Environmental
>> Permitting
>> > Applied Ecosystem Services, Inc.(TM)    |            Accelerator
>> > <http://www.appl-ecosys.com>     Voice: 503-667-4517      Fax:
>> 503-667-8863
>> >
>> > ---------------------------(end of
>> broadcast)---------------------------
>> > TIP 3: Have you checked our extensive FAQ?
>> >
>> >                http://www.postgresql.org/docs/faq
>> >
>>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>               http://www.postgresql.org/docs/faq


pgsql-general by date:

Previous
From: Richard Huxton
Date:
Subject: Re: Looking for pgsql sysadmin
Next
From: "Merlin Moncure"
Date:
Subject: Re: backend crash following load command