wxWidget for BlitzMax

Started by medi71, August 24, 2021, 19:34:44

Previous topic - Next topic

medi71

Hello, has anybody finished a project or is working with wxWidget mod for BlitzMax?

Henri

Hi,

I have and I am :-)

-Henri
- Got 01100011 problems, but the bit ain't 00000001

medi71

Hello Henri, thanks for the reply, are you happy with it? Do you recommend it?

Henri

Well, it is very powerfull and capable native GUI framework with a whole set of options available (there are very few limits).

Blitzmax wrapper hasn't been updated in a while, but it works quite well. I've done a few tweaks myself.

Link to it here https://github.com/maxmods/wx.mod

As an example, here is my proto Blitzmax editor made with it https://github.com/HenriVi/Editor

-Henri
- Got 01100011 problems, but the bit ain't 00000001

medi71

Henri,
I just tried wxMax today. I had in mind to use wxMax in a small sqlite project. However, I found these samples not working: glmax2d, gppanel,json,mainloop,sheet,splitter,text,treeCtrl,treeListCtrl. I also read about your and other users's issues at Github. I have decided not to use wxMax, although I like BlitzMax language. Thanks.

Henri

yes, the samples could use some overhaul.

Like for instance, the text sample is missing wxTE_PROCESS_ENTER flag from every textbox creation line, hence the debug notification complaining about it when trying to connect ENTER_EVENT to textbox. the JSON sample did run fine on my setup. Do you use NG ? You did manage to run something ?

For a smaller app using sqlite you might only need Maxgui (I have done that also).

-Henri
- Got 01100011 problems, but the bit ain't 00000001

medi71

I used NG, all samples worked except those that I listed. I used Win 10. The reason I picked wxMax is that I have to create three tables which I thing Grid will do it. With the native gui, did you create a table?

Henri

#7
I've used wxListCtrl and wxSheet (which has all the functionality of wxGrid) for that purpose. wxListCtrl is easier, but wxSheet is more versatile (although more complex as well).

My latest implementation uses reflection to directly connect wxSheet to database table to type/class.

Something like..


Type TMachine Extends Base {table="Machine"}

Const MAC_SQL:String = "SELECT a.* " +..
"FROM Machine a " +..
"LEFT JOIN MachineGroup b ON a.GroupID = b.ID "

Field Doc:Int

Field ID:Int {primary_key}
Field CreateDate:String {date}
Field Name:String {data}
Field ExtSerial:String {data}

EndType


...where database field and type is identified with metadata. There is a parse function using reflection, which creates the needed SQL (to save and update information) when data in the sheet is modified or new information is entered. Sheet has all the same fields as columns.

See attached for sheet example.

-Henri
- Got 01100011 problems, but the bit ain't 00000001

medi71

Very nice table. I cannot get that clear widget in Windows 10. I see you have used Mac.
I have never been in any situation to feel like I have to use reflection. So, more than its definition, I don't know anything about it. I will give wxMax a try, and keep your comments in mind. I will try to use advanced concepts as less as possible until I get to a point that I see that in my mind there is no way but to use a technique. Then, I will push my mind to a possible new territory. So, let's see what will come up. I will try your editor too. Thanks.

medi71

Henri, I tried your editor. It crashed first, but worked for the second time. I see it is not finished. I have noticed that its editor font looks very clear, like vector font, comparing to that of BlitzMax which is blurry in my screen. I hope you finish the editor one day, would be good light weight editor. I use Visual Studio Code for BlitzMax because it gives me clear font.