[Pharo-project] CLFramework-UIBuilder
i published the CLFramework package http://www.squeaksource.com/CLFramework.html Is totally alpha version, not valid for serious apps.The set of widgets of Polymoprh adapteds to designer is limited, and don´t works with normal mechanism as MorphicModel, else with events. I´m continue working in it, but I have arrived at crossroads, where i think is best create my own set of widgets, from zero, or perhaps be more ambitious and try use 3d... i dont know; my knowledges is limited. I added new features; can be viewed here: Inlaying a view into another http://www.youtube.com/watch?v=L0dSuunKbEM Adding external files (images only) for use in UIBuilder http://www.youtube.com/watch?v=UXvwieFA_4k Building a context menu http://www.youtube.com/watch?v=cilG97m4u2g For probe the designer only type view := CLUIBuilderMainForm new show. in a workspace. I want to be thankful to Jordi Delgado and Citilab for Smalltalk initiative and lessons, and future events ( ESUG 2010 :) ) Regards -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3594252.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
Heh. With very little effort I created a window with a button, pushed the button, and got a nice "Hello World" in the Transcript... I always thought this was just what "Squeak" needed...regardless of the windowing framework (Morphic, Native, etc...). Take care, Rob On Sun, Sep 6, 2009 at 5:22 PM, nullPointer <epicfan@gmail.com> wrote:
i published the CLFramework package
http://www.squeaksource.com/CLFramework.html
Is totally alpha version, not valid for serious apps.The set of widgets of Polymoprh adapteds to designer is limited, and don´t works with normal mechanism as MorphicModel, else with events. I´m continue working in it, but I have arrived at crossroads, where i think is best create my own set of widgets, from zero, or perhaps be more ambitious and try use 3d... i dont know; my knowledges is limited.
I added new features; can be viewed here:
Inlaying a view into another http://www.youtube.com/watch?v=L0dSuunKbEM
Adding external files (images only) for use in UIBuilder http://www.youtube.com/watch?v=UXvwieFA_4k
Building a context menu http://www.youtube.com/watch?v=cilG97m4u2g
For probe the designer only type
view := CLUIBuilderMainForm new show.
in a workspace.
I want to be thankful to Jordi Delgado and Citilab for Smalltalk initiative and lessons, and future events ( ESUG 2010 :) )
Regards -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3594252.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
i published the CLFramework package
Excellent!
Is totally alpha version, not valid for serious apps.The set of widgets of Polymoprh adapteds to designer is limited, and don´t works with normal mechanism as MorphicModel, else with events.
What do you mean? That you use Announcements?
I´m continue working in it, but I have arrived at crossroads, where i think is best create my own set of widgets, from zero, or perhaps be more ambitious and try use 3d... i dont know; my knowledges is limited.
Pay attention because we saw a lot of people doing the same. Designing a new set of widgets is a HUGE effort. For the use of 3d I do not see any point doing that. A valuable effort would be to check the polymorph widgets that are worth. - Remove broken or useless morphic widgets. - improve existing widgets - as an example alain plantec designed and implemented a new tree with much much better capabilities than the default one and we are waiting that he finishes to integrate into pharo - At esug alain show us a first attempt to use cairo to build a new "morphic" and there widgets will also be missing. I think that having a layout manager (copying may be the one of sophie) is more important than new widgets because how do the components move when you resize a window or the relative placement of widgets is also important.
I added new features; can be viewed here:
Inlaying a view into another http://www.youtube.com/watch?v=L0dSuunKbEM
Adding external files (images only) for use in UIBuilder http://www.youtube.com/watch?v=UXvwieFA_4k
Building a context menu http://www.youtube.com/watch?v=cilG97m4u2g
For probe the designer only type
view := CLUIBuilderMainForm new show.
in a workspace.
I want to be thankful to Jordi Delgado and Citilab for Smalltalk initiative and lessons, and future events ( ESUG 2010 :) )
Regards -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3594252.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
What do you mean? That you use Announcements?
I use #triggerEvent: mechanism, but hided. I dont know of Announcements ; what is the difference? Basically the control when want launch a event (for example the click) call the message #raiseOnClick:args: where the first parameter is the sender of event, and the second parameter is the click event.That is always works of that way in the widgets events. Regards -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3597137.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
On Sep 7, 2009, at 2:37 PM, nullPointer wrote:
What do you mean? That you use Announcements?
I use #triggerEvent: mechanism, but hided. I dont know of Announcements ; what is the difference?
with announcement you get an object around and not just a symbol. For the future use announcement since it is the new standard for notification in Smalltalk
Basically the control when want launch a event (for example the click) call the message #raiseOnClick:args: where the first parameter is the sender of event, and the second parameter is the click event.That is always works of that way in the widgets events.
Regards -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3597137.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Exists some manual or tuto for explanation of use? I see a tuto of Cincom Smalltalk, but im not sure of understand it :| Stéphane Ducasse-2 wrote:
On Sep 7, 2009, at 2:37 PM, nullPointer wrote:
What do you mean? That you use Announcements?
I use #triggerEvent: mechanism, but hided. I dont know of Announcements ; what is the difference?
with announcement you get an object around and not just a symbol. For the future use announcement since it is the new standard for notification in Smalltalk
Basically the control when want launch a event (for example the click) call the message #raiseOnClick:args: where the first parameter is the sender of event, and the second parameter is the click event.That is always works of that way in the widgets events.
Regards -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3597137.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3606145.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
this is the same as before except you have a full object instead of a symbol. You register interest in something and when this event occurs you get an object containing the information you need not only a symbol. stef
Exists some manual or tuto for explanation of use? I see a tuto of Cincom Smalltalk, but im not sure of understand it :|
Stéphane Ducasse-2 wrote:
On Sep 7, 2009, at 2:37 PM, nullPointer wrote:
What do you mean? That you use Announcements?
I use #triggerEvent: mechanism, but hided. I dont know of Announcements ; what is the difference?
with announcement you get an object around and not just a symbol. For the future use announcement since it is the new standard for notification in Smalltalk
Basically the control when want launch a event (for example the click) call the message #raiseOnClick:args: where the first parameter is the sender of event, and the second parameter is the click event.That is always works of that way in the widgets events.
Regards -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3597137.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3606145.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Stéphane Ducasse skrev:
i published the CLFramework package
http://www.squeaksource.com/CLFramework.html
I´m continue working in it, but I have arrived at crossroads, where i think is best create my own set of widgets, from zero, or perhaps be more ambitious and try use 3d... i dont know; my knowledges is limited.
I think that having a layout manager (copying may be the one of sophie) is more important than new widgets because how do the components move when you resize a window or the relative placement of widgets is also important.
Dabbling with it last night, this was one of the things I felt was missing the most too. It might be nice with a tab of its own for an editor of a morphs LayoutFrame, which could replace the current properties Anchors, Position and Extent - Initial placement was a snap (The list of selectable widgets is a valid droptarget though, I had to ctrl-click and delete morph a couple of times due to dropping wrong :P) - The attributes are quite easy to edit (except not remembering old values for a few of them if I navigated away, then back again) - The menu editor was very nice (a bit unintuituve that you had to ctrl-s after entering data before navigating away though, yet autosaving on icon selection. Also, only icon changes were accepted when you chose a new icon, the rest (label etc.) were lost) As for widgets, the only one I was really missing was a splitter. Cheers, Henry
Thanks for probe and conseils :)
It might be nice with a tab of its own for an editor of a morphs LayoutFrame, which could replace the current properties Anchors, Position and Extent
Im not sure of understand correct way (my english is poor). Want you say a button around the selected morph for edit position, extent and anchors? I think in something similar but working with an new halo.
- The attributes are quite easy to edit (except not remembering old values for a few of them if I navigated away, then back again)
I could try that, but i´m dont know do it with actual controls.A simple change of text launch the valueChanged event of controls ( textboxes properties ). When i can save for retrieve an old value?
- The menu editor was very nice (a bit unintuituve that you had to ctrl-s after entering data before navigating away though, yet autosaving on icon selection. Also, only icon changes were accepted when you chose a new icon, the rest (label etc.) were lost)
I´m not be good tester i believe. I´m cannot reproduce the error. Note the text value, or help text only is updated in the treeview when the intro key is pressed in the textbox.
As for widgets, the only one I was really missing was a splitter.
I believe i could add the next weekend :) Thanks to all for probes :)) -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3606132.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
On 08.09.2009 23:00, nullPointer wrote:
Thanks for probe and conseils :)
It might be nice with a tab of its own for an editor of a morphs LayoutFrame, which could replace the current properties Anchors, Position and Extent
Im not sure of understand correct way (my english is poor). Want you say a button around the selected morph for edit position, extent and anchors? I think in something similar but working with an new halo.
No, an extra tab on the left, where you can edit the values of the Morphs LayoutFrame (top/left/right/bottom offset and fraction). It's a much more flexible way of defining a position that will behave nicely when you resize the widget than what can be done currently (albeit abit more complicated) Try: Morph allSubInstances collect: [:each | each layoutFrame ] thenSelect: [:each | each notNil] editing the instance variables of such an instance for the current morph is what I'd like :)
- The attributes are quite easy to edit (except not remembering old values for a few of them if I navigated away, then back again)
I could try that, but i´m dont know do it with actual controls.A simple change of text launch the valueChanged event of controls ( textboxes properties ). When i can save for retrieve an old value?
Ehm, my bad, I didn't mean "old" values, I meant the current values of the morph. Anchors and Style were the only ones, I believe.
- The menu editor was very nice (a bit unintuituve that you had to ctrl-s after entering data before navigating away though, yet autosaving on icon selection. Also, only icon changes were accepted when you chose a new icon, the rest (label etc.) were lost)
I´m not be good tester i believe. I´m cannot reproduce the error. Note the text value, or help text only is updated in the treeview when the intro key is pressed in the textbox.
I make a new menu item, type in text, and select a new field. if I select the other item without ctrl-s (in Windows) while Text input field is focused, I loose the change. Also, the tabbing order is kind of backwards, going up instead of down (Name field -> press tab -> Focus goes to Help text instead of Action Selector) Cheers, Henry
Ehm, my bad, I didn't mean "old" values, I meant the current values of the morph. Anchors and Style were the only ones, I believe.
ahhh now understand :) I believe is best in that case put the options as toolbar action, above. of that way the change of styles and anchors work with various morphs in a one time.
- The menu editor was very nice (a bit unintuituve that you had to ctrl-s after entering data before navigating away though, yet autosaving on icon selection. Also, only icon changes were accepted when you chose a new icon, the rest (label etc.) were lost)
I´m not be good tester i believe. I´m cannot reproduce the error. Note the text value, or help text only is updated in the treeview when the intro key is pressed in the textbox.
In the first moment the value of textbox was changed for each key press, and updated in treeview.But in two last versions of Pharo after each keypress the cursor of textbox was put in the first character. I have search a solution for that.The Control-Save in Windows or intro Is possible change the order of tabsIndex in Polymorph? If exists a way perhaps i could incorporate too in the designer. Regards -- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3606541.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
I checked what you did and I think that you did the hardest part. if you plug a VW like window spec and builder (which is not that complex compared to what you did then you would have a really cool UIBuilder). Stef On Sep 9, 2009, at 12:13 AM, nullPointer wrote:
Ehm, my bad, I didn't mean "old" values, I meant the current values of the morph. Anchors and Style were the only ones, I believe.
ahhh now understand :) I believe is best in that case put the options as toolbar action, above. of that way the change of styles and anchors work with various morphs in a one time.
- The menu editor was very nice (a bit unintuituve that you had to ctrl-s after entering data before navigating away though, yet autosaving on icon selection. Also, only icon changes were accepted when you chose a new icon, the rest (label etc.) were lost)
I´m not be good tester i believe. I´m cannot reproduce the error. Note the text value, or help text only is updated in the treeview when the intro key is pressed in the textbox.
In the first moment the value of textbox was changed for each key press, and updated in treeview.But in two last versions of Pharo after each keypress the cursor of textbox was put in the first character. I have search a solution for that.The Control-Save in Windows or intro
Is possible change the order of tabsIndex in Polymorph? If exists a way perhaps i could incorporate too in the designer.
Regards
-- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3606541.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
your windows spec are nearly there. specMorph ^CLPanel new color: (Color r: 0.654 g: 0.678 b: 0.694);width: 250; height: 225; name: 'container'. by transforming the previous into the following you get a spec that you can then interpret specMorph ^#(CLPanel new color: (Color r: 0.654 g: 0.678 b: 0.694);width: 250; height: 225; name: 'container'). On Sep 9, 2009, at 12:13 AM, nullPointer wrote:
Ehm, my bad, I didn't mean "old" values, I meant the current values of the morph. Anchors and Style were the only ones, I believe.
ahhh now understand :) I believe is best in that case put the options as toolbar action, above. of that way the change of styles and anchors work with various morphs in a one time.
- The menu editor was very nice (a bit unintuituve that you had to ctrl-s after entering data before navigating away though, yet autosaving on icon selection. Also, only icon changes were accepted when you chose a new icon, the rest (label etc.) were lost)
I´m not be good tester i believe. I´m cannot reproduce the error. Note the text value, or help text only is updated in the treeview when the intro key is pressed in the textbox.
In the first moment the value of textbox was changed for each key press, and updated in treeview.But in two last versions of Pharo after each keypress the cursor of textbox was put in the first character. I have search a solution for that.The Control-Save in Windows or intro
Is possible change the order of tabsIndex in Polymorph? If exists a way perhaps i could incorporate too in the designer.
Regards
-- View this message in context: http://n2.nabble.com/CLFramework-UIBuilder-tp3594252p3606541.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
participants (5)
-
Henrik Johansen -
Henrik Sperre Johansen -
nullPointer -
Rob Rothwell -
Stéphane Ducasse