News : The level of daily SPAM has reached insane proportions, all registrations are now manual. I ask you to send me an e-mail (john (at) murga (dot) org), to confirm that you want me to create an account for you.


Post Reply  Post Thread 
Pages (2): « First [1] 2 Next > Last »
MurgaLua full release
Author Message
JohnMurga
Administrator
*******


Posts: 381
Group: Administrators
Joined: Apr 2007
Status: Offline
Reputation: 2
Post: #1
MurgaLua full release

Hi,

Version 0.6.0 stays as it is, but I won't be making a full release of it, as I have already got a little ahead of myself.

So the next is 0.6.5 ...

I am aiming for end of this week or some time next week ... My better half is out of the country for a while so I should be able to give this the time it deserves.

After the API changes I made with the 0.5 series people seemed to think I'd be doing this regularly ... That is not the case, I did it because there was a big gap, and I was taken by surprise by the success of murgaLua. Either way, 0.6.0 is 100% backward compatible with 0.5.5, and I expect all future releases to be, so there is no good reason not to start using any version you like ...

What I have done or am intending to do :

  • Fixed a couple of minor regressions. DONE
  • read_image implemented and made stable on all platforms (!!) DONE
    Allows you to capture any part of a window as an RGB image.
  • RGB image has a new NON-Fltk method (save as PNG). DONE
    I do not intend to support the saving of anything other than PNG's.
  • Off screen FLTK api.
    Abstract this in a way that can be used from murgaLua
  • Tiled image API - Allows you extract an array of images from one image (as tiles).
  • Animation control.
  • Table (grid) control.
  • Documentation.
If anyone wants to help they can do by submitting suggestions, tutorials, screen shots of your apps, or helping with documentation.

For the 0.7.0 series I'll be doing a lot of time consuming development, so anyone wanting a stable environment should stick with 0.6.5 as opposed to waiting... I'd be wanting to implement :
  • Size improvements.
  • Better FLUID integration.
  • C/Invoke type functionality.
  • Sound (where available).
  • Native 64 bit builds.
  • And much more !! ;-)
And it'll take a LONG time to do all this ...

Dropped from the list are :
  • Serial port support (this really should be a 3rd party module).
    Which I am happy to build if someone sends it to me
Let me know what you think.

Cheers
JohnM

01-29-2008 12:32 AM
Visit this user's website Find all posts by this user Quote this message in a reply
Juergen
Member
***


Posts: 81
Group: Registered
Joined: May 2007
Status: Offline
Reputation: 0
Post: #2
RE: MurgaLua full release

JohnMurga Wrote:
Hi,

Version 0.6.0 stays as it is, but I won't be making a full release of it, as I have already got a little ahead of myself.

