Im considering using wxWidgets, but... Topic is solved

This forum can be used to talk about general design strategies, new ideas and questions in general related to wxWidgets. If you feel your questions doesn't fit anywhere, put it here.
Post Reply
cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Im considering using wxWidgets, but...

Post by cpp »

Hello folks, im an independant software developer that writes apps for a living. I think C++ is the greatest language that ever was and ever will be, yet i now use Java, Why?? simply because i became sick of dealing with the worst atrocity man has ever created: MFC. I tried WTL (even made & sold a few apps made with it), and even tho its very nice and efficient, its just too lacking and completely unsupported, it just takes too much time to write an app with WTL, and so, not finding any decent library for creating my apps in C++, i switched to Java (i dint know about wxWidgets at the time).
Now after a some 9 months of using Java, (wich i teached my self in some 3 months), i find im missing the sheer VELOCITY of C++ made applications, Java is nice, but ibe seen Mountains move faster that my Java-made Apps, and to be honest, i dont like the whole "garbage collecing" concept at all.
And now eureka! i discover wxWidgets, all looks very promising, the only (major) problem i see is, i cant afford to spend years learning to use it, like i said, i do this for a living, and so i need to learn it as quickly as possible, the problem is that even tho there is quite a bit of information about it on this site, most of it seems to be scattered and isolated fragments of information, and even those are often labeled as "obsolete", there are some "tutorials", but seems that some are incomplete, and most are labeled as "obsolete" as well. There doesnt seem to be any tutorial that guides me through the basic concepts and strategies of wxWidgets. The reason i had little problem learning java quickly, is because of the excellent tutorial on their site "The Java Tutorial", it guides you from the basics, to the concepts and strategies for using Java, to some more "advanced" topics, all in a consistent linear matter.
And so the question is this:
Is there a wxWidgest Equivalent of "The Java Tutorial" ?? if so, where do i find it? I need a fast paced, linear tutorial that gives me a "crash course", on the basics & concepts of wxWidgets. Is there such tutorial?
Thanks!
cg
Filthy Rich wx Solver
Filthy Rich wx Solver
Posts: 201
Joined: Sun Aug 29, 2004 12:33 am
Location: Canada
Contact:

Post by cg »

I haven't read it myself but probably the best resource would be the book:

http://www.wxwidgets.org/book/index.htm

It was just recently released so it's up to date. Most of the tutorials are very out of date. There is going to be a bit learning curve with sizers and getting used to different window behaviour. It sounds like you are self taught so I don't imagine that being too much of a problem. If you ask for help you will usually get it in a short amount of time.

HTH

Chris


------------------------------------------------------------
Chinook Developer Studio
*Free multiplatform IDE for BSD.Linux.Solaris.Windows*
http://www.degarrah.com/chinookfree.php

Zephyr Automated Test Runner
*Cross platform automated functional and regression testing*
http://www.degarrah.com/zephyr.php
------------------------------------------------------------
KevinHock
Filthy Rich wx Solver
Filthy Rich wx Solver
Posts: 236
Joined: Sat Sep 04, 2004 1:49 pm
Location: Ohio, USA
Contact:

Post by KevinHock »

The book will definitely help. With a strong C++ and Java background, and in GUIs, you'll be up to speed very quickly.
cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Post by cpp »

Thanks for your answers, if i decide to give wxWidgets a serious try, i will absolutely buy the book, however i was hoping for an on-line tutorial, just to get a feel of what wxWidgets is like, and then, make my decision. Besides, i dont live in the US, i live in Cancun (Mexico), and beilve me, finding a book like this one here is just plain *impossible* so i would have to order it via amazon.com or something, this would take time (not to mention a quite high S&H), and thats why i need a way to make up my mind before i acutally buy the book.
Does anyone know an up to date online tutorial on wxWidgets?
User avatar
ABX
Can't get richer than this
Can't get richer than this
Posts: 810
Joined: Mon Sep 06, 2004 1:43 pm
Location: Poznan, Poland
Contact:

Post by ABX »

cpp wrote:Does anyone know an up to date online tutorial on wxWidgets?
Perhaps this: http://www.codeproject.com/useritems/wxWidgets.asp

ABX
CVS Head, 2.8.X
wxMSW, wxWinCE, wxPalmOS, wxOS2, wxMGL, bakefile
gcc 3.2.3, bcc 5.51, dmc 8.48, ow 1.6, vc 7.1, evc 3/4, pods 1.2
cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Post by cpp »

Thats exacly what im talking about! :D

Thanks a lot!
lowjoel
Part Of The Furniture
Part Of The Furniture
Posts: 1511
Joined: Sun Jun 19, 2005 11:37 am
Location: Singapore
Contact:

Post by lowjoel »

wxWidgets gas a beautiful documentation, go to the main site and click on docs. If you feel all too comwith AWT, you can have a look at wxCode IIRC there is a AWT layout alternative to sizers.
Ryan Wilcox
I live to help wx-kind
I live to help wx-kind
Posts: 194
Joined: Mon Aug 30, 2004 1:26 pm
Location: PA, USA
Contact:

