[Gambas-user] IDE Operatiuon questn - suggestions part 2

Benoît Minisini g4mba5 at gmail.com
Sat May 22 16:24:25 CEST 2021

Le 22/05/2021 à 05:52, John Anderson a écrit :
> On Gambas IDE itself:
> A)  One thing I noticed as a newer user that's used to VB6 / Qt IDE 
> world:  On the properties browser on right hand window:  Those Gambas 
> properties aren't actually changed until you hit return or tab away on 
> that property, or use the spin up/down for that property.  For instance 
> if I have an object selected on a form, and I go to properties and 
> change some property X...I see the property is displaying the new value, 
> and in my mind that property has a new value.  Then I hit RUN:  That 
> property reverts to old value.  You have to change the property value 
> THEN hit Return, or tab to another property or use that focused 
> property's spin up/down button BEFORE attempting to compile or run the 
> program. You have to be a bit careful there to change properties then 
> test in the correct order, otherwise you'll swear you changed a property 
> but really the change was discarded.  It would be neat if the new 
> property value could be applied as the cursor leaves the property pane, 
> or before any Save / Compile / Make is executed.

It's just a bug. But apparently it does not bother a lot of people... I 
will fix it.

> B)  On VB6 and other IDE's, when you're in the code editor there is a 
> way to go to "Last Position" which we use a lot.  In other words you can 
> alt-click on the code editor, hit "Last Position" and your cursor moves 
> to whatever previous line you were editing (and previous file tab as 
> appropriate). Usually you can back up at least 10 code positions or so 
> before it wraps back to where you started.   Is there a way to do that 
> in Gambas?

The F2 key on a symbol sends you to the definition of the symbol.

The SHIFT-F2 key sends you back to the previous position.

You have the two back and forward buttons on the top-right of the IDE 
too. Beware, they are still sometimes buggy.

> C) On VB6, you can have the code editor display just ONE single 
> procedure at a time, and that makes it easier to scroll around a very 
> long procedure.  I'm poking around in the code preferences section, and 
> I can see how to add procedure folding & separators, but I was hoping to 
> see a way to display just one procedure at a time in the IDE.  
> Declaration section is treated as one procedure.   You can still jump 
> around to various procedures and events with the procedure list selector 
> as you have now.  Is there a way to do that in Gambas IDE?


> I'm asking because we're looking at re-writing a large-ish VB6 project 
> (80k active code lines), and contained therein we've got some single 
> procedures many hundred code lines long, not counting comments.  I'm 
> evaluating Gambas to see if it's up to the task.

I don't see how displaying only the procedure can help with the fact 
that it is too big.

> D) I really dream about Gambas being able to Pause on Error, change a 
> line of code if possible (or temporarily ignore a line of code to escape 
> a fatal error), then have it continue.  That was a big plus in VB6 even 
> though it could lead to problems if you weren't careful.   The problem 
> with a machine-control software development test that just stops in the 
> middle of a run - maybe you run into a "Array Index Out of Bounds" 
> problem - the machine will just e-stop where it's at and you have to 
> re-initialize the whole system before you can test the new code change.  
> That can take a while on a complex peice of equipment, maybe 15 or 30 
> minutes or more.  We try to design everything to minimize that problem, 
> but being able to work around a fatal error to at least get to a section 
> of code that can shut everything down "gracefully" is a real 
> time-saver.  Yeah I know...Try...Catch... That works great when it's 
> there, but sometimes the best laid plans....

That feature needs too much development time and complexity for the 
benefit it brings.


Benoît Minisini

More information about the User mailing list