There is still a small problem with readline under Linux. (It just doesn't work ;-(

JohnMurga Wrote:
What I have done or am intending to do :
  • Fixed a couple of minor regressions. DONE
  • read_image implemented and made stable on all platforms (!!) DONE
    Allows you to capture any part of a window as an RGB image.
  • RGB image has a new NON-Fltk method (save as PNG). DONE
    I do not intend to support the saving of anything other than PNG's.

PNG as the only format to save images is O.K.
But what I would really like to see is the ability to load PNG's also from a binary string and not only from a file. This would allow it to have PNG icons embedded in the script, which can save about 60% against XPM's.

JohnMurga Wrote:
  • Off screen FLTK api.
    Abstract this in a way that can be used from murgaLua
  • Tiled image API - Allows you extract an array of images from one image (as tiles).
  • Animation control.
  • Table (grid) control.
  • Documentation.
If anyone wants to help they can do by submitting suggestions, tutorials, screen shots of your apps, or helping with documentation.


Another feature which might be worth considering, is a simple gzip and gunzip binding, since murgaLua already links to libz (PNG).

Juergen

01-29-2008 01:53 AM
Find all posts by this user Quote this message in a reply
iGame3D
Moderator
***


Posts: 231
Group: Moderators
Joined: Apr 2007
Status: Offline
Reputation: 0
Post: #3
RE: MurgaLua full release

Is there a new version of murgaLua.html?

Time to SVN?
This SF project could be renamed: murgaLuaDocs or whatever.

We could update documentation and scripts as needed.

Looking forward to that PNG export.

01-29-2008 03:31 AM
Visit this user's website Find all posts by this user Quote this message in a reply
JohnMurga
Administrator
*******


Posts: 381
Group: Administrators
Joined: Apr 2007
Status: Offline
Reputation: 2
Post: #4
RE: MurgaLua full release

Juergen Wrote:
There is still a small problem with readline under Linux. (It just doesn't work ;-(

Fixed in current dev build, was a linking problem.

Thanks for letting me know, I checked it out.

Juergen Wrote:
PNG as the only format to save images is O.K.
But what I would really like to see is the ability to load PNG's also from a binary string and not only from a file. This would allow it to have PNG icons embedded in the script, which can save about 60% against XPM's.

The functions in 0.6.0 make that possible now for any picture :-)

Only the PNGs would be in RGB form ...

But point taken ... I was thinking such a feature would be nice for JPG and PNG.

Juergen Wrote:
Another feature which might be worth considering, is a simple gzip and gunzip binding, since murgaLua already links to libz (PNG).

OK, it's on the list.

Cheers
JohnM

01-29-2008 08:47 AM
Visit this user's website Find all posts by this user Quote this message in a reply
JohnMurga
Administrator
*******


Posts: 381
Group: Administrators
Joined: Apr 2007
Status: Offline
Reputation: 2
Post: #5
RE: MurgaLua full release

APOLOGIES !

If anyone was waiting for the new release they'll be disappointed ...

I had a couple of problems and lost a little work, and by the time I got back on track it's got a little late :-(

Anyway, here is a progress report ...

  • Tidied up a lot of code :-)
  • More build tweaks
  • Fixed a few more areas of the FLTK bindings, specially FL_Browser
    Can now use Fl_Browser as a grid/table, and data() works propperly
  • The offscreen API is done, but it's been a REAL pain, it isn't 100% perfect, and I haven't written tests yet.
  • Juergen's hex "C" code methods replaces my slower Lua code.
  • gzip and zlib integration (Juergen's suggestion).

I'll be making a cross platform build tomorrow I hope, and it'll be denominated 0.6.4 ... But it still won't be a full build as there is no way I'll get to update all the documentation, etc.

Cheers
JohnM

02-11-2008 10:02 AM
Visit this user's website Find all posts by this user Quote this message in a reply
Juergen
Member
***


Posts: 81
Group: Registered
Joined: May 2007
Status: Offline
Reputation: 0
Post: #6
RE: MurgaLua full release

JohnMurga Wrote:
I'll be making a cross platform build tomorrow I hope, and it'll be denominated 0.6.4 ... But it still won't be a full build as there is no way I'll get to update all the documentation, etc.

Cheers
JohnM


If you are at it, here are a few few points (if they aren't corrected already):

The Fl_Menu_:menu() method doesn't work. I guess you are checking for an argument. The menu() should gives back the pointer to the first menu_item, which should be trivially to implement as it is the same as :find_item(first_item)

When you provide a callback function for a menu item, self in the callback function points to the menu_item and not to the menu which it should. This way there is no way to get the associated menu. The way fltk defines this is to provide a pointer to Fl_Menu_ and and the associated item can then retrieved via item=menu->mvalue().

I don't think user_data works. Or is there something special to pay attention to?

Juergen

02-11-2008 10:41 AM
Find all posts by this user Quote this message in a reply
JohnMurga
Administrator
*******


Posts: 381
Group: Administrators
Joined: Apr 2007
Status: Offline
Reputation: 2
Post: #7
RE: MurgaLua full release

Juergen Wrote:
The Fl_Menu_:menu() method doesn't work. I guess you are checking for an argument. The menu() should gives back the pointer to the first menu_item, which should be trivially to implement as it is the same as :find_item(first_item)

Nothing to fix :-)

That wouldn't be very useful in murgaLua, so I deviate from FLTK ...

Take a look at menuExample.lua ...

Fl_Menu_:menu(0) is what you'd want I guess.

Juergen Wrote:
When you provide a callback function for a menu item, self in the callback function points to the menu_item and not to the menu which it should. This way there is no way to get the associated menu. The way fltk defines this is to provide a pointer to Fl_Menu_ and and the associated item can then retrieved via item=menu->mvalue().

Again, I chose to deviate here ...

I thought it was simpler to get the menu item directly.

As it is MenuItems would always have to be a little different in murgaLua.
I will of course document these deviations ...
(There are more like timers, off-screen drawing, etc).

Juergen Wrote:
I don't think user_data works. Or is there something special to pay attention to?

Nope, you just set it on the widget or menu item, and then you get it.

If you remember the old menu example used it to store the function to call (a rather nasty hack).

Cheers
JohnM

02-11-2008 11:09 AM
Visit this user's website Find all posts by this user Quote this message in a reply
Juergen
Member
***


Posts: 81
Group: Registered
Joined: May 2007
Status: Offline
Reputation: 0
Post: #8
RE: MurgaLua full release

JohnMurga Wrote:

Juergen Wrote:
The Fl_Menu_:menu() method doesn't work. I guess you are checking for an argument. The menu() should gives back the pointer to the first menu_item, which should be trivially to implement as it is the same as :find_item(first_item)

Nothing to fix :-)

That wouldn't be very useful in murgaLua, so I deviate from FLTK ...

