Re: Fluid Application Environment 3.0.alpha1 Released!

new topic     » goto parent     » topic index » view thread      » older message » newer message

Wow, this is becoming a long discussion. I'm working right now, so it's hard to keep up. But I'll say this:

To clarify something, you can have multiple "root" widgets. The technical definition of a root widget in FluidAE is a widget that is directly responsible for creating and destroying operating-system-window handles.

Currently, you can assign an event handler procedure for individual widgets if you want. If you assign a handler to a window, or even a container inside a window, then its children will inherit the same handler.

You can put this in a separate file if you want. For example, you could write "status.e" which creates a status window and handles events for it.

If you want to allow multiple instances, you could set up a method to generate id strings to add to the widget name, which you can use for creating widgets and for getting events from them ("winStatus01", "winStatus02", etc.)

--file: status.e 
 
procedure status_event(object evwidget, object evtype, object evdata) 
    --handle events for winStatus and any widgets you create inside it 
end procedure 
 
export procedure show_status_window(object whatever) 
    --call this from your main file to create a status window 
    gui:wcreate({ 
        {"name", "winStatus"}, 
        {"class", "window"}, 
        {"title", "Status of " & whatever}, 
        {"handler", routine_id("status_event")} 
    }) 
    --create other widgets inside "winStatus", put "whatever" data in them 
end procedure 

I will also say this: I am seriously considering adding something that I wanted to do in the original design of FluidAE: the ability to run the GUI as a separate process, which multiple processes can connect to, using shared memory or tcp sockets.

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu