wxMax WishList

BlitzMax Forums/Brucey's Modules/wxMax WishList

Brucey(Posted 2008) [#1]
We've reached 1.00! But there's always room for improvement and new features.

What else do you think wxMax should support?


* wxRichTextCtrl - a generic (non-native) text control with support for styles, paragraph formatting and images.
* wxSkin - Skinning for windows and controls.
* wxGraphicsContext (wxGCDC) - An improved graphics context. (requires gdi+ on Win32)
* XRC - XML UI Resource support, which lets you define your UI in XML, rather than hard-coding everything. Done!
* wxCodeGen enhancements - support DialogBlocks and wxGlade editors. Add wxPropertyGrid generation, and others.
* (wx)OSX/Cocoa - preferred eventual move to cocoa base on Mac, when it is mature enough.
* wxPowerEvent
* wxArt2D - a library for 2D graphical programming.
* wxMediaCtrl - native (or thereabouts) media playback.
* wxDocument/wxCommand/wxView...and related classes - part of the document/model/view framework
* wxWebUpdate - highly configurable application updater solution.
* wxMathPlot - A groovy graph plotter.
* wxShapeFramework Editor framework for things like UML diagrams.
* wxHTMLListBox Widget which shows HTML content in the listbox rows.
* wxTreeListCtrl A combined Tree and List control.
.

Last edited 2013


North(Posted 2008) [#2]
Excuse me but i'm not up to date. Does WxMax support skinning of the gui?
If not this would be my no.1 wish.

And fantastic piece of work Brucey - your amazing :)


Brucey(Posted 2008) [#3]
I have a working version of a wxSkin module on Linux and Win32, although it doesn't seem to work properly on MacOS - which is why I never got around to releasing it properly.

Here's a link to the site : http://www.upcase.de/wxSkin.html

I guess that's the sort of thing you are after? ;-)


plash(Posted 2008) [#4]
I remember you mentioning wxSkin early on in development ;)

I would vouch for it too! Is it just the BlitzMax version that doesn't work? or does the actual code not work on Mac?


Brucey(Posted 2008) [#5]
No idea... it's meant to work, but for some reason the controls don't seem to be getting events properly, on Mac.
It looks fine, skin wise.

Perhaps I can work on a release anyway, and a fix will magic itself out of the air... :-p


Brucey(Posted 2008) [#6]
I fancy adding support for DialogBlocks project files... it's another GUI editor


rs22(Posted 2008) [#7]
Would it be possible to get wxGraphicsContext/wxGCDC added? :)


Brucey(Posted 2008) [#8]
Easy for Mac and Linux, not so easy for Win32, since it requires prying GDI Plus headers from the SDK, and tying your app to gdi+ dll.
(I'm already building the static libs with GC support on Mac and Linux)

I've no issues with the dll, just that I've yet to find a version of the headers that compiles with wxWidgets - perhaps I need to try the latest SDK...


Blueapples(Posted 2008) [#9]
Oh man, that's awesome!

I feel like it's been forever since I checked up on wxMax and even Blitz - I'm not working at the same place where I was using BM so there isn't much I'm using it for lately. It's good to see a 1.0 release! Great work.


Brucey(Posted 2008) [#10]
Would it be possible to get wxGraphicsContext/wxGCDC added?

Well, I've *finally* managed to get wxWidgets to compile on Win32 with the graphics context enabled... it required me downloading the Windows SDK, ripping out the GDI headers, and tweaking them so that they would compile in MinGW...

But we'll see... I'm going to try implementing wxGCDC on Mac first, and then see what happens when I try to build the module on Win32... (gulp).


Brucey(Posted 2008) [#11]
re: wxGCDC

It is now "live" in the SVN release of wxMax. For Win32 users, you will probably need to update to the latest static libs : wxwidgets_2.8.8_static_win32b.zip (5.4meg)

I've currently only implemented wxGCDC, and not wxGraphicsContext yet, and I've tested it so far on Mac and Win32, which both appear to be functioning as expected (i.e. no apparent errors).

One note, for pre XP, you would need to ship a gdiplus.dll with your app, as Win2k and lower do not have one.


Winni(Posted 2008) [#12]
Question: What happened to the OS X/PPC port of wxMax? You don't seem to mention it anymore and even the PPC-libraries have disappeared from the project homepage. Is it officially dead?


Brucey(Posted 2008) [#13]
No... I've ran out of space on the google site (I'm up to 193meg of 200). I've requested an increase to 300, they accepted it on Aug 6th, but as yet it hasn't changed...

It's not like I haven't asked them nicely : http://code.google.com/p/support/issues/detail?id=1360&q=wxmax&colspec=ID%20Type%20Status%20Milestone%20Priority%20Stars%20Owner%20Summary


Once I get a bump up, I'll post that one too :-)


Retimer(Posted 2008) [#14]
wxRichTextCtrl vote =(


and that other option that you used transparent text for: supporting blob and date fields in your database module [/evil smirk]


rs22(Posted 2008) [#15]
Thank you for adding wxGCDC! :D Sorry it turned out to be a pain.


Brucey(Posted 2008) [#16]
It's not quite finished yet as I still need to open up wxGraphicsContext that you can use to draw with also - it's apparently faster to draw on that, from what I've read, but the wxGCDC is a DC so it's probably easier to use that - i.e. you might draw on the screen and a printer as a DC.


DavidDC(Posted 2008) [#17]
My app has a complete cow when XP comes out of Standby mode. Any chance of adding wxPowerEvent?


Brucey(Posted 2008) [#18]
I've added the wxPowerEvent stuff... only works on Win32 apparently.


Just a handy link for me, in case I ever get around to doing something crazy on the Mac : http://developer.apple.com/qa/qa2004/qa1340.html


DavidDC(Posted 2008) [#19]
Thanks so much Brucey :-)


Beaker(Posted 2008) [#20]
Brucey - if you need any webspace let me know. Under your own control of course.


Brucey(Posted 2008) [#21]
Thanks Beaker :-)

For now, I'm still hanging out hope that Google will sort themselves out.


Winni(Posted 2008) [#22]
I know that this is not a modest request, and I also know that it probably cannot be done yet, but I'd like to add it to the wishlist anyway: A Cocoa backend instead of the Carbon one.

A downloadable PPC-binary would also be great; I've tried a couple of times, but I couldn't get wxMax compiled on my PowerBook G4.


Brucey(Posted 2008) [#23]
A Cocoa backend instead of the Carbon one.

I'd like that too, but trying to find out any information on the current state of "wxCocoa" doesn't reveal much.
Lots of advantages to using Cocoa, especially as far as mixing in Objective-C operations, and features such as those new fancy windows (quicklook etc).

A downloadable PPC-binary would also be great

I shall try to sort that out for the weekend, hopefully. Usually builds fine on my Powerbook G4 ;-)


Winni(Posted 2008) [#24]
There's another advantage for Cocoa apps: The preference pane framework only works with Cocoa apps; it can't be used by Carbon programs...

Oh, and that's another one for the wishlist: The preference pane framework. ;-)

Just kidding. Ok, not really, but it's all asked too much and you're already working too much for free, if you want my opinion. You should start selling your modules as a commercial bundle or as a subscription-based model, I'm sure we'd all gladly shelf out some bucks for it. You're doing outstanding work, and I know that even the best artist cannot eat the applause...


Brucey(Posted 2008) [#25]
I would be great if wxWidgets was more Cocoa friendly at this time. Mind you, I've not actually tried it to see what is (or isn't) supported. I guess I went for the "course of least resistance".

As for working for free... well, it's just a hobby really ;-)
And folks can always mail me if they'd like to sort out some paid-for work with new/existing modules. I've not had any negative feedback from anyone who's been down that route yet. (and usually people are more vocal when parting with their hard-earned cash).

But I tend not to advertise myself... I'm not entrepreneurial enough.

However, expect more cocoa related stuff in the coming months, as I've just acquired myself an ipod touch.


Brucey(Posted 2008) [#26]
Yay... only a dozen or so widgets left which require XRC support.... *phew*


Brucey(Posted 2008) [#27]
I think that's XRC widget support finished now (although chances are I've missed one somewhere!)
Probably a little bit more to add to wx.wxXmlResource, but it should work for most cases now.

Remember to Import all the gadgets you expect to be using. :-p


Brucey(Posted 2008) [#28]
Added a couple more "wishes" :-)

wxArt2D seems to come with a lot of requirements, so I'll need to go over them a bit more before I can see how feasible it is.


Brucey(Posted 2008) [#29]
Finished wxGraphicsContext... adds lots of Cairo-like drawing functionality. Yay.


TaskMaster(Posted 2008) [#30]
wxMediaCtrl

This is my pick. A media player would be great!


TaskMaster(Posted 2008) [#31]
Brucey,

I just noticed that you do not have wxDirPickerCtrl implemented. Do you plan to add it? Or should I build my own using wxDirDialog?

Edit: Nevermind, I realized that it is implemented in wxFilePickerCtrl after a little searching.


Brucey(Posted 2008) [#32]
Apologies for that. It was easier (lazy?) to put the two together since they are sharing the same Event type.

Maybe it wasn't such a good idea.


TaskMaster(Posted 2008) [#33]
I have no problem with it. Just needed to find it. No big deal.

Is there and complete index of everything you have implemented somewhere? Maybe an indication of what has to be imported for each one?


Brucey(Posted 2008) [#34]
Is there and complete index of everything you have implemented somewhere?

Not yet. There probably needs to be.


DavidDC(Posted 2008) [#35]
Hey Brucey :-)

Any chance of the Activate and Iconise event methods being filled out? I've got a parent window with some rogue children who refuse to reappear on an Activate, or, if I do things another way, on an Iconise event.

(events.bmx)
Type wxActivateEvent Extends wxEvent
	Rem
	bbdoc: Returns true if the application or window is being activated, false otherwise.
	End Rem
	Method GetActive:Int()
		DebugLog "GetActive TODO"
	End Method

End Type

Type wxIconizeEvent Extends wxEvent
	
	Method Iconized:Int()
		DebugLog "Iconized TODO"
	End Method
	
End Type


[edit] Realised after posting this I can use IsIconized and IsActive instead.


Brucey(Posted 2008) [#36]
I've implemented those TODOs now :-)

Also added wxWebUpdate to the wish list, since I think it might be very useful.


DavidDC(Posted 2008) [#37]
That's great - thanks Brucey!


Wiebo(Posted 2009) [#38]
The thing I would like to see is the addition of the wxAdditions widgets in the CodeGen export. If only just the definition/creation. As the widgets are placed on sizers, and sizers are created locally in the OnInit() method, it requires some hacking (making the sizer definition a field in the base type which can be accessed in the extended frame type) to create/size them.

Other than that, I'm fully into wx mode now, discovering the neat things in there, so I don't have a wish list for wxMax yet! :)


Brucey(Posted 2009) [#39]
it requires some hacking (making the sizer definition a field in the base type which can be accessed in the extended frame type)

If you need to do that, you can set its "permission" to be protected or public, which should then cause it to generate a Field definition for it.

...the addition of the wxAdditions widgets in the CodeGen export.

Yep, it needs to be done :-)


Wiebo(Posted 2009) [#40]
Thanks for that tip Brucey, it worked. I'm such a n00b with wxWidgets... Getting there though, need to sort out the events now!


Wiebo(Posted 2009) [#41]
Arrays =]


Brucey(Posted 2009) [#42]
Arrays?
No need. They are translated by the framework between BlitzMax types and wxWidgets.
So where you see a wxArrayInt, you should be able to use a Int[] instead. Same for Strings.

It current can convert between Int[], String[] and Double[], which are the main ones I've come across so far - but it's hidden since you don't need to know about it :-p


Retimer(Posted 2009) [#43]
I know you're bombarded between wx, raknet (thanks a million, a million times), and plenty more...i'm just wondering if you still plan on digging into the wxrichtextctrl in the long-term future.

I understand wxtextctrl can basically do all the main formatting, however writeimage is the only other important format feature that I find isn't available, which unfortunately (I may be wrong) is only available in wxrichtextctrl.

I just ask ahead of time to understand better what exactly my options are/will be for image support in a client chat window.

Thanks


Brucey(Posted 2009) [#44]
just wondering if you still plan on digging into the wxrichtextctrl

Yes indeedy!

But it's one of those very large APIs that look like it might take forever and a day to work through.
(not that I haven't been there before!)

If it's on the list, It'll get done ;-)


Retimer(Posted 2009) [#45]
If it's on the list, It'll get done ;-)


Ahhh ok thanks for the heads up :)


Brucey(Posted 2009) [#46]
Added wxHTMLListBox to the list.


Brucey(Posted 2009) [#47]
I've implemented wxSimpleHTMLListBox (a subclass of wxHTMLListBox) which should handle the most common needs.


Brucey(Posted 2009) [#48]
wxDocument and friends is more or less complete - how you use it of course is another thing entirely :-p


rs22(Posted 2009) [#49]
I'm probably being annoying asking this, but do you have any kind of order in which the remaining things on the list will be done? wxArt2D looks really interesting. Hehe.


GaryV(Posted 2009) [#50]
I would love to see wxArt2D


Brucey(Posted 2009) [#51]
I would too, but I've had no end of problems getting it to compile with 2.9...


Scaremonger(Posted 2009) [#52]
I'd love to see wxWebConnect included in the library. I'm not saying we should all write a web browser, but having an object like that for reports and documents would make life so easy...

http://www.kirix.com/labs/wxwebconnect.html

Si...


Brucey(Posted 2009) [#53]
I'd love to see wxWebConnect included in the library

Funnily enough, I knocked a mod together for this, but because of issues with it and the carbon build of wxWidgets (the fact that it requires Cocoa to play nice), I've put it on hold for now.
Other than the fact that it crashed (due to invalid window handles), all the linking/etc I'd managed to get sorted out.

Perhaps once the cocoa build is stable enough...

(I realise that this is not an issue for Win32/Linux platforms, but since Mac is my main one, I prefer to get things working on there first and then test/port the others).


DavidDC(Posted 2009) [#54]
I wonder if this isn't worth a look? Cross platform mac address grabber.


Samah(Posted 2010) [#55]
wxTreeListCtrl would be a brilliant addition to wxMax. :)


Brucey(Posted 2010) [#56]
wxTreeListCtrl would be a brilliant addition to wxMax.

Added, with sample (treelistctrl.bmx) :-)


rs22(Posted 2010) [#57]
Could we have wxCustomDataObject, please? It appears some other DataObjects are missing too, like wxFileDataObject, and wxDataObjectSimple - it's just an empty type.


TaskMaster(Posted 2011) [#58]
What about wxFileType?

This allows you to retrieve the icon associated with a file.


rs22(Posted 2011) [#59]
Hi Brucey,

Could you please add wxDCOverlay to wxMax? I need it for drawing rubber bands on a canvas. I tried it with wxINVERT, but this apparently no longer works on Mac OS X.

Would we be able to get the DataObjects? wxCustomDataObject would be fantastic, as I asked in my post a year ago. I wonder if it would be possible to link this with banks? This would greatly enhance the clipboard functionality.

Thanks!


Brucey(Posted 2013) [#60]
wxMax on OS X is now using Cocoa instead of Carbon.


Brucey(Posted 2013) [#61]
Added wxFileType (and friends).


Captain Wicker (crazy hillbilly)(Posted 2013) [#62]
personally, I think a wxWidgets module for MaxGUI (Maxgui syntax for wxMax) would be easier.


Brucey(Posted 2013) [#63]
Perhaps easier, certainly more abstract, and possibly less powerful.


Brucey(Posted 2013) [#64]
And on an intriguing note, I could even surreptitiously slip in Scintilla as the TextArea gadget... ooer.