[Gambas-devel] Release of gambas 1.9.34

Fabien Bodard sirfabien at ...176...
Tue Jul 18 18:09:59 CEST 2006


Well it Work !

First good thing in this release ;-)

Second is that all seem to be more handy...

Really the new mascotte is cool (but can we found the original file ?) and the 
kde crystall look give a more finish look. 

About icons now... i've a question... isn't it possible to make a better stock 
class that take the icon directly in the kde and gtk theme ?

For sure it's not easy and it need a name layer because the name of kde icons 
are not the same that the gtk one... but it will be marvellous for the 
integration is the desktop.

The problem is that the qt default icons in fact don't exist... the icons are 
provided by kde... so mabe the stock class maybe owned by kde for Dynamic 
themes... and maybe that some static icons can be puts in the qt.stock so 
after it work like the Dialog class, the kde one take place to the qt one!

What about that ?

Fabien




> Hi,
>
> The development environment got a new look, based on the KDE Crystal icon
> set. I hope you will like it :-)
>
> It does not prevent anyone to make the same set of icons from Gnome :-)
>
> Other main changes are:
>
> * The support of actions, that allows you to link buttons, menus and some
> controls acting together.
>
> * A new instruction, SLEEP, to wait without calling the event loop.
>
> * Two interpreter crashing bugs were fixed.
>
> * Many little changes in the gb.qt component.
>
> The more important change (for you I think) in this version is the support
> of *actions*.
>
> An action is concretely a string property, that some controls have.
>
> At the moment, the following controls have the Action property:
> - Button
> - ToolButton
> - ToggleButton
> - CheckBox
> - Menu
> - SidePanel
> - Window
>
> Controls having the same action synchronize their Enabled, Visible, Value
> (for toggle controls) properties.
>
> SidePanel and Windows with an action behave like toggles, except that that
> the Value property is replaced by Visible.
>
> Menu can become toggles now, thanks to a new property named... Toggle.
>
> To make this magic reality, you must use the Action class to synchronize
> the previous properties. For example, 'Action["action-name"].Enabled =
> FALSE' must be used to disable all controls associated with the action.
>
> When a control associated with an action raises its Click event, then the
> Action_Activate handler is called in its window. This pseudo event handler
> takes the action name as argument.
>
> If this handler does not exist, or returns TRUE, then the Action class will
> search for a same handler in the parent window if this form is embedded,
> until finding the toplevel window.
>
> For example, if you have:
> - A toggle button associated with the action "test".
> - A menu entry associated with the same action, having the Toggle property
> set. - A form associated with the same action.
>
> Then clicking the menu, or the toggle button will show or hide the window.
> And closing the window will toggle the menu and the toggle button too. All
> that happens automagically without writing a line of code.
>
> If the name of the action begins with a dot, then this action is *local*.
> It means that the action is constrained to the form being the event
> observer of the controls associated with the action.
>
> In other words, that means that controls associated with the same local
> action actually belongs to different synchronisation groups if they have
> different event observer.
>
> The only constraint is that you must specify the event observer when using
> the Action class.
>
> For example, you must do: 'Action[".action", ME].Enabled = TRUE' instead of
> 'Action[".action"].Enabled = TRUE'.
>
> If you need real examples, look in the IDE source code that makes a lot of
> use of this feature.
>
> Or look in the Gambas part of the gb.qt component. The Action class is
> implemented there, in Gambas!
>
> If you want to make a UserControl or UserContainer, the Action class has
> two static methods: Register, to link or unlink a control with an action,
> and Raise, used when a linked control raises the event associated with the
> action.
>
> Note that these methods are called by the C++ part of the gb.qt component
> too, thanks to the GB.GetFunction() and GB.Call() methods.
>
> The gb.gtk component will have to do the same things to get action support,
> and a copy of the Gambas implementation of the Action class of course.
>
> I hope you will like this feature. I'm waiting for your comments, if you
> didn't escape from your computer for holidays, of course :-)
>
> Here is the full ChangeLog:
>
> --8<-----------------------------------------------------------------------
>- CONFIGURATION & INSTALLATION
>
> * BUG: A symbolic link named 'gambas2' pointing at 'gambas2.gambas' is now
>   created inside the 'bin' directory of the installation.
>
> DEVELOPMENT ENVIRONMENT
>
> * NEW: KDE Crystal icon theme is used now.
> * NEW: The main window was redesigned with toolbars and actions.
> * BUG: Some fixes in container support in the form editor.
> * NEW: The form editor now has a representation of the window borders and
>   title bar.
> * NEW: The welcome form was redesigned.
> * BUG: Somes fixes in the automatic completion.
> * NEW: A new tab which displays the list of current breakpoints while
>   debugging.
> * NEW: The option form was redesigned.
> * BUG: Automatic creation of property handlers now support static
>   properties.
> * BUG: Opened forms become read-only when the project is running.
> * NEW: The icon editor was redesigned.
> * BUG: Old editor positions are cleared when a new project is opened.
>
> INTERPRETER
>
> * BUG: The GB.GetFunction API does not leak memory anymore when the
>   searched function does not exist.
> * NEW: The '.Array' class lost its point, and is named 'Array' now.
> * NEW: Class.Component is a new property that returns the component a class
>   belongs to.
> * BUG: Object.SetProperty and Object.GetProperty now correctly propagate
>   errors.
> * NEW: Object.Call now takes its arguments as an unique array, and not as a
>   variable list.
> * BUG: An error raised inside a component written in Gambas does not crash
>   the interpreter anymore during a debugging session.
> * BUG: An object variable with a defined class can only accept symbols of
>   this class, and not a symbol of an inherited class.
> * NEW: Randomize now takes an optional parameter to initialize the seed.
>
> COMPILER
>
> * NEW: A new instruction, SLEEP, to wait without calling the event loop.
> * NEW: EXEC and SHELL now support the AS syntax to specify the event name
>   of the returned Process objects.
>
> INFORMER
>
> * BUG: The informer does not use a hardcoded path of itself anymore to
>   implement library preloading.
>
> ARCHIVER
>
> * NEW: The archiver takes a new '-o' option to specify the path of the
>   generated executable.
>
> GB.QT COMPONENT
>
> * BUG: The implementatio of the Design property were reworked.
> * NEW: The Control.Window property now returns the window the control
>   belongs to, even if this window is embedded. BE CAREFUL! THIS MAY
>   BREAK YOUR CODE.
> * NEW: Now a control can be associated with an action, thanks to the Action
>   class. This class is implemented in the gambas part of the component.
> * NEW: Now the Application.ActiveWindow returns the window containing the
>   control having the focus, even if this window is embedded, provided this
>   embedded window has an event handler for the Activate event. Is it clear?
> * NEW: Disabled icons are visually visible now.
> * NEW: Button, ToggleButton and ToolButton now support actions.
> * BUG: ToolButton now have a minimum height according to its font, like the
>   Button control had.
> * NEW: CheckBox supports action now.
> * NEW: Arrange.LeftRight was renamed as Arrange.Row, and Arrange.TopBottom
>   was renamed as Arrange.Column.
> * NEW: Container now raises the Arrange event, to indicate that its
> contents has changed and should be arranged.
> * NEW: Draw.RoundRect is a new method to draw rounded rectangles.
> * NEW: Now DrawingArea controls ignore keyboard events by default.
> * NEW: DrawingArea.Focus is a new property to tell a DrawingArea to accept
>   keyboard events.
> * NEW: Menu now supports actions.
> * NEW: Now menus automatically hide unneeded separators just before
> opening. * NEW: Menu.Toggle is a new property to make the menu acts like a
> toggle button.
> * NEW: Menu.Show and Menu.Hide are two new methods to respectively show
>   and hide a menu entry.
> * NEW: Menu.Popup now takes two extra optional parameters to specify the
>   screen coordinates of where the menu will appear.
> * NEW: Menu.Window is a new property that returns the window the menu is
>   attached to.
> * BUG: Replacing a picture in the Picture cache with another one with the
>   same key does not crash the interpreter anymore.
> * BUG: Changing the background color of a window now works correctly.
> * NEW: Window now supports action, so that it can be automatically shown
>   or hidden.
>
> GB.QT.EXT COMPONENT
>
> * NEW: Editor.Goto now takes an optional argument that center the cursor
>   inside the Editor control.
> * NEW: Procedures can be separated with a gradient instead of just a line.
> * BUG: Some little fixes in the Editor control.
>
> GB.FORM COMPONENT
>
> * NEW: FontChooser.ShowFixed were replaced by FontChooser.FixedOnly.
> * NEW: FontChooser.ShowStyle is a new property that allows to hide the
>   style panel in the middle.
> * BUG: FontChooser does not refresh uselessly anymore.
> * NEW: Some cosmetic changes in the SidePanel container.
> * NEW: A new property, SidePanel.Action, for associating a SidePanel with
>   an action. This way, the SidePanel can be automatically shown or hidden.
> * NEW: A ToolBar control, that acts as a container.
>
> GB.FORM.MDI COMPONENT
>
> * BUG: Some bug fixes in the Workspace control.
> * NEW: Clicking on the titlebar now gives the focus to the associated child
>   window.
> * NEW: Activating windows should not flicker anymore.
>
> GB.SETTINGS COMPONENT
>
> * NEW: Settings.Path is a new static property that returns the default
>   path of configuration files.
>
> --8<-----------------------------------------------------------------------
>-
>
> Regards,




More information about the Devel mailing list