Post by Ryan Wilcox »

Ryan Wilcox
Wilcox Development Solutions
http://www.wilcoxd.com
cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Post by cpp »

Thanks again for your answers guys, as for me missing the AWT layouts (lowjoel), well i think there Ok, but im not precicely "in love" with them :D so i think ill give the sizers a try and then ill decide if i stick with them, or if i use the AWT-like alternatives you mentioned. Thanks for the tip!
As for the samples you suggested (ryan), thanks for the offering, ill take a good look at them.

If i may bother you guys with one more (a little off topic) question:
Most of the apps i write are monetary, personel, stock, managing apps, in other words, apps wich make intensive use of databases. How solid is wxWidgets performance when it comes to database related apps? and on more thing, before i swiched to Java, i used to use MS Access databases when a "lightweight" DB system was needed. Can you sugest an alternative "lightweight" (no server needed), DB system for use with wxWindows?
Thanks again!
toxicBunny
Super wx Problem Solver
Super wx Problem Solver
Posts: 424
Joined: Tue Jul 12, 2005 8:44 pm
Location: Alabama, USA

Post by toxicBunny »

cpp wrote:How solid is wxWidgets performance when it comes to database related apps? and on more thing, before i swiched to Java, i used to use MS Access databases when a "lightweight" DB system was needed. Can you sugest an alternative "lightweight" (no server needed), DB system for use with wxWindows?
Thanks again!
wxWidgets is more of a GUI framework than anything else. It has classes to deal with general issues such as file systems, sockets, etc., but the only included database functionality is the wxODBC classes. These classes work well with anything using ODBC. However, I usually don't like having to create a DSN for my apps just to access a local database. I've been using the DatabaseLayer library on the wxCode website. It was created as a JDBC-like database interface for wxWidgets. It works natively with Firebird, PostgreSQL, MySQL, and SQLite. It's still under development, but I'm using it with an SQLite database app and am having no problems.

http://wxcode.sourceforge.net

I'd say SQLite would be the best lightweight database. This is what I use for local data storage. It can even be used as an imbedded database and is cross-platform.

http://www.sqlite.org

Just my thoughts.

-Scott
lowjoel
Part Of The Furniture
Part Of The Furniture
Posts: 1511
Joined: Sun Jun 19, 2005 11:37 am
Location: Singapore
Contact:

Post by lowjoel »

SQLite is easy if you are using ASCII. However there might be some issues should you decide to use Unicode (conversion to and from UTF8/16 can be cumbersome) - i tell this from personal experience :P
cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Post by cpp »

Thanks for your answers, SQLite sound nice, the thing that worries me, is what it sais on their site about not enforcing foreing keys.
Back when i used WTL to build my apps, i wrote a set of wrapper classes for the ADO data objects, they dint require seting up a DSN, and they actually worked quite well, they of course, were designed to work with WTL Objects (like WTL::CString), but it shouldnt be much trouble making a "port" to wxWidgets.
When i complete the port, ill be glad to share these classes with anyone who is interested. :D
gururamnath
Super wx Problem Solver
Super wx Problem Solver
Posts: 466
Joined: Sat Sep 18, 2004 2:49 am
Location: California, USA

Post by gururamnath »

Have a look at databaselayer class.

http://wxcode.sourceforge.net/wiki/pmwi ... abaseLayer

This class is a wrapper for commonly used DB (Sqlite, Firebird, MySQL , PGSql) that doesnt require ODBC settings.

I have posted couple of bounties for adding additional db support to it.
Have a look at

http://forums.wxwidgets.org/viewtopic.php?t=4398

If you are going to write a new wrapper, please consider using databaselayer as the base and add your db support to it (rather than reinventing the wheel).

Thanks,
-Guru Kathiresan
leojose
Earned a small fee
Earned a small fee
Posts: 10
Joined: Mon Sep 26, 2005 9:24 am

some more...

Post by leojose »

An expert is one who knows all the answers, if asked the right questions
cpp
I live to help wx-kind
I live to help wx-kind
Posts: 195
Joined: Wed Sep 28, 2005 9:42 pm

Post by cpp »

leojose wrote:
I just ran into some pdf files, hope they can also be helpful
Thanks a lot ibe just downloaded the pdfs and ill get to read them ASAP.
gururamnath wrote:
If you are going to write a new wrapper, please consider using databaselayer as the base and add your db support to it (rather than reinventing the wheel).
I allready downloaded the current project files, and started working on the "port" from my (quite similar) WTL version, to databaselayer "interface" & wxWidgets "standards". I should have the port completed by Monday. Needless to say, it will only be suitable for the MSW version of wxWidgets.

BTW: the original version i wrote for WTL, has the optional feature (switchable via #defines) of throwing exceptions. Should i include this feature? or just stick to the "ErrorReporter" / bool return Style?
Post Reply