Difference between revisions of "Gambas"
Jump to navigation
Jump to search
m (→Flaws: help system) |
m (revised intro, other minor edits) |
||
Line 1: | Line 1: | ||
− | [[Gambas]] is a language and [[IDE (programming)|IDE]].{{ | + | [[Gambas]] is a programming language and [[IDE (programming)|IDE]].{{seedling}} |
+ | Gambas is intended to fill the same niche as [[VB]], though it is not intended to be code-compatible. Gambas is currently only available for [[Linux]]; it is [[open-source]], however, and porting to Windows or other OSs is a possibility. | ||
==Reference== | ==Reference== | ||
* [http://gambas.sourceforge.net/ Gambas homepage] | * [http://gambas.sourceforge.net/ Gambas homepage] | ||
Line 5: | Line 6: | ||
==Woozle Notes== | ==Woozle Notes== | ||
I'm currently trying to learn Gambas, as it appears the easiest of the Linux IDEs I've been able to find so far. Here are the issues I've run into so far. | I'm currently trying to learn Gambas, as it appears the easiest of the Linux IDEs I've been able to find so far. Here are the issues I've run into so far. | ||
− | == | + | ==Stumbling Blocks== |
* The form resize event doesn't pass the form's size as an event parameter. '''Answer''': the size is easily available as a form property. So this issue was just over-VisualBasicization on my part. | * The form resize event doesn't pass the form's size as an event parameter. '''Answer''': the size is easily available as a form property. So this issue was just over-VisualBasicization on my part. | ||
− | * When you make a set of controls into a group and then assign an event to the group, how do you get a pointer back to the control which initiated the event? | + | * When you make a set of controls into a group and then assign an event to the group, how do you get a pointer back to the control which initiated the event? The most obvious solution would have been for the event to pass the control as a parameter; Gambas events don't seem to use parameters. Another intuitive solution would have been for the group itself to appear on the form's list of controls/methods, as an alias for the currently active/effective control, but this doesn't seem to be the case. Finally, if the form had an ActiveControl property, I could pull the .Tag value from there, although I would expect to run into problems using this technique under some circumstances. '''Answer''': The LAST keyword refers to the control which generated the current event. |
==Flaws== | ==Flaws== | ||
* (Minor) Identifiers are not automatically capitalized to match their declaration, as in VB; fortunately, identifiers are not case-sensitive, so this doesn't make things ugly the way it does in C/C++. | * (Minor) Identifiers are not automatically capitalized to match their declaration, as in VB; fortunately, identifiers are not case-sensitive, so this doesn't make things ugly the way it does in C/C++. | ||
* (Semi-minor) The field-list doesn't pop up under certain circumstances; checking into this. | * (Semi-minor) The field-list doesn't pop up under certain circumstances; checking into this. | ||
* (significant) Help system is not context-sensitive; you have to type the term in manually and search for it. Similarly, there doesn't seem to be a way to go to an identifier's definition. | * (significant) Help system is not context-sensitive; you have to type the term in manually and search for it. Similarly, there doesn't seem to be a way to go to an identifier's definition. | ||
− | |||
==Notes== | ==Notes== | ||
* The Help system appears to be wiki-based, possibly feeding directly off the Gambas wiki -- so any errors found can be corrected by anyone, in theory. Not sure how easy this is in practice. (Edit buttons do not appear in the Help app, so you would have to find the correct page on the wiki.) | * The Help system appears to be wiki-based, possibly feeding directly off the Gambas wiki -- so any errors found can be corrected by anyone, in theory. Not sure how easy this is in practice. (Edit buttons do not appear in the Help app, so you would have to find the correct page on the wiki.) |
Revision as of 23:34, 2 January 2006
Gambas is a programming language and IDE.
Gambas is intended to fill the same niche as VB, though it is not intended to be code-compatible. Gambas is currently only available for Linux; it is open-source, however, and porting to Windows or other OSs is a possibility.
Reference
Woozle Notes
I'm currently trying to learn Gambas, as it appears the easiest of the Linux IDEs I've been able to find so far. Here are the issues I've run into so far.
Stumbling Blocks
- The form resize event doesn't pass the form's size as an event parameter. Answer: the size is easily available as a form property. So this issue was just over-VisualBasicization on my part.
- When you make a set of controls into a group and then assign an event to the group, how do you get a pointer back to the control which initiated the event? The most obvious solution would have been for the event to pass the control as a parameter; Gambas events don't seem to use parameters. Another intuitive solution would have been for the group itself to appear on the form's list of controls/methods, as an alias for the currently active/effective control, but this doesn't seem to be the case. Finally, if the form had an ActiveControl property, I could pull the .Tag value from there, although I would expect to run into problems using this technique under some circumstances. Answer: The LAST keyword refers to the control which generated the current event.
Flaws
- (Minor) Identifiers are not automatically capitalized to match their declaration, as in VB; fortunately, identifiers are not case-sensitive, so this doesn't make things ugly the way it does in C/C++.
- (Semi-minor) The field-list doesn't pop up under certain circumstances; checking into this.
- (significant) Help system is not context-sensitive; you have to type the term in manually and search for it. Similarly, there doesn't seem to be a way to go to an identifier's definition.
Notes
- The Help system appears to be wiki-based, possibly feeding directly off the Gambas wiki -- so any errors found can be corrected by anyone, in theory. Not sure how easy this is in practice. (Edit buttons do not appear in the Help app, so you would have to find the correct page on the wiki.)