[Gambas-devel] Debug enhancing (01-43) with source files and diff-files

Charlie Reinl Karl.Reinl at ...16...
Wed Sep 27 22:25:01 CEST 2006


Salut Benoît,

I started to enhancing debug, starting at DebugInfo, there '#' and '?'
are used. You tell me to use them now in a diffent way. Thats possible,
by string analysing.
Or dit I mis something ?
The 'nothing' returned if it is not an object get the programm out of
his way. The Epxr seams to rest after, and the value/values are the new
one. So better it gets a return, which is andled at debug_read.

For the border-less window, I don't like windows (Yes ok) where dates
shown and I can't resize them.

Why 'o' don't exists anymore ?

Amicalment
Charlie


Am Sonntag, den 24.09.2006, 20:29 +0200 schrieb Benoit Minisini:
> On Saturday 23 September 2006 23:08, Charlie Reinl wrote:
> > Salut Benoît,
> >
> > this is the version for gambas2-1.9.43
> >
> > Changes :
> > resizeable Form
> > and also see teh mails this evening.
> >
> > Amicalment
> > Charlie
> 
> I have committed some changes for you in the debugger.
> 
> You now have a new command named '#' that prints information about arrays, 
> collections and objects.
> 
> This command first prints the class name of the object, followed by a space. 
> Then:
> 
> * For arrays, it prints the number of array elements.
> 
> * For collections, it prints the number of elements, a space, and a list of 
> keys stored in the collection. Each key is quoted, written between double 
> quotes, and separated a space. Everything is written on one line.
> 
> * For objects, it prints a list of public properties and variables, separated 
> by a space. If a property or variable is static it is suffixed by the '(S)' 
> string. Everything is written on one line.
> 
> If you use '#' on something that is not an object, the command returns 
> nothing. Maybe it should return a void line, for consistency.
> 
> The '?' command does not print array or collection contents anymore. To get 
> information about objects contents, you must use the '#' command, and the '?' 
> command again to get the value of each object part.
> 
> Now, let's talk about the balloon replacement.
> 
> I'd like you make a new form dedicated to printing the value of an expression. 
> Let's call this form 'FDebugExpr' for example.
> 
> This form should display first what the '?' command returns.
> 
> Then you use a TableView to display each object part. If the user 
> double-clicks on an object part that is an array, a collection or an object, 
> you open a new FDebugExpr window that prints the part contents.
> 
> I suggest that FDebugExpr is border-less, like a yellow note of KNotes, or at 
> least has the ToolBox property set.
> 
> If the debugger runs the code, then all FDebugExpr windows must be refreshed. 
> The ultimate feature then would be displaying in red the values that changed 
> since the last debugger stop.
> 
> I think what I wrote is not very different from what you have already done, 
> but now you have the needed debugger command.
> 
> I added a new method in the Design class, Design.Eval(), so that you can get 
> the value of any expression withotu having to deal with the event loop.
> 
> Tell what you think about all that!
> 
> Regards,
> 





More information about the Devel mailing list