Take a look at menuExample.lua ...

Fl_Menu_:menu(0) is what you'd want I guess.

Yes it is ;-)
I overlooked that. Although there is a small misunderstanding.
menu:find_item(first_item) and menu:menu(0) is exactly the same, but for the latter you don't have to know what the first item is. If you check if there are 0 arguments supplied to the menu() function and then execute the same code that menu(0) does, it would be nearer to the fltk documentation.

JohnMurga Wrote:

Juergen Wrote:
When you provide a callback function for a menu item, self in the callback function points to the menu_item and not to the menu which it should. This way there is no way to get the associated menu. The way fltk defines this is to provide a pointer to Fl_Menu_ and and the associated item can then retrieved via item=menu->mvalue().

Again, I chose to deviate here ...

I thought it was simpler to get the menu item directly.

As it is MenuItems would always have to be a little different in murgaLua.
I will of course document these deviations ...
(There are more like timers, off-screen drawing, etc).

If you could care to tell me, how to access the methods of the menu (redraw it for example) from within the callback. I don't see a way to do that. I can always access the item methods with self:mvalue():item_method() but I can't see a way to access the menu methods without using a special callback for every item or doing nasty tricks.

JohnMurga Wrote:

Juergen Wrote:
I don't think user_data works. Or is there something special to pay attention to?

Nope, you just set it on the widget or menu item, and then you get it.

If you remember the old menu example used it to store the function to call (a rather nasty hack).

Cheers
JohnM


Is there an example somewhere that doesn't throw an error message or a segmentation fault?

Juergen

This post was last modified: 02-11-2008 11:43 AM by Juergen.

02-11-2008 11:30 AM
Find all posts by this user Quote this message in a reply
JohnMurga
Administrator
*******


Posts: 381
Group: Administrators
Joined: Apr 2007
Status: Offline
Reputation: 2
Post: #9
RE: MurgaLua full release

Juergen Wrote:
Yes it is ;-)
I overlooked that. Although there is a small misunderstanding.
menu:find_item(first_item) and menu:menu(0) is exactly the same, but for the latter you don't have to know what the first item is. If you check if there are 0 arguments supplied to the menu() function and then execute the same code that menu(0) does, it would be nearer to the fltk documentation.


Yes ... And ... No ...

The FLTK version would return a pointer that you could increment to get the next item. I cannot sensibly reproduce that in Lua, so I rather just have a slightly different method.

Juergen Wrote:
If you could care to tell me, how to access the methods of the menu (redraw it for example) from within the callback. I don't see a way to do that. I can always access the item methods with self:mvalue():item_method() but I can't see a way to access the menu methods without using a special callback for every item or doing nasty tricks.


Right now ... You cannot ... In normal use the only instance I can see you wanting a reference to the menu would be if you want to change it from a menu item ... If so, there are several ways for you to hold a reference to the menu (I'll knock up and example).

I do not like the way FLTK handles it, as menu items are second class citizens (being low level structs). In murgaLua it's different, although I'll address your usage pattern and find a way to get it to make sense.

Juergen Wrote:
Is there an example somewhere that doesn't throw an error message or a segmentation fault?


The previous menu example worked, although you (rightly) complained about it :-)

I'll code some more, although what I'd REALLY like to see are examples that DO cause error messages or segfaults, as that way I can either address the bug or explain what's wrong with the example.

Cheers
John de Murga

This post was last modified: 02-12-2008 09:48 AM by JohnMurga.

02-12-2008 09:47 AM
Visit this user's website Find all posts by this user Quote this message in a reply
JohnMurga
Administrator
*******


Posts: 381
Group: Administrators
Joined: Apr 2007
Status: Offline
Reputation: 2
Post: #10
RE: MurgaLua full release

JohnMurga Wrote:
  • The offscreen API is done, but it's been a REAL pain, it isn't 100% perfect, and I haven't written tests yet.

I'll be making a cross platform build tomorrow I hope, and it'll be denominated 0.6.4 ... But it still won't be a full build as there is no way I'll get to update all the documentation, etc.


Well, the offscreen API in FLTK is a REAL HACK, and getting it to work is pain ... I finally got it working, but the implementation is nasty, and sucks big time (likely to break with new versions of FLTK).

I'd like to yank it, but I invested a lot time ... And it does work well, so I'll keep it :-)

I also upgraded to Lua 5.1.3 ... I am now hoping for a test build this week with some documentation, but as normal my promises should be taken with a pinch of salt.

Cheers
JohnM

02-12-2008 09:54 AM
Visit this user's website Find all posts by this user Quote this message in a reply
Pages (2): « First [1] 2 Next > Last »
Post Reply  Post Thread 

View a Printable Version
Send this Thread to a Friend
Subscribe to this Thread | Add Thread to Favorites

Forum Jump: