VisualGST

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

VisualGST

MrGwen
Hello everybody,

Some news about VisualGST, if you try the master branch of VisualGST you
will two majors changes; a source code widget this is a classical
text editor with the full class sources. The method categories and
the methods are merged into one widget. The migration is not totally
finished but it takes a good shape.

Internal changes:

State is used to update the browser which simplify a lot the code and
improve a bit the speed; I've updated the GtkTreeView/GtkListView widget
to made it more simple and Smalltalk friendly:

   treeWidget := GtkScrollTreeWidget createListWithModel:
{{GtkColumnPixbufType visible. GtkColumnTextType title: 'Methods'}}.
   (model := GtkListModel on: treeWidget treeView getModel)
                      contentsBlock: [ :each |
                                {each methodViewIcon.
                                 each selector asString} ].

For a tree:

     treeWidget := GtkScrollTreeWidget createTreeWithModel:
{{GtkColumnTextType title: 'Classes'}}.
     treeWidget connectToWhenPopupMenu: (ClassMenus on: self).
     treeWidget treeView getSelection setMode: self selectionMode.
      (model := GtkTreeModel on: treeWidget treeView getModel)
                       item: self root;
                       childrenBlock: [ :each | self subclasses: each ];
                       contentsBlock: [ :each | {each asClass name
asString, ' '} ].


Append is really simple too:

   myTree append: anObject.

or

   myTree append: anObject parent: aParentObject.


Feel free to reuse GtkMainWindow widget and those widgets for your Gtk
project ;-)

Simple tasks for VisualGST:
===========================

   - testing with bug reports
   - improve again GtkScrollTreeWidget some ideas:
       treeWidget treeView getSelection
                setMode: GTK.Gtk gtkSelectionBrowse.
       replace by:
       treeWidget aNiceMessage :)

   - GtkListModel "integrated" into GtkScrollTreeWidget:
       treeWidget contentsBlock: [ :each |
                                {each methodViewIcon.
                                 each selector asString} ].
   - other idea for GtkTree* a message like expand: anObject
     and the isExpanded: anObject

Cheers,
Gwen


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: VisualGST

Nicolas Petton
Cool Gwen!

Being able to edit the source file is cool, especially for headers
(licenses, authors, etc) but how do you do it? How do you know where the
source is?

Cheers,
Nico

Le lundi 11 avril 2011 à 10:37 +0200, Gwenael Casaccio a écrit :

> Hello everybody,
>
> Some news about VisualGST, if you try the master branch of VisualGST you
> will two majors changes; a source code widget this is a classical
> text editor with the full class sources. The method categories and
> the methods are merged into one widget. The migration is not totally
> finished but it takes a good shape.
>
> Internal changes:
>
> State is used to update the browser which simplify a lot the code and
> improve a bit the speed; I've updated the GtkTreeView/GtkListView widget
> to made it more simple and Smalltalk friendly:
>
>    treeWidget := GtkScrollTreeWidget createListWithModel:
> {{GtkColumnPixbufType visible. GtkColumnTextType title: 'Methods'}}.
>    (model := GtkListModel on: treeWidget treeView getModel)
>                       contentsBlock: [ :each |
> {each methodViewIcon.
> each selector asString} ].
>
> For a tree:
>
>      treeWidget := GtkScrollTreeWidget createTreeWithModel:
> {{GtkColumnTextType title: 'Classes'}}.
>      treeWidget connectToWhenPopupMenu: (ClassMenus on: self).
>      treeWidget treeView getSelection setMode: self selectionMode.
>       (model := GtkTreeModel on: treeWidget treeView getModel)
>                        item: self root;
>                        childrenBlock: [ :each | self subclasses: each ];
>                        contentsBlock: [ :each | {each asClass name
> asString, ' '} ].
>
>
> Append is really simple too:
>
>    myTree append: anObject.
>
> or
>
>    myTree append: anObject parent: aParentObject.
>
>
> Feel free to reuse GtkMainWindow widget and those widgets for your Gtk
> project ;-)
>
> Simple tasks for VisualGST:
> ===========================
>
>    - testing with bug reports
>    - improve again GtkScrollTreeWidget some ideas:
>        treeWidget treeView getSelection
> setMode: GTK.Gtk gtkSelectionBrowse.
>        replace by:
>        treeWidget aNiceMessage :)
>
>    - GtkListModel "integrated" into GtkScrollTreeWidget:
>        treeWidget contentsBlock: [ :each |
> {each methodViewIcon.
> each selector asString} ].
>    - other idea for GtkTree* a message like expand: anObject
>      and the isExpanded: anObject
>
> Cheers,
> Gwen
>
>
> _______________________________________________
> help-smalltalk mailing list
> [hidden email]
> http://lists.gnu.org/mailman/listinfo/help-smalltalk

--
Nicolas Petton
http://www.nicolas-petton.fr


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk