[Gambas-user] Beep?
Pretty simple? How can I make the computer go "beep" (I have a very long routine to run, I estimate over 10 hours and will probably have to run it several dozen times. I have built it to run as a console app, so it can toddle along happily in the background, so to speak. Every now and then it requires operator input to resolve a choice that it cant make. So I would just like it to beep when this happens.) bruce -- Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Beep? Solved! Thanks
On 19/10/10 19:49, charlesg wrote: > Just as well! I just tested my version and it doesn't work anyway. :,( > > 'echo -e \\007' does work from terminal. > > > > Benoît Minisini wrote: >>> SHELL "echo -e \"\\007\">/dev/tty10" >>> >>> I think I got that from this forum. >>> >>> bbb888 wrote: Pretty simple? How can I make the computer go "beep" >> In Gambas, PRINT Chr$(7); if you are running inside a terminal. But if >> your >> terminal is an emulator (e.g. konsole), you may have to configure it to >> actually make a true beep. >> >> Regards, >> >> -- >> Benoît Minisini >> >> -- >> Download new Adobe(R) Flash(R) Builder(TM) 4 >> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >> Flex(R) Builder(TM)) enable the development of rich applications that run >> across multiple browsers and platforms. Download your free trials today! >> http://p.sf.net/sfu/adobe-dev2dev >> ___ >> Gambas-user mailing list >> Gambas-user@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/gambas-user >> >> Amazing!! Thank you both. In fact all 3 or was it four methods seem to work. Apologies. I did not think to search the forum. Anyway, (beep,beep) I'd better go Thanks again Bruce p.s. If its of interest, I am matching patient data over five historical databases ( up to 22 years old) for some pathology research guys. I now have all databases loaded "in image" into postgresql databases and am trying to match the patients based on names, addresses, referring doctor etc etc. Its a lot of "fun" trying to determine strategies to decide on a match or not! But we are now down to 145000 odd un- or "not sure" matches from over 1,600,000 pathology test reports. The big project is about determining how much pathology has improved, my part is just to try and fine down pathology history into "unique patient" histories. I got the job because about 30 odd years ago I was involved in the development of one of the original "Soundex" systems in Australia to try and match patients in a casualty ward. It is a bit of fun determining the fuzzy logics here though, like "if patient.gender = "male" and matchpatient.pathtest="Pap Smear" then EliminateMatch(patient, matchpatient)" etc etc but we do get down to things like is Mr C Lo the same as Mr C Low etc. So each run over the 145000 ( and dropping) suspect matches is aimed at trying one or two new rules to eliminate incorrect matches. By the way, the 145000 suspects has around 750,000 matchpatients. So there is a way to go yet. Each run reveals the possibilty of new rules, but sometimes the existing rules don't resolve to 100% yes or no. Hence the need for the beep when the "superbrain" needs a bit of help. -- Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Re-ordering menus
Probably a silly question, but I'm just having a little think. Is there any way to programatically (i.e. dynamically) change the order in which a menu item appears in a drop down menu? regards Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Re-ordering menus
On Thu, 20 Nov 2014 00:26:07 +0100 Benoît Minisini wrote: > Le 20/11/2014 00:22, B Bruen a écrit : > > Probably a silly question, but I'm just having a little think. > > > > Is there any way to programatically (i.e. dynamically) change the order in > > which a menu item appears in a drop down menu? > > > > regards > > Bruce > > > > Alas no, the toolkits do not allow that easily. You have to recreate the > menu from scratch in order. > > Regards, > > -- > Benoît Minisini > Damn! (It was a nice little "think".) It came about from a comment from Felicity, our gui design expert, who said "How come we let the users configure the toolbars to their own satisfaction but they can't do it with menus?" and several other things including "How about a user "Favorites" menu then?" etc etc. Oh well, never mind. regards Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Gambas Software Farm in revision #6666 (!)
On Sun, 23 Nov 2014 03:30:28 +0100 Benoît Minisini wrote: > Hi, > > It's late there, but I wanted to make that available as soon as possible > so that people can see it and comment, even if it is not finished at > all. (It's for the revision number too...) > > I added a new button in the IDE welcome dialog that opens the "Gambas > Software Farm" dialog. > > At the moment, it allows to browse the content of a Gambas farm. By > default, it should points at 'http://gambaswiki.org' for testing. > > Voting for a software and installing a software is not done yet. > > I have registered the 'gambasfarm.org' website, so that it become the > official Gambas Software Repository in the future. > > At the moment, registering to a farm is possible from the IDE option > dialog only. And publishing is done from the 'Publish...' menu entry. > > Waiting for the comments now... > > -- > Benoît Minisini Deleting a tag by clicking on the red cross fails. See pic. -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] IDE enhancement request - "Run that form"
The "Run that form" button on the form editor toolbar is so handy I'd like to request that it also be included in the project tree popup menu (when the item selected is a form obviously). And to really go out on a limb, could the popup menu for a selected module have a "Run that module" entry that would invoke the module if it has a "Main" method" tia Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Gambas Software Farm in revision #6676
gt; > - A *.desktop file is created and installed in > '~/.local/share/applications' so that it appears in the desktop menu. I think this should only happen if the project is a "Normal". > > Waiting for your comments! You got em. > > -- > Benoît Minisini > Most of the above is based on my intent to use our own farm server, which I wont use until this whole thing works fully. But as I said, it is looking good. best regards Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Gambas Software Farm in revision #6676
On Wed, 26 Nov 2014 22:05:26 +0100 Fabien Bodard wrote: > 2014-11-26 19:12 GMT+01:00 T Lee Davidson : > > On 11/26/2014 09:47 AM, Fabien Bodard wrote: > >> I like the idea of a password, one could also imagine a password > >> dynamic key. That is to say a calculated key and unique provided by > >> the farm at the time of payment. > > > > Yes, Fabien, that would be very handy for a marketplace. > > > > But, my idea of protecting private listings with a password was not > > intended to complicate the Farm platform, nor to try turning it into a > > marketplace. If the Farm provided any access credentials at the time of > > payment, then it would have to process payments -- and would be a > > marketplace. > > > > The idea was primarily intended to respect Benoît's declaration that the > > Farm is not intended to be a marketplace while giving publishers, who > > wished to do so, the ability to use it *somewhat* in that manner. > > > > It should be quite simple in concept. > > 1. Publisher sets listing to Private and sets a password. > > 2. User wishing to have publisher's software follows publisher's URL. > > 3. Publisher handles all the rest through to providing the password. > > > > Of course, if Benoît wants to make it more complicated than that, that's > > up to him. :-) > > I don't want to it to be so complicated... it was just an idea. As the > farm can be not only on the wiki place but on private servers too. > It was an idea for extends. > Which is certainly the way we intend to use it. One thought, if the download part was managed using ftp rather than http then the "private" downloading could possibly be handled via the ftp server security features without much internal effort? I believe, but haven't tried it, that the ftpClient has the means to pass the necessary credentials on a Get. (Note: I mean the actual retrieval part only, not the whole farm concept.) regards Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] New behaviour for the Split() instruction
On Sat, 29 Nov 2014 22:22:23 +0100 Tobias Boege wrote: > On Sat, 29 Nov 2014, Beno??t Minisini wrote: > > I'm currently a new behaviour for the Split() instruction, that is > > normally backward-compatible. > > > > Split("abcd",";","\\;") > > > > splits the "abcd" string with the ";" character, and uses the backslash > > character for escaping it. > > > > This behaviour is enabled when the escape string (the third argument) > > has two characters, and its second character is the same as the first > > splitting character (the second argument). Then the first character of > > the escape string is the escape character (usually a backslash). > > > > What do you think about that? > > > > I have not found any use of a two-character escape string in my collective > projects. Therefore, no objection. (Although I don't really understand what > the change means. Do you have an example of what Split() gives before and > after your change, in a case where they're different?) > > Regards, > Tobi > > -- > "There's an old saying: Don't change anything... ever!" -- Mr. Monk > Yes, I would like to see an example of before and after as well. I think I had a need for exactly this the other day. I wanted to split a comma delimited list except where the comma is immediately followed by a space. Will this change help that? regards Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] A good idea? Revisited again.
So far, and ignoring our own "industry specific" (see Note 1) virtual menu items, I have produced the following general popup forms as virtual menu items (custom controls): * Help|About Me : A virtual custom control that implements a "standard" popup form showing information about the current application extracted from the Gambas executable archive. * Help|System Information : A virtual custom control that implements a "standard" popup showing information about the current OS, Gambas and application environment. * Help|Browse Help : A virtual custom control that provides an application level help browser similar to the IDE help browser. This is supported by a help system development utility. However it has some limitations as explained in Note 2 below. * File|Recent : (This one I am very happy with :-) ). A completely self contained implementation of the "Recent Files" concept. *File|* : This one is a bit weird, it creates a "standard" File menu item at the top level and most (well OK "some") of the standard things one would expect in the "File" menu of a normal user application. See Note 3. *Tools|Options : (On the one hand I'm very happy with this, on the other...) A virtual custom control that implements a program options menu item under Tools and a popup form "similar" to the IDE Tools|Preferences menu item. It creates the entire popup form on the fly from a definition file (let's call it .options) within the executable archive. The "other hand" is this. I have hacked the IDE form designer code a bit and can now edit that definition file from within the IDE. That is, the virtual control component has a form that let's the programmer create/modify the definition file. The IDE hack responds to a button click on the "Options" property, shows the editor (which is somewhat similar to the Menu editor) and allows the programmer to set up the Tools|Options for the project without a single line of code. I am not really very happy with the way the hack works (Note 4) but it does appear to work. What's the point of all this? -- These custom controls provide self contained functionality that implement a menu item in a form menu by simply dragging the control from the toolbox onto the form. Little or no coding is needed in the form class to manage that functionality. For developers who support multiple projects and would like to have the same functionality, with the same appearance, shortcut key etc etc across multiple forms this approach makes implementing that "standard-ness" very easy. I would like to know whether there is any interest in this stuff. We are quite prepared to publish them on the Gambas farm if there is such interest (they are "programming tools" if you like and thus have no commercial value to us.) regards Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] A good idea? Revisited again.
Woops, I chopped off the notes. Notes 1] This concept can also provide with minimal effort your own industry specific virtual menu items. For example, say your system has a EditCustomer form that you want to be able to access from mulitple other forms in your system. By wrapping that form in a "virtual menu" project, which takes but a few minutes, you can create a virtual custom control for the form. 2] The helpset development utility is buggy and there is a problem with relative paths that I haven't got around yet (complex situation where the target helpset file is in a "middle level" component, i.e. application project uses vhelp component and another vmenu component, say a search utility which also uses vhelp. I cannot solve how to extract the target help set file from the middle component ... 3] alpha only 4] This is an interesting thing, I have a patch/hack for the IDE that lets us run the custom control configuration editor. It is a fairly simple change to FProperty.class around line 774: --- FProperty.class(revision 6688) +++ FProperty.class(working copy) @@ -774,8 +774,15 @@ Case Else 'object - hEditor = cmbProperty - InitComboWith($hForm.FindControlFromType($sType).Sort(gb.Natural + gb.IgnoreCase), "(" & ("None") & ")") + If $hObject.Unknown Then +If Project.Sources.Exist("FEditConfig.form") Then + Project.Run(False, -1, "FEditConfig") + Return +Endif + Else +hEditor = cmbProperty +InitComboWith($hForm.FindControlFromType($sType).Sort(gb.Natural + gb.IgnoreCase), "(" & ("None") & ")") + Endif End Select It looks for a specifically named form in the current project and if found then runs that form. The configuration must be self contained, i.e. in this case we write an "options" text file into the source project directory. It cannot send any information back to the IDE. Not entirely satisfactory but it does provide some sort of proof that it may be possible to enhance the IDE properties editor through external code. regards Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] An utility component for Gambas
On Mon, 01 Dec 2014 14:48:59 +0100 Benoît Minisini wrote: > Hi, > > I'd like to create a 'gb.util' component, written in Gambas, to collect > useful non-GUI programming routines that can't go directly into the > interpreter because it would make it too heavy. > > For example: > > - Creating a directory and all its parent. > > - Removing accents from an UTF-8 string. > > - A CsvFile class to read CSV files easily. > > - Removing a directory recursively. > > - Moving a file or a directory, whether source and destination are on > the same device or not. > > ... > > If you have ideas, just drop them. And better, uf you have code, and are > agree to share it, modify it, maintain it, you are welcome! > > The difficulty will be to find the best interface (class name, method > name, where to put it) for that. > > For example, for the removing accents method, I extended the String > class. Logical... For directory methods, I created a new Shell static > class... > > I'm waiting for your comments! > > P.S. The gambas fram client is more and more polished. Don't hesitate to > play with it. The more tests, the sooner it will be released. I want to > release Gambas 3.7 as soon as it is ready, even if there is not a lot of > other changes in Gambas. > > Regards, > > -- > Benoît Minisini > Attached our GenUtil module source, use what you like. My "favorites" are DateUtil.StrToDate and StrUtil.Proper and StrUtil.NormName regads Bruce -- B Bruen genutil-0.0.52.tar.gz Description: Binary data -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] An utility component for Gambas
On Mon, 1 Dec 2014 20:30:19 -0300 Sebastian Kulesz wrote: > Would it be okay to include this component inside the gambas3-runtime > package or should I create a new one for it? > > Not sure what you are talking about? B -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] IDE silent crash with Connections
It seems that if the underlying sqlite database file for a defined connection has been deleted then when you click on the IDE Connections entry for that database the IDE will silently crash. Create an sqlite datdbase. Create a connection for it in the IDE. Delete the database file. Double click on the Connections entry for it. Poof! IDE gone. Not confirmed against native IDE, but certainly happens here. regards Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] how to capture click event on a popup menu.
On Tue, 2 Dec 2014 22:44:04 +0100 Tobias Boege wrote: > On Tue, 02 Dec 2014, Martin McGlensey wrote: > > Hello, > > > > > > > > I've used the menu to create menus on my main form. Those that I want to see > > on the tool bar are marked visible. Those that I want to use as popups are > > not visible on the tool bar. These two menus are attached to individual text > > boxes in the graphic form designer. When I right click on the textbox the > > popup appears but, when I click on it nothing happens. In the form code I > > have the sub: > > > > > > > > Private Sub mnuA_Click() > > > > FForm.Open > > > > End > > > > > > > > The form FForm does not open. In the debugger I can see the click event is > > not captured. What did I miss? > > > > Well, what's the event name of your menu? > > Or if you don't want us to guess around: Can you send the project? > > Regards, > Tobi > I can guess :-) PUBLIC Sub mnuA_Click() regards Bruce -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Class.Symbols - local, inherited, overridden ???? Bah!
I am trying to work out whether a .Symbol as returned by Class.Symbols (or more correctly Classes["someclass"].["somesymbolname"]) is local, inherited or overridden. (Don't ask, "Why?".) In my naive days back in Gambas 2 I had the following routine that seemed to go a far way there: Public Sub btnCopyOwnProps_Click() Dim sList As New String[] Dim symName As String For Each symName In $currControl.Symbols If $currControl[symName].kind = Class.Property Then Try IsNull($currParent[symName]) If Error Then sList.Add(MakeProp(symName)) Endif Endif Next sList.Sort Clipboard.Copy(sList.Join("\n")) End This was, as far as I can recall, supposed to copy the names of property symbols declared in the subject $currControl class onto the clipboard that are not declared in the $currControl's parent class($currParent), i.e. they are local properties. This still appears to work for detecting whether a property is local or inherited. However, what is driving me mad is trying to detect whether the current class actually overrides the inherited property.. Is there any way to detect this? The IDE help browser "seems" to do so somehow, but I think it is doing it some other way. (If you r e a l l y want to know why, it's for a custom control code generator. ... ... ... I didn't think so...) tia Bruce -- B Bruen -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] how to capture click event on a popup menu.
On Tue, 2 Dec 2014 20:35:01 -0500 "Martin McGlensey" wrote: > Thanks for the responses. Remember I'm still climbing that steep learning > curve. The sub to catch the click event is Public Sub mnuAdvanced_Click() > but that does not catch the event. I do not know how declare or find the > event name. The menu was created in the form menu editor, so how do I define > an event name? > > > > Thanks, > > Marty > OK, try studying the attached project. It has a displayed and a hidden menu that is attached to a textbox. If it doesn't enlighten then we'd better go back to Tobi's "send the project" suggestion. hth Bruce demoMenus-0.0.1.tar.gz Description: Binary data -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Gridview sort function
On Wed, 24 Dec 2014 11:57:11 -0500 T Lee Davidson wrote: > Apparently I didn't take enough time, Bill. > > I only tested that the text of the TextBox changed appropriately for a > column_click, I did not test clicking Button1. > > You are right. The value of TableView.Columns.Ascending within the > Column_Click event does not agree with the value outside of the Column_Click > event. I do not understand this behavior. > > So I'd say that either there is something missing in the documentation, or > this is a bug. I have attached a modified version of your sample that > shows this anomaly more clearly. > > Can anyone else shed some light on this? > > > Lee > __ > > "Artificial Intelligence is no match for natural stupidity." > This may shed a bit of light: Public Sub TableView1_ColumnClick(Column As Integer) The "Column" value in the click handler is the newly "selected" column, however the sort values have not been set yet, this happens after the click handler has finished. So you are not correctly displaying the sort values in the TextBox1. Attached updated project with some more debug info that shows the actual sort values. After you have waded through that a bit, uncomment lines 11 and 12 which should really confuse you :-) cheers Bruce -- B Bruen TableviewExample-0.0.1.tar.gz Description: Binary data -- Dive into the World of Parallel Programming! The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Problems on mail list
On Sat, 27 Dec 2014 18:37:05 +0100 Benoît Minisini wrote: > Le 27/12/2014 13:44, Gian a écrit : > > This morning I received the email sent on 25 by Wolfgang. > > My answer of 11:29 today 27 not appears. > > What happens to the mail list? > > Hello > > Gianluigi > > > > The mailing-list is managed by the Sourceforge servers, and we can't do > anything if something goes wrong, except praying. > > -- > Benoît Minisini > Hail Mary full of grace, Deliver us from this terrible place, There is no mail, there is no news And no-one solves my Gambas blues. We keep the faith, we hold the light, Please get us out of this terrible plight. My events don't fire, my handlers fold silently, no errors told. We hold the 'Forge in reverence and look each hour in expectation of clues, and even Tobi's sense but yet there seems to be stagnation. Mary, we do implore that you knock upon their door, kick their a*s*, make them move and hopefully then things improve. Amen (apologies but I was on a roll) Looking forward to Gambas2015 !!! :_) Bruce -- B Bruen -- Dive into the World of Parallel Programming! The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Advising methods of non-fixed argument tuple in a parent class
On Tue, 15 Apr 2014 12:55:51 +0200 Tobias Boege wrote: > At > present, you have to create .src/Variant[].class outside of the IDE in your > project because the IDE forbids use of brackets in class names. However, the > interpreter doesn't seem to have any problems with that. Nice tip Tobi, I never could solve that! -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Inheriting, wrapping and casting
he > > syntactical native language's feature of inheritance --- and its useful > > properties -- and to define a dedicated container base class, which > > inherits from nowhere, semantically wrapping all functionality of the > > class 'Variant[]'. It'd work as a layer for accessing the underlying > > variant array which would be stored in a private variable and isolated > > from the outside world, i.e., not directly accessible by any property. > > The only way to modify the array's content would be to use the > > class' interface which would mimic that of 'Variant[]'. > > > > As we've seen, there is no way if not by modifications of the > > interpreter's very core. Thus, I'd like to know why Gambas enforces > > the signature of functions onwards inherited classes. If not by > > technical reasons, but only for methodological consistency requirements, > > I'd like to suggest that we make it, at least, allows to use the > > inherited class in place of the parent class within method signatures. > > Personally, I'd find yet more useful if there were no restriction at > > all. > > > > A very interesting and useful feature, related but independent of this > > suggestion, is that the interpreter could take care of casting objects > > in both directions in an hierarchy of classes. In order to accomplish > > it, there would be introduced two special methods which would be > > implemented in any class the programmer deems them meaningful and > > useful: '_castUp' and '_castDown', for casting an object from the > > inherited to the parent class, and from the parent to the inherited > > class, respectively. Being 'ThisClass' the inherited class and > > 'UpClass' its parent, the special methods signatures would be: > > > > Static Public Function _castUp (hThisClass As ThisClass) As UpClass > > Static Public Function _castDown (hUpClass As UpClass) As ThisClass > > > > The job of the interpreter would be to call these functions, in a > > possible chain, to cast automatically upside or downside every time an > > object of certain class is used in a context that requires an object of > > another class but in the same hierarchy. > > > > What are your thoughts on that? > > > > > > Thank you. > > > > > > -- > > ,= ,-_-. =. Bruno Félix Rezende Ribeiro (oitofelix) [0x28D618AF] > > ((_/)o o(\_)) There is no system but GNU; > > `-'(. .)`-' GNU Linux-Libre is one of its official kernels; > > \_/ All software must be free as in freedom; > > > > > > -- > > Learn Graph Databases - Download FREE O'Reilly Book > > "Graph Databases" is the definitive new guide to graph databases and their > > applications. Written by three acclaimed leaders in the field, > > this first edition is now available. Download your free book today! > > http://p.sf.net/sfu/NeoTech > > ___ > > Gambas-user mailing list > > Gambas-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/gambas-user > > > > > -- > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/NeoTech > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Custom control not appearing in toolbox
On Mon, 5 May 2014 21:13:25 -0700 (PDT) VonZorch wrote: > I developed a custom control. I followed the instructions on the How to > Program Components In Gambas page. It works correctly and can be selected > from the project properties dialog. It can be created in code but I cannot > get it to appear on the IDE toolbox. SpeedListBox.gz > <http://gambas.8142.n7.nabble.com/file/n46335/SpeedListBox.gz> that link > should be the source archive and installer. > There are png icons files in the correct place using two variations of the > class name. > Can someone shed a little light on this problem? You cannot inherit UserControl as you are already inheriting Form. See comp/source/gb.form ColorChooser (and FColorChooser) for a good example of how to use a form to design a custom control. Your control can use a form as you intend to "design" the control, but the actual exported control must either inherit from UserControl or UserContainer (or some other control) in order to work properly. hth -- B Bruen -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: • 3 signs your SCM is hindering your productivity • Requirements for releasing software faster • Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] New Syntax, SUPER && !comprehension(mine) Re.: SUPER example at gambasdoc
On Thu, 08 May 2014 09:00:38 -0400 Stephen wrote: >Looking at the thread "New syntax for using variables arguments in a > function call" I realized that I needed to really brush up on my > somewhat marginal understanding of the evolving (a good thing) GAMBAS > and OOP. Not fully understanding "SUPER" (I've never used it but can see > a use for it) I trotted off to Google and the GAMBAS documentation, > where much reading was done, and (as usual) more questions raised. >Studying the "SUPER" example at http://gambasdoc.org/hemp/lang/super, > I wondered at the purpose of a collection that seems not to be used but > once and some syntax in it's use in the example, which didn't make any > sense to my old brain. Below is a snippet from the example (where $cPos > is a collection, $aKey an Array of String Objects (I think) and Key a > string object; > > $cPos.Clear > $cPos[Key] = $aKey.Count > $aKey.Add(Key) > >OK, the first line clears the collection, got it, and the last line > adds the contents of "String" to $aKey, got that but what does the > second line do? It looks like it is adding the count of elements in > $aKey to the collection $cPos... but in OOP I would use a method call > i.e. $cPos.Add(Key,Key). Oh, and in trying to implement the example > GAMBAS (3.5.3) complained that "ListBox.Add is incorrectly overridden". > > -- > Kindest Regards > Steve :) > > Probably better to read the example as: ' MyListBox class Inherits ListBox Private $cPos As New Collection Private $aKey As New String[] ... ' Reimplements the Add method Public Sub Add(Text As String, Key As String, Optional Pos As Integer = -1) ' Adds the item to the parent list box Super.Add(Text, Key, Pos) ' Now do some other stuff that we want in our specialised class like... If Pos < 0 Then $cPos.Clear $cPos[Key] = $aKey.Count $aKey.Add(Key) Else $aKey.Add(Key, Pos) Endif End The example is just trying to demonstrate an override method in the specialised class and how to use Super to get at the ancestral class method of the same name. The importance is that MyListBox.Add() cannot use Me.Add() as that will refer to the child class (i.e. stack overflow) but we can get to the ancestral method. -- B Bruen -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: • 3 signs your SCM is hindering your productivity • Requirements for releasing software faster • Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] System.TimeZone Error?
On Sat, 10 May 2014 17:32:13 +0200 "Wolfgang, dl7nb" wrote: > Hi, > System.TimeZone is defined as follows: > > Return the system timezone. > The returned value is the number of seconds you must add to the > locale time to get the UTC time. > > *That is not always done correctly. * Actually, it is correct, it just doesn't recognize "daylight savings". The reason lies deep inside the way tzutils works and somewhere in the extensive documentation. (I have forgotten where.) > > During winter I used it and it has a result of 3600. This is correct as > the difference between UTC and the time her in Germany is 1 hour (or > 3600 seconds) > - > But now (summertime) we have daylight saving time, which means we have a > difference of 2 hours. System.TimeZone still shows 3600. It should show > 7200 to have the correct number of seconds. > - > So how can I find out what UTC.time really is?? > How can I solve this problem? Probably the simplest way is : Shell ("date --utc") To sUTCDate You can use the date options to return the string as you require it. hth -- B Bruen -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: • 3 signs your SCM is hindering your productivity • Requirements for releasing software faster • Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Valuebox. Property ReadOnly doesn't work?
On Sat, 10 May 2014 14:26:53 +0200 Tobias Boege wrote: > On Sat, 10 May 2014, Francisco Martinez wrote: > > El 10/05/14 12:20, Tobias Boege escribi?: > > >On Sat, 10 May 2014, Francisco Martinez wrote: > > >>El 08/05/14 15:01, Beno?t Minisini escribi?: > > >>>Le 27/04/2014 00:48, Francisco Martinez a ?crit : > > >>>>Hi buddies. > > >>>> > > >>>>In running mode. I see that ValueBox's ReadOnly property is True, but I > > >>>>can write inside. It is a bug?. > > >>>> > > >>>>I'm using the development version: > > >>>>3.5.99.1+svn20140424+build51~ubuntu12.10.1 > > >>>> > > >>>>Thanks > > >>>> > > >>>Please provide a little sample project that reproduces the bug, because > > >>>ValueBox is a complex control, so I can't guess how you use it. > > >>> > > >> It's simple. You need: > > >> > > >>- A form > > >>- A valuebox > > >> > > >>Change the property's read-only control valuebox to True. > > >>You run it. Now try writing in the valuebox control. > > >>It is possible. I think that's not correct. > > >> > > >It works here (using trunk) as expected, i.e. I cannot write into the > > >ValueBox when ReadOnly = True. > > > > > >That's why we ask for a project. Have you tried your steps on a fresh > > >project? Sometimes something's wrong with a project's .form or similar > > >things that make it impossible to reproduce or find the error from such > > >a verbal description of your project. You may use some configuration of > > >components that produce the error or things you, as a user, can't think > > >of but people may see from your actual project. (Also it's annoying, how > > >simple it may be, to rebuild the project :-) > > > > > >Regards, > > >Tobi > > > > > Ok. Tobias. ;-) > > When I use type number, I don't have problem. But if I use type currency, I > > can write in ValueBox. > > I'm using the development version. > > > > This time, I have uploaded a example. > > I think I have explained better this time. I hope so. :-) > > > > Sorry for all the text that has this message. I don't want that you to miss > > anything. > > Thanks Tobias. > > > > AFAICS, the bug is not directly in the ValueBox but in the controls that are > used by it internally. The same thing happens with DateBox and MaskBox (when > a mask is specified)... If ValueBox.Type = ValueBox.Number, then a TextBox > is used which apparently gets things right - but the others somehow don't. > > Regards, > Tobi > H, this is related to issue 511, which I thought was fixed? -- B Bruen -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: • 3 signs your SCM is hindering your productivity • Requirements for releasing software faster • Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Forms (dialogs) from within a module/class
On Mon, 12 May 2014 09:15:45 +0200 Rolf-Werner Eilert wrote: > Just a question which has been there for a long time, but difficult for > me to describe: > > When I have a module or class that needs some dialogs when running, do I > have to load these forms independently from the main program or is there > a way to "pack" them into the module or have them as childs of this > module/class in the treeview? > > Hope you got what I mean... > > Rolf > Regarding the second, "have them as childs ... in the treeview" : I am presuming that you are talking about the IDE project browser. The only way that a class/module will appear as a child node in the treeview is if it inherits from the higher node . BUT if you want to collect classes etc into groups then just create a "Directory" in the treeview and create or drag them there. The IDE code is structured that way. Regarding the first, I am not sure what you are after here? I think that if a class/module method requires a dialog form then the entire instanciation and showing of the form is most properly handled within that class/module rather than the main application form. It would be interesting to see some pseudocode that demonstrates your problem. hth Bruce -- B Bruen -- "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Forms (dialogs) from within a module/class
On Mon, 12 May 2014 10:50:55 +0200 Rolf-Werner Eilert wrote: > But when I want to re-use the module in another program, I will have to > copy the form as well. So I thought, it might be nice to have some means > of incorporating this form into the module so it is not a dialog for > everyone in the project but a specialised form for that module only that > comes with it automatically when copied from one project to another. This sounds like you don't know about creating libraries and components? We have a multitude of components/libraries that we have created ourselves to share common functionality between projects. Things like a "GenUtil" component that has extended Date utilities, File utilities etc etc that we use to "extend" gambas (the way "we" want). In fact most of the things in comp (none of mine!) ostentatiously started as a local component. Some ideas you may find at http://paddys-hill.net/wp/gambas/gambas-components which (generally) are the ones that are (ahem) stable enough to distribute. If I have misinterpreted, then feel free to complain to the appropriate /dev/null :-) -- B Bruen -- "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] best programming practices:
(Oh OK, I'll top post :-) ) as said, It depends! "Joel on Software" had some great articles on user interface design. You may still be able to google them somehow. But one thing he said always stuck in my mind. (Not a quote, but a paraphrasing) "Always design your UI with the "User" not the "I" in mind, if the interface is not intuitive then you fail" And, just to make us all feel better, Oh boy, have I ever failed over time! Some examples: Multiple forms vs multitudinal controls: 1) If you use multiple forms (either as tabs or popups), then make sure that 80% of the users work can be done on the first form. So many times we (here) have caught ourselves putting the "hard to code" data items on another tab/popup just because we were too lazy to dig in and code the necessary. 2) Less is better. 80% of use cases require 20% of the "optional" data. Again, "we" (can't blame the colleagues for this one) have been guilty of putting unnecessary optional data on the first tab/popup because it is a "logical data group" - if it defaults 99% of the time then stick it in the "Advanced" tab. 3) Wizards are not good. They are great the first few times, then they are a pain (included here because a wizard is a "single" form with lots of controls). A bad example is the IDE packaging wizard. Click, click, enter changelog comment, click 5 times and then click "Close". Hmm, one day I may have to address that. :-` 4) Don't group unlike checkboxes. If a check box datum is a stand alone attribute then don't include it in a frame or any other grouping view. That is just anal retentive insanity. (and the label should be on the left!) 5) Don't make controls disappear just because they depend on the value of some other control. It is a visual nightmare. It is better to disable them. more later ... must cook! On Mon, 12 May 2014 09:10:43 +0200 Rolf-Werner Eilert wrote: > My answer would be: it depends :-) > > When you see a form as one task to be performed by the user, in most > cases it is good to keep everything related to this task within its > form. You will most likely find some kind of workflow roughly going in > writing direction, i. e. from top left to bottom right. If you need data > to be defined by the user before the user can proceed to the next step > within this form, it might be helpful to gray out any further steps to > avoid confusing the user with too many options at one time. > > I use to keep the main tasks in one main form, splitting it up into not > too many parts which can be totally independent to each other. Just try > to think like the user: What would the user expect to see at a first > glance, and when does the user really need this or that option? > > It depends also on the kind of program you make. There are complex tasks > like monitoring data which might create a lot of small controls on a > panel at the same time to give a comprehensive overview. In my cases, > there are mostly lists of data (names) to be seen (a treeview) which > show up with data on the right sight when clicked. But there is also a > classbook managing tool which has four tabs with different main tasks > and several sub-tasks on each tab. > > Hope it helps a bit. > > Rolf > > > Am 12.05.2014 02:49, schrieb Jb Skaggs: > > is it better to have multiple forms or one form with lots of controls > > that show and hide? > > > > I like to have multiple forms- but which is faster and considered the > > better method? > > > > -- > > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > > Instantly run your Selenium tests across 300+ browser/OS combos. > > Get unparalleled scalability from the best Selenium testing platform > > available > > Simple to use. Nothing to install. Get started now for free." > > http://p.sf.net/sfu/SauceLabs > > ___ > > Gambas-user mailing list > > Gambas-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/gambas-user > > > > -- > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > Instantly run your Selenium tests across 300+ browser/OS combos. > Get unparalleled scalability from the best Selenium testing platform available > Simple to use. Nothing to install. Get started now for free." > http://p.sf.net/sfu/SauceLabs > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.ne
[Gambas-user] Try;If Error on mutable classes
OK,this has me beat. Given a mutable object, as in it might be an instance or Form1 or Form2 depending on some value, then having created that instance and where the instance is lacking a method, say LoadData(), when we attempt to invoke a method that "should" be prescribed for the mutable object that method may or may not have been coded in the class. So, we try(sic) as follows: 1: Try MyObject.MissingMethod(whatever) 2: If Error then 3: Error Subst("&1\nERR: &2 (&3)\n&4\n&1\n", String$(40, "-"), Error.Text, Error.Code, Error.Backtrace.Join("\n")) 4: Endif Line 3 fails with a null (Error) object. There seems to be two problems here. 1) Why is the Error instance a null, and 2) (Harder) If, when trying to invoke an unknown method in a classifier then should not the interpreter raise the normal error " Unknown Symbol blah blah" or have I forgotten something here? -- B Bruen -- "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Could someone give me a brief explanation of parents and kids in this example
On Wed, 14 May 2014 10:57:58 -0500 Jb Skaggs wrote: > In the treeview example I would like to understand the parent and kids > aspects: > > Public Sub Button1_Click() > > Dim sIcon As String > Dim sParent As String > > If Textbox1.Text <> Null Then > If RadioButton1.Value Then > sIcon = "Male.png" > Else > sIcon = "Female.png" > End If > 'Gets the parent item: the current item, or nothing is the treeview is > void > sParent = TreeView1.Key > 'Now we will add a new entry with a key and a name of what was in > the text box > 'We will place it as a child of the currently selected entry > TreeView1.Add(Textbox1.Text, Textbox1.Text, Picture[sIcon], > sParent).EnsureVisible > TreeView1.Item.EnsureVisible 'This will make sure that the item we > just added to the list is in the visable area of the control. > (Scrolling if necessary) > TextBox1.Text = "" 'This empties out textbox > RefreshInfo ' This will update our label and reflect the new number of > kids > End > > > My understanding was that a kid or child was a copy or instant of the > parent but I don't know if this is true in Gambas- so I would like to > understand what actually happens when something is a parent and child. > Thank you. Jb Skaggs > If we just stick to the treeview for the moment (which I believe is the crux here), and firstly focus on your TreeView1.Add(Textbox1.Text, Textbox1.Text, Picture[sIcon], sParent) line. What does this TreeView.Add(...) method do? It creates an object which is an instance of the _Treeview_Item class and returns it. A _Treeview_Item is a "node" in the tree. Its' existence though, depends on the actual TreeView object concerned. In other words its identity, as specified by the value of its "Key" property , is unique for that Treeview object and provides the means to access the node via the myTreeView[skeyvalue] mechanism. All the other properties of the node may be considered either "descriptive" or "display-directing". Now the importance of all that is that each node in a tree is entirely independent. There is no inherent relationship within the data structure regarding its' parents or children. Que? What about this ParentKey parameter/property? The ParentKey is just "descriptive" to us humans and "display-directing" to the treeview control. If it is null then the control draws it as a "root node", if it is non-null then the control assumes that a node exists with that key and attempts to draw it as a child of that node. (Of course, if that parent node does not exist then an error occurs). So each node is distinct. They are neither copies nor instances of some "parent" object. If we look at the node.Children property in the same light, it just returns the number of nodes that will be drawn as direct children of the current node. It knows nothing about them, neither their entities (instances) nor their identities (keys). So, a node (in a gambas treeview object) is a _Treeview_Item which is just a set of drawing instructions that the treeview control follows to display itself, enhanced with a few more "descriptive" properties that we can use to do stuff in code. On the other hand, if we are talking about OO inheritance here, then that is an entirely different kettle of fish which has nothing to do with treeview controls. hth -- B Bruen -- "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Feature request: Giving _compare() an optional user data argument
On Wed, 14 May 2014 21:38:33 +0200 Tobias Boege wrote: > Hi Benoit, > > when we wanted to sort a 2d array (table) by a specific column, variable at > runtime, we did the following: > > 1. Create the class, let's call it "Record", to represent the table > records which implements a _compare() method and has a SortField > property which indicates to _compare() which column we want to sort > by. > 2. Create a class "RecordGroup" which Inherits Object[] and has a > SortField(Field As Integer, Optional Mode As Integer) method which is > a multicolumn-aware version of Sort: > > Public Sub SortField(Field As Integer, Optional Mode As Integer) > Dim iInd As Integer > > For iInd = 0 To Super.Count - 1 > Super[iInd].SortField = Field > Next > Super.Sort(Mode) > End > 3. Then, we must work with RecordGroups which we can sort by, say, column 7 > using myGroup.SortField(7). > > You see that we need to set each object's SortField property to the Field > value in order to make the _compare()s work together as we desire. If some > objects "don't get it", we will lose transitivity of our relation and the > sort may fail. > > We can't use static properties in the Record class either because we may > want to have multiple groups. > > These redundant assignments are what bothers us (also that we need a custom > array type that we called "Group" to hide our clumsiness in communicating > the SortField to each object). [ There are other ways of efficiently grouping > elements but the ones I can think of are pretty obscure - but I'm open for > suggestions! If none: ] > > Is it possible to - and what will existing code say if we - change > _compare()'s signature to > > Public Sub _compare(hOther As Object, Optional vPrivate As Variant) > > and have a new corresponding optional argument to Object[].Sort() and > MyClass[].Sort()? Sorting by column 7 in the above scenario would boil > down to calling (without groups) Record[].Sort(7). > > Regards, > Tobi > I would really like to see this too! My attempts at providing a generic sorting mechanism along the lines suggested by Tobi's approach have been less than successful for exactly the same reasons. -- B Bruen -- "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Community Component Repo
On Fri, 16 May 2014 22:31:02 +0200 Benoît Minisini wrote: > Le 16/05/2014 19:31, Randall Morgan a écrit : > > I have seen Gambas growing in popularity over the past few years, and I > > feel something like this could help it grow even more. I think one of the > > reasons we see so few components is the lack of a centralized place to host > > them. Giving a component author a place to host (even if it is just a wiki > > page with a link to SF, BB, or GH, I think would help promote Gambas and > > grow the user community. I have not seen the wiki code nor do I know all > > the requirements we would need for something like this. But I can tell you > > that Wordpress' plugin repo is one of the biggest factors in it's > > popularity > > Good idea. But now let's find someone that can do it... > > Here is what I suggest, using your ideas: > > - Gambas components are like Linux device drivers: they are part of the > language, and their source code must be in the Gambas source code. > > - So let's call the components you are talking about "Gambas user > components" and the other "Gambas kernel components" (just for that mail). > > - Make the Gambas user component repository a website entire made with > one Gambas project. > > - The website allows to upload a component as a source archive. > > - The IDE will be able to automatically download, compile and install > the user components from the website if needed. > > - Maybe the interpreter can do it also when running a program! > > - These components will only be installed in the user home directory. > > - Each user component has a version number. The IDE will then detect a > new version, and will be able to download several versions of the same > component. > > - Each user component requires some specifics version of Gambas. For > example >= 3.1 and < 4.0. > > - Each user component has its own page on the website. The website user > can post comment on the page, and vote. > > - Each user component has an icon, a one-line description, and a longer > description. > > - Each user component has a gambas component name. To prevent name clash > with kernel components, we will prefix the component name with something > like "comp.". > > - A component name can have synonymous. > > What do you think ? > > Of course the biggest point is : who will do all that? > > -- > Benoît Minisini > There's a lot of good ideas here in this thread. But there is one aspect missing. That is, gambas development tools. These are not components, but stand alone applications that aid in developing in gambas. For example, we have a "product oriented project browser" (we have three "products that are comprised of dozens of gambas projects,this tool lets us browse to particular projects within a product and launch the IDE with it loaded. It does other stuff as well.). Another is a set of three of something I'll hesitantly call "code generators" (they don't generate code but they generate a code skeleton). There are three because 2 are very specific to one of our products, but the third is a general purpose generator that both forward and backward engineers classes in a gambas project and provides generation of certain class aspects far above what the IDE offers. But I am digressing. We have some components that we have made available via our own website. To my mind they sit somewhere in the middle of all three of Tobi's categories. They are sort of "special purpose", they are somewhat stable but are not official source tree "ready" or better yet "applicable", You can see them at http://paddys-hill.net/wp/gambas/gambas-components/ and yes that is a -- B Bruen -- "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Community Component Repo
On Sat, 17 May 2014 08:51:22 +0930 B Bruen wrote: > On Fri, 16 May 2014 22:31:02 +0200 > Benoît Minisini wrote: > > > Le 16/05/2014 19:31, Randall Morgan a écrit : > > > I have seen Gambas growing in popularity over the past few years, and I > > > feel something like this could help it grow even more. I think one of the > > > reasons we see so few components is the lack of a centralized place to > > > host > > > them. Giving a component author a place to host (even if it is just a wiki > > > page with a link to SF, BB, or GH, I think would help promote Gambas and > > > grow the user community. I have not seen the wiki code nor do I know all > > > the requirements we would need for something like this. But I can tell you > > > that Wordpress' plugin repo is one of the biggest factors in it's > > > popularity > > > > Good idea. But now let's find someone that can do it... > > > > Here is what I suggest, using your ideas: > > > > - Gambas components are like Linux device drivers: they are part of the > > language, and their source code must be in the Gambas source code. > > > > - So let's call the components you are talking about "Gambas user > > components" and the other "Gambas kernel components" (just for that mail). > > > > - Make the Gambas user component repository a website entire made with > > one Gambas project. > > > > - The website allows to upload a component as a source archive. > > > > - The IDE will be able to automatically download, compile and install > > the user components from the website if needed. > > > > - Maybe the interpreter can do it also when running a program! > > > > - These components will only be installed in the user home directory. > > > > - Each user component has a version number. The IDE will then detect a > > new version, and will be able to download several versions of the same > > component. > > > > - Each user component requires some specifics version of Gambas. For > > example >= 3.1 and < 4.0. > > > > - Each user component has its own page on the website. The website user > > can post comment on the page, and vote. > > > > - Each user component has an icon, a one-line description, and a longer > > description. > > > > - Each user component has a gambas component name. To prevent name clash > > with kernel components, we will prefix the component name with something > > like "comp.". > > > > - A component name can have synonymous. > > > > What do you think ? > > > > Of course the biggest point is : who will do all that? > > > > -- > > Benoît Minisini > > > There's a lot of good ideas here in this thread. > But there is one aspect missing. That is, gambas development tools. These > are not components, but stand alone applications that aid in developing in > gambas. For example, we have a "product oriented project browser" (we have > three "products that are comprised of dozens of gambas projects,this tool > lets us browse to particular projects within a product and launch the IDE > with it loaded. It does other stuff as well.). Another is a set of three of > something I'll hesitantly call "code generators" (they don't generate code > but they generate a code skeleton). There are three because 2 are very > specific to one of our products, but the third is a general purpose generator > that both forward and backward engineers classes in a gambas project and > provides generation of certain class aspects far above what the IDE offers. > > But I am digressing. > We have some components that we have made available via our own website. To > my mind they sit somewhere in the middle of all three of Tobi's categories. > They are sort of "special purpose", they are somewhat stable but are not > official source tree "ready" or better yet "applicable", You can see them at > http://paddys-hill.net/wp/gambas/gambas-components/ and yes that is a > (dammit! Cut my finger today and typing with a finger stall on is not easy. Rest of post is) wordpress site. Why do we use our own site? Primarily because I could get more control over the page content and the upload/download aspects rather than using the current wiki. Why do we publish our components? Now this is the important bit. We get feedback for the functional aspects of the stuff we publish from the users. They'll very readily tell us when something doesn't work but very
Re: [Gambas-user] BUG with the TreeView's new .item.Reparent()
On Wed, 28 May 2014 03:36:02 +0200 ep...@joernerik.com wrote: > In TreeView, if you reparent a key to be a child of a key that has the same > name as the key you want to reparent, there's an error message saying: "New > parent can not be a child item". Renaming the item I want to reparent avoids > the bug... > > - Erik > Erik, I am afraid that this doesn't make a great deal of sense to me. It sounds like you are trying to reparent a tree node as a child of itself? Are we having translation problems here? - "if you reparent a key" No, we reparent a node (which has a unique key across the whole tree). So, if we presume you want to "move" a node identified by the key "FRED1234" which currently has a parent-key of "MARY2468" ... - "to be a child of a key" Again, have to presume you mean move node["FRED1234"] to be a child of node["some_key"] - "that has the same name as the key you want to reparent" sounds like you want to move node["FRED1234"] to be a child of node["FRED1234"] - If "New parent can not be a child item" is really the error you get, then I can understand the confusion, a better message would be "A node cannot be reparented to be a child of itself". But I really don't understand the bit about " Renaming the item ... avoids the bug"? or have I missed the entire point (which is possible :-) ) bruce -- Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] ComboBox not editable + Combopbox_Change Event
lue from the dropdown list (after first activating it). Some of us expect that a "default" combobox should render a "constrained-text-based-selector-with-advanced-searching-feature", and only if the developer should wish to allow the user to enter an entirely "new" answer to the prompt should it allow unconstrained text entry. Other views may differ, so lets talk about it. As to "ReadOnly locks Event" I too am in the same position as Fabien, abbat could you please explain further? 5) Finally, and this may not be "on topic" so let me know if I should create a new thread. Recent changes seem to have affected how focus transitions are handled by the interpreter/control components. Setting the "NoTabFocus" property of a control no longer seems to work as it did prior to rev 6290. No, this is really a different topic. So unless anyone has some quick comment I'll not try to steal abbat's thread. regards -- B Bruen -- Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Request for comments about a language change
> On Sat, May 31, 2014 at 2:38 PM, Benoît Minisini < > gam...@users.sourceforge.net> wrote: > > > Hi people, > > > > Does anybody have an objection against the following change: > > > > "For Each Value In Enumeration" raise an error if `Enumeration` is NULL. > > > > I suggest that instead it does nothing, as if Enumeration was a void array. > > > > What do you think? > > > > -- > > Benoît Minisini > > So, : 100 Dim aTest As String[] 101 Dim sItem As String 102 103 For Each sItem In aTest 104Print sItem 105 Next 106 Print aTest.Count would just just fail at line 106 rather than 104? No objections, I just cant see the point? regards Bruce -- B Bruen -- Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Request for comments about a language change
The only possible problem I can think of is where the enumerated set "becomes" null during the iteration. But quick testing shows that the iteration is done on a copy of the set as at when the For Each is first entered. On the other hand, you might want the enumeration to "automatically end" in the event that the set becomes null? This can currently be done by testing the set at each iteration. Would this change make this happen "automatically"? This could have side effects with existing code. On Sun, 1 Jun 2014 03:25:26 +0300 Jussi Lahtinen wrote: > Oh, of course all enumerable classes, I was thinking command ENUM... > I try to think whether there could be situation where this would hide error > in code. > If for some error you pass Null object to this: > > Public Function CountLargeObjects(hArrayOfObjects As Object[]) As Integer > > Dim hObject As Object, iCount As Integer > > For Each hObject In hArrayOfObjects > If hObject.Size > 100 Then > Inc iCount > Endif > Next > > Return iCount > > End > > > Then it may be harder to catch. > But I don't think that is big deal, if this change has some great > potential..? > > > Jussi > > > > On Sun, Jun 1, 2014 at 2:28 AM, B Bruen wrote: > > > > On Sat, May 31, 2014 at 2:38 PM, Benoît Minisini < > > > gam...@users.sourceforge.net> wrote: > > > > > > > Hi people, > > > > > > > > Does anybody have an objection against the following change: > > > > > > > > "For Each Value In Enumeration" raise an error if `Enumeration` is > > NULL. > > > > > > > > I suggest that instead it does nothing, as if Enumeration was a void > > array. > > > > > > > > What do you think? > > > > > > > > -- > > > > Benoît Minisini > > > > > > > > So, : > > 100 Dim aTest As String[] > > 101 Dim sItem As String > > 102 > > 103 For Each sItem In aTest > > 104Print sItem > > 105 Next > > 106 Print aTest.Count > > > > would just just fail at line 106 rather than 104? > > No objections, I just cant see the point? > > > > regards > > Bruce > > -- > > B Bruen > > > -- > Time is money. Stop wasting it! Get your web API in 5 minutes. > www.restlet.com/download > http://p.sf.net/sfu/restlet > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] gb.xml: XMLElement.GetChildrenByAttributeValue with multiple criteria
In essence, I want to select all (first level) child elements of the current element where attribute "Type"="R" and attribute "Status"="Open", in one hit. Is this possible? tia Bruce -- B Bruen -- Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Component Programing Question
On Mon, 02 Jun 2014 03:27:23 +0200 Benoît Minisini wrote: > Le 02/06/2014 03:07, VonZorch a écrit : > > I have found that inheriting UserControl makes a developing control stop > > intercepting mouse events. Is this normal? I have been going around in > > circles trying to get my SpeedListBox working. > > > > It currently appears in the toolbox but when placed on a form it is 8 times > > as large as it should be and when I try to run the test project I get an > > error "Unexpected end of line in FMain.form:17" however the FMain.form file > > only has 13 lines. When created in code it does work correctly. Could this > > be caused by a corrupted component? > > > > Without seeing your source code, I can't say anything useful... > > -- > Benoît Minisini > But to take a couple of guesses: In the second paragraph, what you have written suggests that you have not set the default values for the properties and/or the properties constant correctly. "8 times too big" looks like something wrong with your _DefaultSize constant. Remember, it is expressed in Desktop.Scale units. "caused by a corrupted component?" Probably not, more likely you have not defined the control infrastructure constants correctly. Show us the code. In the first para "Is this normal"? No, I have not seen anything like that. Again, SUTC! hth -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Native Date functions and milliseconds
I have just noticed that Date(Year,Month,Day,Hours,Minutes,Seconds) truncates the seconds. It looks like it is expecting an integer. I am trying to work with a "Server Timestamp" string value that gives me the seconds as a Float e.g. "2014-06-02T10:11:15.330" and the milliseconds part has now become important. Is this a bug? Similarly, Second(Date as Date) is defined in the help as returning an integer, again shouldn't it return a float? in the console ?`format(Now,"hh:nn:ss.u") prints something like "12:34:59.764", but ?`format(Date(2014,6,2,12,19,57.666),"hh:nn:ss.uu") prints "12:19:57.000" tia -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Native Date functions and milliseconds
Aha, the inline completion help is correct. The wiki help page is wrong. Thanks Jussi. (But is there a Milliseconds(Date) funtion?) Bruce On Mon, 2 Jun 2014 17:52:07 +0300 Jussi Lahtinen wrote: > Documentation is not up to date. See attached screenshot. You don't see > this? > What is your Gambas version? > > > Jussi > > > On Mon, Jun 2, 2014 at 6:07 AM, B Bruen wrote: > > > I have just noticed that Date(Year,Month,Day,Hours,Minutes,Seconds) > > truncates the seconds. It looks like it is expecting an integer. I am > > trying to work with a "Server Timestamp" string value that gives me the > > seconds as a Float e.g. "2014-06-02T10:11:15.330" and the milliseconds part > > has now become important. Is this a bug? > > > > Similarly, Second(Date as Date) is defined in the help as returning an > > integer, again shouldn't it return a float? > > > > in the console > > ?`format(Now,"hh:nn:ss.u") prints something like "12:34:59.764", but > > ?`format(Date(2014,6,2,12,19,57.666),"hh:nn:ss.uu") prints "12:19:57.000" > > > > tia > > -- > > B Bruen > > > > > > -- > > Learn Graph Databases - Download FREE O'Reilly Book > > "Graph Databases" is the definitive new guide to graph databases and their > > applications. Written by three acclaimed leaders in the field, > > this first edition is now available. Download your free book today! > > http://p.sf.net/sfu/NeoTech > > ___ > > Gambas-user mailing list > > Gambas-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/gambas-user > > -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Component Programing Question
On Tue, 3 Jun 2014 07:02:44 -0700 (PDT) VonZorch wrote: > B Bruen wrote > > On Mon, 02 Jun 2014 03:27:23 +0200 > > Benoît Minisini < > > > gambas@.sourceforge > > > > wrote: > > > >> Le 02/06/2014 03:07, VonZorch a écrit : > >> > I have found that inheriting UserControl makes a developing control > >> stop > >> > intercepting mouse events. Is this normal? I have been going around in > >> > circles trying to get my SpeedListBox working. > >> > > >> > It currently appears in the toolbox but when placed on a form it is 8 > >> times > >> > as large as it should be and when I try to run the test project I get > >> an > >> > error "Unexpected end of line in FMain.form:17" however the FMain.form > >> file > >> > only has 13 lines. When created in code it does work correctly. Could > >> this > >> > be caused by a corrupted component? > >> > > >> > >> Without seeing your source code, I can't say anything useful... > >> > >> -- > >> Benoît Minisini > >> > > > > But to take a couple of guesses: > > In the second paragraph, what you have written suggests that you have not > > set the default values for the properties and/or the properties constant > > correctly. > > "8 times too big" looks like something wrong with your _DefaultSize > > constant. Remember, it is expressed in Desktop.Scale units. > > "caused by a corrupted component?" Probably not, more likely you have not > > defined the control infrastructure constants correctly. Show us the code. > > > > In the first para "Is this normal"? No, I have not seen anything like > > that. Again, SUTC! > > > > hth > > The code is here speedlistbox.gz > <http://gambas.8142.n7.nabble.com/file/n46832/speedlistbox.gz> . > The mouse event problem also occurred when I modified ColorChooser to save > custom colors. > > 1. Change Public Const _DefaultSize As String = "400,24" to Public Const _DefaultSize As String = "50,4" This may give you some idea of what I meant by Desktop.Scale units 2. This may help you understand some things. In your _Properties const you have 'Maxlines=20". Now, all this does is set the default value that the IDE uses when it displays that property in the control's property list. It does not set the value of the real property to that value. In fact it assumes that you have set it to that value elsewhere in the code AND if the coder does not change that property value in the IDE then the .form file will not contain a setting for that property. So somewhere, possibly in your _new routine you need to set Maxlines (or the underlying real property) to 20 as well as setting that default value in the _Properties const string. Review your code for other places where this may be needed. 3. I'm still not actually sure about the loss of mouse events, but it may be beneficial for you to review the help on the custom control "Proxy" setting. hth Bruce -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Accessing the nth item in a collection
Occasionally, and unfortunately for me lately quite frequently, I have found a need to access the first or last item in (or perhaps better "the first or last item added to") a collection regardless of key values (and by extension I could envisage a need to access the nth item in a collection regardless of the key value). There does not seem to be an elegant solution to this - or maybe just that I am incapable of developing an elegant solution to this. "First" can be achieved by using the For Each construct and unconditionally Break'ing the iteration on the first loop. This smells like using a sledge hammer to crush an ant. "Last" I have achieved after a manner, but the mechanism is too embarrassing to reveal. "nth" I am reluctant to attempt. Any clues? -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Component Programing Question
Re 2. below - to clarify further. The custom control constants, "_Properties" etc are directives to the IDE, they do not directly convey information to the interpreter. In other words, they don't "automatically generate the code you may have assumed". In fact, what you should assume is that they only affect how the custom control will work in the IDE. hth Bruce On Wed, 4 Jun 2014 09:18:51 +0930 B Bruen wrote: > On Tue, 3 Jun 2014 07:02:44 -0700 (PDT) > VonZorch wrote: > > > B Bruen wrote > > > On Mon, 02 Jun 2014 03:27:23 +0200 > > > Benoît Minisini < > > > > > gambas@.sourceforge > > > > > > wrote: > > > > > >> Le 02/06/2014 03:07, VonZorch a écrit : > > >> > I have found that inheriting UserControl makes a developing control > > >> stop > > >> > intercepting mouse events. Is this normal? I have been going around in > > >> > circles trying to get my SpeedListBox working. > > >> > > > >> > It currently appears in the toolbox but when placed on a form it is 8 > > >> times > > >> > as large as it should be and when I try to run the test project I get > > >> an > > >> > error "Unexpected end of line in FMain.form:17" however the FMain.form > > >> file > > >> > only has 13 lines. When created in code it does work correctly. Could > > >> this > > >> > be caused by a corrupted component? > > >> > > > >> > > >> Without seeing your source code, I can't say anything useful... > > >> > > >> -- > > >> Benoît Minisini > > >> > > > > > > But to take a couple of guesses: > > > In the second paragraph, what you have written suggests that you have not > > > set the default values for the properties and/or the properties constant > > > correctly. > > > "8 times too big" looks like something wrong with your _DefaultSize > > > constant. Remember, it is expressed in Desktop.Scale units. > > > "caused by a corrupted component?" Probably not, more likely you have not > > > defined the control infrastructure constants correctly. Show us the code. > > > > > > In the first para "Is this normal"? No, I have not seen anything like > > > that. Again, SUTC! > > > > > > hth > > > > The code is here speedlistbox.gz > > <http://gambas.8142.n7.nabble.com/file/n46832/speedlistbox.gz> . > > The mouse event problem also occurred when I modified ColorChooser to save > > custom colors. > > > > > 1. Change > Public Const _DefaultSize As String = "400,24" > to > Public Const _DefaultSize As String = "50,4" > This may give you some idea of what I meant by Desktop.Scale units > > 2. This may help you understand some things. In your _Properties const you > have 'Maxlines=20". Now, all this does is set the default value that the IDE > uses when it displays that property in the control's property list. It does > not set the value of the real property to that value. In fact it assumes that > you have set it to that value elsewhere in the code AND if the coder does not > change that property value in the IDE then the .form file will not contain a > setting for that property. So somewhere, possibly in your _new routine you > need to set Maxlines (or the underlying real property) to 20 as well as > setting that default value in the _Properties const string. Review your code > for other places where this may be needed. > > 3. I'm still not actually sure about the loss of mouse events, but it may be > beneficial for you to review the help on the custom control "Proxy" setting. > > hth > Bruce > -- > B Bruen > > -- > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/NeoTech > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Accessing the nth item in a collection
> > > > > -- > > Learn Graph Databases - Download FREE O'Reilly Book > > "Graph Databases" is the definitive new guide to graph databases and their > > applications. Written by three acclaimed leaders in the field, > > this first edition is now available. Download your free book today! > > http://p.sf.net/sfu/NeoTech > > ___ > > Gambas-user mailing list > > Gambas-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/gambas-user > > > > > > -- > If you ask me if it can be done. The answer is YES, it can always be done. > The correct questions however are... What will it cost, and how long will > it take? > -- > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/NeoTech > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Accessing the nth item in a collection
On Wed, 4 Jun 2014 17:07:46 -0700 (PDT) VonZorch wrote: > If the key values aren't important then use something like > Collection.add(Value,str(Collection.count+1)) > then you can access any given item by >Value=Collection[str(Index)] > > No, the key values are important (to the rest of the application). It's just that in this particular instance all I need to get at is the last or first item that was added. -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] [Aside] Re: Accessing the nth item in a collection
An interesting thought just occurred, almost totally unrelated to this thread. Is a gb.db Result a collection or an array? It is hard to tell from the help This class represents the result of a SQL request. This class is not creatable. This class acts like a read / write array. This class is enumerable with the FOR EACH keyword. but then I cannot access the first item via "MyResult[0]" It looks like a special array with a strange form of _get(). ? -- B Bruen -- Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Webbrowser without gb.qt4??
On Mon, 09 Jun 2014 10:04:12 +0200 "Wolfgang, dl7nb" wrote: > Hello, > > To display a html-file I would need the webbrowser from qb.qt4.webkit. > That would be no problem BUT: > > My program grew of many month and is based on qb.gui (As it was a > default when I started it) > > If I drop gb.gui to use gb.qt4.webkit (and gb.qt4)I get different > looking forms and my program does no longer work. > > Is there a way to display html files WITH gb.gui (in absence of qt4)? > > Wolfgang > Sorry,I don't have an answer for you, merely a comment. Without going into specifics, your comment "If I drop gb.gui to use gb.qt4.webkit (and gb.qt4)I get different looking forms and my program does no longer work." rings like a similar bell here too. We are currently changing all our gb.gui projects to gb.qt4 in order to alleviate user complaints about the gtk situation across various distros. So: Has gui independence now become economically un-viable? Any comments, especially from Benoit. regards -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://www.hpccsystems.com ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Raising events during the constructor method
I don't know whether I have only just noticed this, but is it possible to raise events during the constructor? Main class: Dim myThing as Thing myThing = new Thing as "Something" Public Sub Something_Hello() Debug End Thing class Event Hello() Public Sub _New() Raise Hello End The main class Something_Hello() never gets executed. Is this because the object does not exist yet? regards Bruce -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Something strange just happened?
I created a new project "ctlbrowser" with qt4, and settings components. In the main form (renamed from FMain to FControlBrowser) design, I just added the Open and Close events and the code Settings.Read(Me) and Settings.Write respectively. When I ran it, moved and resized the form, closed it and re-opened it, what I expected to happen, viz the form would open with the saved geometry, didn't. Its back at the top left of the screen and sized as per the IDE. Further investigation revealed that in ~/.config/gambas3 I have a "ctlbrowser.conf#" file of 18 bytes length containing a normal looking Settings slot "[FControlBrowser]" but nothing else and a "ctlbrowser.conf.lock" file of zero bytes. Deleting these files and then re-running the project just recreates the same situation. Any clues? (rev 3.5.90 r6307) Bruce -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Something strange just happened?
On Wed, 11 Jun 2014 11:02:44 +0930 B Bruen wrote: > I created a new project "ctlbrowser" with qt4, and settings components. In > the main form (renamed from FMain to FControlBrowser) design, I just added > the Open and Close events and the code Settings.Read(Me) and Settings.Write > respectively. > > When I ran it, moved and resized the form, closed it and re-opened it, what I > expected to happen, viz the form would open with the saved geometry, didn't. > Its back at the top left of the screen and sized as per the IDE. > > Further investigation revealed that in ~/.config/gambas3 I have a > "ctlbrowser.conf#" file of 18 bytes length containing a normal looking > Settings slot "[FControlBrowser]" but nothing else and a > "ctlbrowser.conf.lock" file of zero bytes. > > Deleting these files and then re-running the project just recreates the same > situation. > > Any clues? (rev 3.5.90 r6307) > > Bruce Not to be fazed, I tried it again. Same result. source archive attached. ? I have been running r6307 for at least 1 day with nothing like this occurring. > -- > B Bruen > > -- > HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions > Find What Matters Most in Your Big Data with HPCC Systems > Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. > Leverages Graph Analysis for Fast Processing & Easy Data Exploration > http://p.sf.net/sfu/hpccsystems > _______ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen ctlbrowser2-0.0.1.tar.gz Description: Binary data -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Something strange just happened?
Aha! Got it. Issue #528 B On Wed, 11 Jun 2014 10:40:09 +0200 gian wrote: > Public Sub Form_Close() > >Settings.Write(Me) >Settings.Save() > > End > Ciao Gianluigi > > Il 11/06/2014 03:43, B Bruen ha scritto: > > On Wed, 11 Jun 2014 11:02:44 +0930 > > B Bruen wrote: > > > >> I created a new project "ctlbrowser" with qt4, and settings components. In > >> the main form (renamed from FMain to FControlBrowser) design, I just added > >> the Open and Close events and the code Settings.Read(Me) and > >> Settings.Write respectively. > >> > >> When I ran it, moved and resized the form, closed it and re-opened it, > >> what I expected to happen, viz the form would open with the saved > >> geometry, didn't. Its back at the top left of the screen and sized as per > >> the IDE. > >> > >> Further investigation revealed that in ~/.config/gambas3 I have a > >> "ctlbrowser.conf#" file of 18 bytes length containing a normal looking > >> Settings slot "[FControlBrowser]" but nothing else and a > >> "ctlbrowser.conf.lock" file of zero bytes. > >> > >> Deleting these files and then re-running the project just recreates the > >> same situation. > >> > >> Any clues? (rev 3.5.90 r6307) > >> > >> Bruce > > Not to be fazed, I tried it again. Same result. source archive attached. > > > > ? > > > > I have been running r6307 for at least 1 day with nothing like this > > occurring. > >> -- > >> B Bruen > >> > >> -- > >> HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions > >> Find What Matters Most in Your Big Data with HPCC Systems > >> Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. > >> Leverages Graph Analysis for Fast Processing & Easy Data Exploration > >> http://p.sf.net/sfu/hpccsystems > >> ___ > >> Gambas-user mailing list > >> Gambas-user@lists.sourceforge.net > >> https://lists.sourceforge.net/lists/listinfo/gambas-user > > > > > > > > -- > > HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions > > Find What Matters Most in Your Big Data with HPCC Systems > > Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. > > Leverages Graph Analysis for Fast Processing & Easy Data Exploration > > http://p.sf.net/sfu/hpccsystems > > > > > > ___ > > Gambas-user mailing list > > Gambas-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/gambas-user > > ------ > HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions > Find What Matters Most in Your Big Data with HPCC Systems > Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. > Leverages Graph Analysis for Fast Processing & Easy Data Exploration > http://p.sf.net/sfu/hpccsystems > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Development cycle and component vs library
Inline On Sat, 14 Jun 2014 07:26:46 +0200 Patrik Karlsson wrote: > I'm working on a dice game and I'm thinking of separating "the dice part" > from the game itself so I and others could reuse it, and for separation. > > The main reason for not doing this earlier is that I could not understand > how to make the game development cycle easy in the sense that: > 1. libraries have to be made executables and copied to my game project Yes, but there is an alternative to "copy". Make an executable of the library in its development project, lets call it "pkdice". Then create a symbolic link in your game project directory to that executable (pkdice.gambas in the library source project). Then every time you compile pkdice, the game will be using the latest version of the library. > 2. components have to installed to the system. Yes. As a matter of fact libraries can also be installed to the system. For that matter, at the end of the development cycle you will also want to install the game to the system (Unless you always want to run the game from it's development project?). So consider your development cycle and check that it includes a "deploy" step. Making and installing libraries, components and programs is actually very easy in Gambas, using the Project|Make|Installation Package route. We have found that the autotools packager works best for us, allowing installation across many different distros. Also, understanding it will help you to understand the distro specific installs. So I suggest you start with autotoools. Once the package is built, it can be installed with the normal .config/make/make install cycle. > > Is this correct? > Is it possible to make the development cycle easier? e.g. Make changes in > my dice library/component propagate automatically in to my game project? > > And finally, should I make it a library or a component? In short, initially as a library. From the help: "Gambas components are shared libraries written in C, C++ or directly in gambas that add new classes to the gambas interpreter. They are shared between all Gambas programs running on your system, and can be seen as part of the language." and "Gambas libraries are Gambas executables that can be used by a project almost exactly like a component." This is a bit hard to understand and I'm probably only about 90% correct here, but. There is actually very little difference and the differences are fairly unimportant to a new gambas developer. Suffice to say, until you understand that help above, libraries are the way to go. > > /Patrik hth Bruce -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] IDE Feature Request
( Don't see why I shouldn't join in :-) ) Would it be possible to lock source files the same as for forms? This would prevent me from changing the wrong class in a set of very similar classes. Oh,and while you're there - the reload button on the form toolbar seems to unlock a locked form! regards Bruce -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Feature request IDE: Make the origin of the DEBUG line code act as a hyper link
On Mon, 16 Jun 2014 07:45:42 +0930 B Bruen wrote: > hmmm. > > IDE crashes on rollover. > > Seems to happen only if Debug is used, Print and Error dont crash. LXDE? -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Totally lost on this one
ERR: Cannot load class 'HtmlDocument': Unable to load class file (2) FHelpView.Run.78 FSearch.mnuHelpBrowser_Click.166 FHelpView.Run.78 is: Me.ShowModal FHelpView.Run is: Public Sub Run(helppath As String)'' Main access point. Allows use of the browser from other programs $helppath = helppath ' &/ "help" $conn = New Connection With $conn .Type = "sqlite" .Host = $helppath .Name = "helpbase" End With If Not $conn.Opened Then $conn.Open If Not $conn.Opened Then <--- total overkill but I am getting desperate here Debug $conn.Host Debug $conn.Name Debug $conn.Type Endif Debug "About to run" Me.ShowModal <--- LINE 78 Debug "How do we get here" Catch Error Subst("&1\nERR: &2 (&3)\n&4\n&1\n", String$(40, "-"), Error.Text, Error.Code, Error.Backtrace.Join("\n")) End WTF is HtmlDocument AFAIK _I_ have never written such a class. So who or where is it. -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Totally lost on this one
On Mon, 16 Jun 2014 15:18:15 +0200 Fabien Bodard wrote: > Htmldocument is a class from gb.xml.html to work on html page in Dom mode. > Aha, a missing requires in a library. Thanks Fabien. -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Getting the "un-specialed" XMLElement.TextContent string
(I'm sure I've done this before, but I can't find my prior code nor can I find it in either of the help sites.) I just want to set a string variable to the text content of an element. I am almost certain there was a way to have it automatically convert all the "special character"s, like , <, etc etc to their "normal" representation. Is there such a function, or was I just dreaming? tia Bruce -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] IDE crash
Obscure, but annoying. Maybe LXDE only. Open a project, open a few files. Detach a tab and move it to another v-desktop. Then slide the remaining IDE tabs around. Occassionally, I get: * a silent IDE crash * a stack overflow (have not managed to catch a screenshot yet * a "grabber" mouse pointer that renders the entire desktop inactive I'll try to get some more info, but here's the basics: [System] Gambas=3.5.90 OperatingSystem=Linux Kernel=3.12.18-pclos2 Architecture=x86 Distribution=PCLinuxOS Desktop=LXDE Theme=QWindows Language=en_AU.UTF-8 Memory=1008M [Libraries] Cairo=libcairo.so.2.11200.16 Curl=libcurl.so.3.0.0 Curl=libcurl.so.4.3.0 DBus=libdbus-1.so.3.7.4 GStreamer=libgstreamer-0.10.so.0.30.0 GStreamer=libgstreamer-1.0.so.0.204.0 GTK+3=libgtk-3.so.0.1200.2 GTK+=libgtk-x11-2.0.so.0.2400.22 GTK+=libgtk-x11-2.0.so.0.600.10 OpenGL=libGL.so.1.2.0 OpenGL=libGL.so.173.14.39 OpenGL=libGL.so.96.43.23 Poppler=libpoppler.so.13.0.0 Poppler=libpoppler.so.19.0.0 Qt4=libQtCore.so.4.8.5 SDL=libSDL-1.2.so.0.11.3 [bb@localhost ~]$ gbx3 -V 3.5.90 r6327 [bb@localhost ~]$ seems (?) to especially occur if the detached tab is graphical, like a form or an image file regards Bruce -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] IDE crash
Got one: This application has raised an unexpected error and must abort. [3] Stack overflow _TabPanelButton.UpdateLayout.205 b On Wed, 18 Jun 2014 12:14:59 +0930 B Bruen wrote: > Obscure, but annoying. > > Maybe LXDE only. > > Open a project, open a few files. > Detach a tab and move it to another v-desktop. > Then slide the remaining IDE tabs around. > > Occassionally, I get: > * a silent IDE crash > * a stack overflow (have not managed to catch a screenshot yet > * a "grabber" mouse pointer that renders the entire desktop inactive > > I'll try to get some more info, but here's the basics: > [System] > Gambas=3.5.90 > OperatingSystem=Linux > Kernel=3.12.18-pclos2 > Architecture=x86 > Distribution=PCLinuxOS > Desktop=LXDE > Theme=QWindows > Language=en_AU.UTF-8 > Memory=1008M > [Libraries] > Cairo=libcairo.so.2.11200.16 > Curl=libcurl.so.3.0.0 > Curl=libcurl.so.4.3.0 > DBus=libdbus-1.so.3.7.4 > GStreamer=libgstreamer-0.10.so.0.30.0 > GStreamer=libgstreamer-1.0.so.0.204.0 > GTK+3=libgtk-3.so.0.1200.2 > GTK+=libgtk-x11-2.0.so.0.2400.22 > GTK+=libgtk-x11-2.0.so.0.600.10 > OpenGL=libGL.so.1.2.0 > OpenGL=libGL.so.173.14.39 > OpenGL=libGL.so.96.43.23 > Poppler=libpoppler.so.13.0.0 > Poppler=libpoppler.so.19.0.0 > Qt4=libQtCore.so.4.8.5 > SDL=libSDL-1.2.so.0.11.3 > > [bb@localhost ~]$ gbx3 -V > 3.5.90 r6327 > [bb@localhost ~]$ > > seems (?) to especially occur if the detached tab is graphical, like a form > or an image file > > regards > Bruce > -- > B Bruen > > -- > HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions > Find What Matters Most in Your Big Data with HPCC Systems > Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. > Leverages Graph Analysis for Fast Processing & Easy Data Exploration > http://p.sf.net/sfu/hpccsystems > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] IDE crash
OK, I'm pretty sure this only happens if a tab is detached. I've been sliding tabs around for up to 30 open files and it doesn't happen unless one of them is detached. Again, it seems to only happen if the detached tab is graphical. ??? b On Wed, 18 Jun 2014 12:20:16 +0930 B Bruen wrote: > Got one: > > This application has raised an unexpected > error and must abort. > [3] Stack overflow > _TabPanelButton.UpdateLayout.205 > > b > > On Wed, 18 Jun 2014 12:14:59 +0930 > B Bruen wrote: > > > Obscure, but annoying. > > > > Maybe LXDE only. > > > > Open a project, open a few files. > > Detach a tab and move it to another v-desktop. > > Then slide the remaining IDE tabs around. > > > > Occassionally, I get: > > * a silent IDE crash > > * a stack overflow (have not managed to catch a screenshot yet > > * a "grabber" mouse pointer that renders the entire desktop inactive > > > > I'll try to get some more info, but here's the basics: > > [System] > > Gambas=3.5.90 > > OperatingSystem=Linux > > Kernel=3.12.18-pclos2 > > Architecture=x86 > > Distribution=PCLinuxOS > > Desktop=LXDE > > Theme=QWindows > > Language=en_AU.UTF-8 > > Memory=1008M > > [Libraries] > > Cairo=libcairo.so.2.11200.16 > > Curl=libcurl.so.3.0.0 > > Curl=libcurl.so.4.3.0 > > DBus=libdbus-1.so.3.7.4 > > GStreamer=libgstreamer-0.10.so.0.30.0 > > GStreamer=libgstreamer-1.0.so.0.204.0 > > GTK+3=libgtk-3.so.0.1200.2 > > GTK+=libgtk-x11-2.0.so.0.2400.22 > > GTK+=libgtk-x11-2.0.so.0.600.10 > > OpenGL=libGL.so.1.2.0 > > OpenGL=libGL.so.173.14.39 > > OpenGL=libGL.so.96.43.23 > > Poppler=libpoppler.so.13.0.0 > > Poppler=libpoppler.so.19.0.0 > > Qt4=libQtCore.so.4.8.5 > > SDL=libSDL-1.2.so.0.11.3 > > > > [bb@localhost ~]$ gbx3 -V > > 3.5.90 r6327 > > [bb@localhost ~]$ > > > > seems (?) to especially occur if the detached tab is graphical, like a form > > or an image file > > > > regards > > Bruce > > -- > > B Bruen > > > > -- > > HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions > > Find What Matters Most in Your Big Data with HPCC Systems > > Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. > > Leverages Graph Analysis for Fast Processing & Easy Data Exploration > > http://p.sf.net/sfu/hpccsystems > > ___ > > Gambas-user mailing list > > Gambas-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/gambas-user > > > -- > B Bruen > > -- > HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions > Find What Matters Most in Your Big Data with HPCC Systems > Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. > Leverages Graph Analysis for Fast Processing & Easy Data Exploration > http://p.sf.net/sfu/hpccsystems > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] ide feature request
Richard, Doesn't the search box at the top of the project browser go 99% of the way to what you want? Bruce On Sat, 21 Jun 2014 10:57:33 +1000 richard terry wrote: > Hi Benoit, List > > EasyGP (our project) has a huge codebase. Often I may have to search the > tree for the file I want to operate on. > > I wondered if it would be possible to have an option to add a combo box > to the IDE which was populated by an new option on the popup menu over > the tabs at the top of the IDE, which said something like 'Add to Class > Combo' or whatever made sense to Benoit. > > Then, instead of having to continually search through the code tree one > could load that file b just clicking on the favourite combo > > Regards > > richard > > > -- > HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions > Find What Matters Most in Your Big Data with HPCC Systems > Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. > Leverages Graph Analysis for Fast Processing & Easy Data Exploration > http://p.sf.net/sfu/hpccsystems > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Another IDE wish
Could we have a "Run that Form" button on the class editor as well as the Form editor please. regards Bruce -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] IDE crash
On Wed, 18 Jun 2014 16:27:49 +0200 Benoît Minisini wrote: > Le 18/06/2014 05:52, B Bruen a écrit : > > OK, I'm pretty sure this only happens if a tab is detached. > > I've been sliding tabs around for up to 30 open files and it doesn't happen > > unless one of them is detached. > > Again, it seems to only happen if the detached tab is graphical. ??? > > > > > > This should be fixed in revision #6328. > > Regards, > > -- > Benoît Minisini > belated thank you! -- B Bruen -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Intermittent IDE crash when clicking on the run buton
Recently I have been getting a crash in the IDE when I click on the Run button. It is intermittent and I have not been able to isolate it any further. See attached pic. rev r6340 [System] Gambas=3.5.90 OperatingSystem=Linux Kernel=3.12.18-pclos2 Architecture=x86 Distribution=PCLinuxOS Desktop=LXDE Theme=QWindows Language=en_AU.UTF-8 Memory=1008M [Libraries] Cairo=libcairo.so.2.11200.16 Curl=libcurl.so.3.0.0 Curl=libcurl.so.4.3.0 DBus=libdbus-1.so.3.7.4 GStreamer=libgstreamer-0.10.so.0.30.0 GStreamer=libgstreamer-1.0.so.0.204.0 GTK+3=libgtk-3.so.0.1200.2 GTK+=libgtk-x11-2.0.so.0.2400.22 GTK+=libgtk-x11-2.0.so.0.600.10 OpenGL=libGL.so.1.2.0 OpenGL=libGL.so.173.14.39 OpenGL=libGL.so.96.43.23 Poppler=libpoppler.so.13.0.0 Poppler=libpoppler.so.19.0.0 Qt4=libQtCore.so.4.8.5 SDL=libSDL-1.2.so.0.11.3 regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Getting the "un-specialed" XMLElement.TextContent string
On Tue, 24 Jun 2014 16:36:11 +0200 "Adrien Prokopowicz" wrote: > Le Tue, 17 Jun 2014 01:37:49 +0200, B Bruen a > écrit: > > > (I'm sure I've done this before, but I can't find my prior code nor can > > I find it in either of the help sites.) > > > > I just want to set a string variable to the text content of an element. > > I am almost certain there was a way to have it automatically convert all > > the "special character"s, like , <, etc etc to their "normal" > > representation. Is there such a function, or was I just dreaming? > > > > tia > > Bruce > > > > (Sorry about the late answer, I was quite busy these last few months ...) > > The XmlNode.TextContent property is actually what you're looking for : it > defines the node's text content without these entities. For example, this > little code : > >Dim doc As New XmlDocument > >doc.FromString("Fish & chips") 'This can be doc.Open(), > doc.Content = "..." or whatever > >Print doc.ToString() > >Print doc.Root.TextContent > > ... will output this : > >Fish & chips >Fish & chips > > Moreover, you have the static couple of methods XmlNode.Serialize() and > XmlNode.Deserialize() that allow you to convert strings back and forth > between the "with entities" and "without entities" representations. > > Regards, > -- > Adrien Prokopowicz > Adrien, That's what I thought. But now I found my problem. The special characters are in the attributes of the element, not in the text content. Here's an example: (racenode is an XMLElement) ? racenode.Tostring(true) ( inner content excised ) I'm looking at a bit of code that is: $title = raceNode.Attributes["RaceName"] which ends up with the raw value, viz C,G&E 0 - 68 HANDICAP Is there a way to get an attribute value "de-specialed"? tia Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] markdown to html?
@Benoît Hi, could you tell me where (exactly) in the IDE code you convert markdown text to html please. I would like to use that code for my own nefarious purposes :-) tia Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] constructor events
(I don't know whether I have already asked this.) Is it possible to raise events in a class constructor and trap them in an observing class? Looking at it, I don't think the object exists yet and so the answer appears to be no (and my experiments seem to bear this out) but I am asking anyway in case there is something I'm missing. tia Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] modifying an enumerated set during the loop
I realise that modifying the enumerated set during a For Each loop is fraught with danger but I do have a situation where this is "necessary". The following is a very simplified mock up of an anomaly in gambas that I am seeing. The real situation is complex, I'll explain it later in this post. The following code shows several variants of changing the enumerated set during the loop. (I could have also attached a source archive, but its probably quicker to just paste this in a new project main module.) The simulation is simply a "rocket launch count-down" . Public Sub Main() Dim aTest As String[] Dim sItem As String ' Run 1: Simple enumeration (obviously works) aTest = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"] aTest.Reverse For Each sItem In aTest Print sItem Next Print "Blast off" ' Run 2: Nullify the whole array during the enumeration (continues as if enumeration is working on a copy) aTest = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"] Debug aTest aTest.Reverse Debug aTest ' prove that this is not duping the`array For Each sItem In aTest Debug aTest Print sItem If sitem = "8" Then aTest = Null ' but the enumeration continues??? Next Print "Blast off" Print aTest = Null ' Delete (all) elements within the enumeration aTest = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"] aTest.Reverse For Each sItem In aTest Print sItem If sitem = "8" Then aTest.Delete(0, aTest.Count) ' leaves a non-null but empty array, the loop exits once this has been executed Endif Next Print "Blast off" End Run 1 is just a simple enumeration, no changes are made to the set during the loop (sanity check !). In Run 2, when the count gets to 8 we nullify the entire array. However, the enumeration loop still continues and includes all the elements from the original array??? In Run 3, when the count gets to 8 we delete the entire array. Now the enumeration stops at that point. This is what I would expect in Run 2??? In our real situation, we receive a bunch of xml "packets" (a packet being a complete xml document) that are queued for processing in such an array. Quite often, the list of packets to be processed includes duplicate, or earlier, versions of some information relevant to a specific entity identified within the packet. So once we have processed the latest version, hence the array reversal, all packets containing earlier information regarding that entity are irrelevant. In the real code we don't actually delete or nullify the queue array, but use a separate routine to remove the elements in the array that are no longer relevant, sometimes this will empty the reversed array entirely (or at least the rest of it). Now, as the Run 3 example works as I expect, i.e. the loop is "truncated", generally everything is fine. But, there are uncommon, but not infrequent, situations where the entire array can be nullified, this is what scares me as the code that handles this entire mess is spread out over multiple tasks and such like. So, shouldn't the Run 2 loop truncate like Run 3? regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] markdown to html?
On Wed, 25 Jun 2014 01:42:09 +0200 Benoît Minisini wrote: > Le 25/06/2014 01:23, B Bruen a écrit : > > @Benoît > > > > Hi, could you tell me where (exactly) in the IDE code you convert > > markdown text to html please. I would like to use that code for my > > own nefarious purposes :-) > > > > tia Bruce > > > > In the gb.markdown component in the development version. > > -- > Benoît Minisini > Doh! :-\ I've been trying to find it in the IDE help code. Thanks Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] modifying an enumerated set during the loop
On Wed, 25 Jun 2014 02:43:11 +0200 Benoît Minisini wrote: > Le 25/06/2014 02:30, B Bruen a écrit : > > I realise that modifying the enumerated set during a For Each loop is (Cut) > > No. An array is an object, and aTest a variable that owns a *reference* > to the array. If you set aTest to NULL, you just remove the reference, > not the array by itself, which is referenced by the FOR EACH instruction > until it ends. > > -- > Benoît Minisini > Ah, OK. So using If Not aTest Then Break during the loop appears to resolve the situation. thanks Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] markdown to html?
On Wed, 25 Jun 2014 10:04:41 +0930 B Bruen wrote: > On Wed, 25 Jun 2014 01:42:09 +0200 > Benoît Minisini wrote: > > > Le 25/06/2014 01:23, B Bruen a écrit : > > > @Benoît > > > > > > Hi, could you tell me where (exactly) in the IDE code you convert > > > markdown text to html please. I would like to use that code for my > > > own nefarious purposes :-) > > > > > > tia Bruce > > > > > > > In the gb.markdown component in the development version. > > > > -- > > Benoît Minisini > > In the Markdown.class you have the Create keyword appearing by itself (line 4). This does not appear to be covered by the Help. What does that do? tia Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Sorting gridviews
Someone, recently, was discussing sorting gridviews over multiple columns. Tobi? Was any progress made on this? (Gee, I am having a busy day today, aren't I? :-) Actually, we are cleaning up a lot of old outstanding things.) tia Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Wishlist : gb.form.mdi ToolBar
Is there any reason that the ToolBar control is constrained within gb.form.mdi? I use it consistently, without needing the other controls in gb.form.mdi and would really like to see it just within gb.form as a general control. Maybe gb4? regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Form ALT+CLICK Not Move
On Tue, 24 Jun 2014 20:34:09 -0600 herberth guzman wrote: > Fabien > I think He want to disable the ability of x to move a windows with alt + > mousedown > > Benoit > Fabien says what is right. What I need is to disable the ability of x to > move a windows with alt + mousedown > > > Thanks > > Regards, > > Herberth Herbeth, Be careful of what you wish for. Moving a window is a user decision. I have a non-gambas application (a uml toolkit) that does this and it is an almighty pain in the ARS*! In fact I avoid using it as much as possible. Consider a situation where a user has multiple monitors. Claiming the central or startup monitor as "MINE" could be considered rude at least Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Form ALT+CLICK Not Move
On Wed, 25 Jun 2014 12:53:41 +0930 B Bruen wrote: > On Tue, 24 Jun 2014 20:34:09 -0600 > herberth guzman wrote: > > > Fabien > > I think He want to disable the ability of x to move a windows with alt + > > mousedown > > > > Benoit > > Fabien says what is right. What I need is to disable the ability of x to > > move a windows with alt + mousedown > > > > > > Thanks > > > > Regards, > > > > Herberth > > Herbeth, > > Be careful of what you wish for. Moving a window is a user decision. I have > a non-gambas application (a uml toolkit) that does this and it is an almighty > pain in the ARS*! In fact I avoid using it as much as possible. Consider a > situation where a user has multiple monitors. Claiming the central or startup > monitor as "MINE" could be considered rude at least > > Bruce > > -- > B Bruen > > And as a perfect example, we work in a situation where there is a W*ND*Ws POS touchscreen system alongside our linux based screens. When their POS collapses the error popup falls behind the screen-grabbing POS application, which then appears totally locked. On the other hand, if something terrible happens to our screen app then Alt-Tab and Alt+mousemove lets us find the error popup. I wish I had a $ for each time the user has watched me drag the main window aside, get the error and click the "FixThis" button ... and then said "Well why cant you do that here too" best wishes, I suppose you have reasons. B -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Form ALT+CLICK Not Move
On Wed, 25 Jun 2014 13:08:10 +0930 B Bruen wrote: > On Wed, 25 Jun 2014 12:53:41 +0930 > B Bruen wrote: > > > On Tue, 24 Jun 2014 20:34:09 -0600 > > herberth guzman wrote: > > > > > Fabien > > > I think He want to disable the ability of x to move a windows with alt + > > > mousedown > > > > > > Benoit > > > Fabien says what is right. What I need is to disable the ability of x to > > > move a windows with alt + mousedown > > > > > > > > > Thanks > > > > > > Regards, > > > > > > Herberth > > > > Herbeth, > > > > Be careful of what you wish for. Moving a window is a user decision. I > > have a non-gambas application (a uml toolkit) that does this and it is an > > almighty pain in the ARS*! In fact I avoid using it as much as possible. > > Consider a situation where a user has multiple monitors. Claiming the > > central or startup monitor as "MINE" could be considered rude at least > > > > Bruce > > > > -- > > B Bruen > > > > > > And as a perfect example, we work in a situation where there is a W*ND*Ws > POS touchscreen system alongside our linux based screens. When their POS > collapses the error popup falls behind the screen-grabbing POS application, > which then appears totally locked. On the other hand, if something terrible > happens to our screen app then Alt-Tab and Alt+mousemove lets us find the > error popup. > > I wish I had a $ for each time the user has watched me drag the main window > aside, get the error and click the "FixThis" button ... and then said "Well > why cant you do that here too" > > best wishes, I suppose you have reasons. > > B > And here's my favourite example of linux gui stupidity. (not the uml modeller mentioned above by the way). Modelio. Modelio is a java UML tool. When you start it, which takes the standard 15 seconds or so, they display a flash screen that occupies every virtual desktop. Unmoveable and unhideable. Great, I could answer 3 emails in that time ... if I could see them. 8 desktops and every one of them has a bloody great red box of meaningless artistic bulldust in the middle of it. User friendly rating - visceral. -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Getting the "un-specialed" XMLElement.TextContent string
On Wed, 25 Jun 2014 09:21:30 +0200 Fabien Bodard wrote: > $title = xmlnode.deserialize(raceNode.Attributes["RaceName"]) > > No? B-) Ah, OK. Thanks, the fact that it was a static function hadn't sunk in. regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] constructor events
On Wed, 25 Jun 2014 09:15:01 +0200 Fabien Bodard wrote: > I really dont understand in what case it can be usefull > > Your observer in all case will be created after the object so in this case > just call a subroutine will do the same > > If you need an info during the init you can give it as param > > Please give more explanation of what you want to achieve > > Regards > > Fabien It's to do with a class that handles a continuous XML feed for a set of similar feeds. So we have a main form class that creates up to 15 or so instances of a "feed watcher" class, each looking at one specific thread. We have certain handlers in the main class that respond to events raised in the feed-watcher class. Once the feed-watcher object is fully instantiated these event handlers work fine and the set of feeds is managed fine. However, some of these events can occur during the feed-watcher constructor execution. Since we already have the code to handle them in the main form, I was hoping to not have to create special error conditions etc sent back from the feed-watcher._new method, but just to raise the relevant during the constructor. The feeds are from a url like "www.xyz.com/auctions/lots.aspx?year=2014&month=6&day=26&lot=113#1". Where 113 is one of a set of lot numbers we are interested in. These feed-watchers set up the download structure, get the initial xml result and parse it (read on), then wake up on a timer basis and re-request the same url, get the result (its an XML document), parse it and depending on some changes to the parsed information, raise events that signal to the main form that something has to be done, for example, the bidding on that lot has started, finished, etc . As it's an internet based feed, there are some other things that can also happen that we need to handle - download errors, loss of connection etc. Further, depending on the auction house concerned, setting up the download structure and getting the initial packet is complex. So we have a set of these feed-watcher classes specialised to handle that initial work. The problem is that some of the conditions that result in the raising of these events can also happen during the construction of the feed-watcher object, e.g. loss of connection, but also some of the information based events, e.g the requested lot has been "cancelled" etc. As I said, once the feed is established,everything works fine. It's just that initial phase. The more I think about it, the more I am convinced that it cannot work the way we have designed and written it. And we will have to split the initial phase into a constructor and an "Initialise" method. So never mind. (Well, you did ask :-) ) regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] how to override opengl pkg-config requirements??? building gambas from trunk
On Thu, 26 Jun 2014 21:06:37 +0200 Benoît Minisini wrote: > Le 26/06/2014 20:53, PICCORO McKAY Lenz a écrit : > > i already compiled gambas 3.2 opengl module for lenny xorg 7.4 in > > past, but now in 3.5 trunk seems gambas need pkg-config files to find > > opengl requirements.. > > > > i mean, if i have opengl and xorg on a custom setup as example... > > > > how can i override configure script to supply the opengl requirements? > > due i got this on debian lenny (venenux 0.8): > > > > configure: WARNING: Unable to met pkg-config requirement: gl > > configure: WARNING: gb.opengl is disabled > > no > > configure: WARNING: Unable to met pkg-config requirement: gl > > configure: WARNING: gb.opengl.glsl is disabled > > no > > configure: WARNING: Unable to met pkg-config requirement: glu > > configure: WARNING: gb.opengl.glu is disabled > > no > > configure: WARNING: Unable to met pkg-config requirement: gl > > configure: WARNING: gb.opengl.sge is disabled > > > > || > > || Unable to met pkg-config requirement: gl > > || gb.opengl is disabled > > || Unable to met pkg-config requirement: gl > > || gb.opengl.glsl is disabled > > || Unable to met pkg-config requirement: glu > > || gb.opengl.glu is disabled > > || Unable to met pkg-config requirement: gl > > || gb.opengl.sge is disabled > > || > > > > > > > > Why don't you have the pkg-config files for the OpenGL library if you > have pkg-config? > > -- > Benoît Minisini > Elsewhere I received advice to delete ALL the pkg-config files on the system in order to get a non-gambas application to build properly. Since I did that I have had no problems, neither with gambas3 nor other source builds. There is information regarding the "pains" of pkg-config in various places on the internet, check first for some related to your distro. hth Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] The Class keyword
As in : CLASS Identifier Declares to the compiler that Identifier can be used as a class name. I am unsure of what this keyword really achieves. Specifically, I am having trouble understanding the help paragraph: "This keyword can be useful if you want to write some optional code in a component that needs a class from a component that is not necessarily loaded by the main project using this component." -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] how to override opengl pkg-config requirements???
On Fri, 27 Jun 2014 10:04:26 -0430 PICCORO McKAY Lenz wrote: > Date: Fri, 27 Jun 2014 08:47:52 +0930 > From: B Bruen > > > Elsewhere I received advice to delete ALL the pkg-config files on the > > system in order to get a non-gambas > >application to build properly. Since I did that I have had no problems, > >neither with gambas3 nor other source builds. > >There is information regarding the "pains" of pkg-config in various places > >on the internet, check first for some > >related to your distro. > that's not the case bruce, i used a older version of xorg that do not > provide pkg-config files, > This is, if I recall correctly, where the problem starts. The pkg-config files for other libraries are what causes the problem. I can't say that I really understand what actually happens, but what I THINK is your gb.xyz configure (as built by the auto... tools) attempts to check via pkg-config for the direct requirements of your gb.xyz library and then cascades through each of the required libraries specified in that library's .pc (???) file and checks for them etc etc. But just because gb.xyz needs libabc (which resolves to libabc.so.1.2.3 or whatever, which is nicely installled and dynamically linkable) then in the libabc.pc file it says they require libOzarquon - which you dont have. So the build fails! Also I THINK that the error gets "incorrectly" reported as can't find libabc.so which is actually there. If you delete the libabc.pc file from your system, the cascasing checks don't get invoked. This gb.xyz builds properly ( and links to libabc properly as well). So I suspect that somewhere on your system, there is a .pc file that thinks it requires some libXfordprefect library or something. Now - how the toolchain works is dependant on your distro. So you need to find any help on this (known) pkg-config issue specific for your distro and go from there. I believe the pkg-config spec files are generally suffixed ".pc" and tend to live in /lib/pkg-config but again this maybe distro specific. Here, I deleted all the .pc files and magically could make the non-gambas app successfully. When I next maked the gambas3 development version about n-thousand warnings disappeared and the overall build took about half the time (and the gb.sdl components all suddenly worked, which I could never get to happen before). > so i must parse all linker and includes manually, how i can do that? i > cannot see in configure script before run autopoint That's my point, you would have to inspect all the .pc files for the entire dependency tree specified therein to find the anomaly (or anomalies!). Manually. i.e. not a good idea. If deleting these files scares you (as it did me the first time) then just backup the pkg-config dir somewhere as they (the .pc files) are actually just text files containing the specifications to "help" the dynamic linker. Then delete all those files (leaving the /lib/pkg-config dir "almost" empty). Then try the gambas build again. If the result is still failure then just copy all those .pc files back in and look elsewhere for the problem. hth Bruce > > Lenz McKAY Gerardo (PICCORO) > http://qgqlochekone.blogspot.com > p.s. Oh and googling for "What are .pc files" is a BAD idea. You will get a LOT of disinformation. Better to start with something like " pkg-config fail" and got from there. -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] creating gb.qt4.webkit pages using gb.markdown etc (quick question)
OK, I've got the markdown to html bit under control and can generate the inner html for nicely for our "appinfo" text files. The next step is to generate the full html text for an entire web page, including the section with a css reference and applying some "class" attributes to parts of the html text. Looking through the IDE code that makes the various help texts it looks like this is being done "manually" with a lot of literal strings being used? My goal is to build a gb.qt4.webkit based project (component) that will display web pages with information about our applications from some text files we include in .hidden in the source project. (I can get these files out of the executable archive OK). Sort of like the IDE help but a bit different. My question is what is the best way for me to go next? a) follow the IDE "hammer and chisel" method b) look at the new wiki code, or c) is there something blatantly obvious that I am not seeing here? tia Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] creating gb.qt4.webkit pages using gb.markdown etc (quick question)
On Sat, 28 Jun 2014 09:44:00 +0930 B Bruen wrote: > some stuff that was probably not well expressed. So I will try again. What we have is: * some text files in many of our projects that describe "how to" do something in that application - by "how to" I mean stepwise descriptions of what actions need to be done to complete a "business" level activity that is supported by the application. These activities are not capable of, say, being driven by a wizard control or similar as they involve external parties and may take hours, days, ... to complete. The text files are there to provide (and this is really the best description I can give them) an aide-mémoire for the user's to go through the entire business activity. * up till now we have used these doc files internally to reply to user queries on these things, i.e. we reply by phone, fax or email with a "these are the things that have to be done" message. What I want to do is provide a do-it-yourself solution so the users can access the aide-mémoire files themselves. So it's sort of like a gambas help browser thing I am trying to build. The aide-mémoire "pages" are fairly simple. A topic, a title and a list of the steps needed. As an example, to change the ownership of a registered racing thoroughbred, which is required by the "rules" here in Australia, the registered trainer must submit a paper or fax form of up to 20 pages length to the national registry organisation. To prepare this paperwork could take the trainer an hour or so. Our gambas application does this in a few seconds. The steps (manual) are: 1) prepare the ownership change form 2) submit the form to the registry 3) wait ... ... until the registry confirms that the change has been approved and registered, or denied, or queried ... 4) file the ownership papers appropriately. Our application takes care of 1,2 and 4. But looks more like: 1) use menu item blah to prepare and submit ownership change documents to registry * the horse owners records will be updated, but marked as "pending" 2) when the change confirmation is received, use menu item blah2 to update owner records * the pending status will be removed and emails to the (changed) owners will be sent automatically. * the new ownership schedule will be printed so you can file it appropriately. 3) if the change is denied or queried by the registry see the following how-tos: * etc And this is one of the simplest (haha) things one could imagine for the arcane and bureaucratic ways things are run here. (You dont want to see other examples.) So: I want to build a how-to form in our trainer application that (simply) has an index page and a set of dynamically generated pages (based) on some simple text files. The index page will be static with just a set of links that access the topic page. I don't need or want anything fancier than that... yet. We are doing the following: * these files are being actively converted to the gambas "markdown" syntax. Very simple, but time consuming due to the number of them (~300) * trying to figure out the best way to build the "how-to" form. This last bit is what I am asking about. I am "wishing" that there is a really easy way to achieve the goals outlined above without having to re-invent the wheel so to speak. Any input will be (really) gratefully recieved. tia Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] making 6349
Interesting. It "just worked" here. Did you go though the entire "./reconf-all; ./configure -C; make" circus? Bruce On Mon, 30 Jun 2014 12:22:06 +1000 Shane wrote: > i get this error when trying to make version 6349 > > make[4]: Entering directory `/home/shane/trunk/gb.desktop.x11/src' >CC gb_desktop_x11_la-main.lo >CC gb_desktop_x11_la-x11.lo >CC gb_desktop_x11_la-c_x11systray.lo >CC systray/gb_desktop_x11_la-systray.lo > rm: cannot remove 'systray/.libs/gb_desktop_x11_la-systray.o': > Permission denied > Assembler messages: > Fatal error: can't create systray/.libs/gb_desktop_x11_la-systray.o: > Permission denied > make[4]: *** [systray/gb_desktop_x11_la-systray.lo] Error 1 > make[4]: Leaving directory `/home/shane/trunk/gb.desktop.x11/src' > make[3]: *** [all-recursive] Error 1 > make[3]: Leaving directory `/home/shane/trunk/gb.desktop.x11' > make[2]: *** [all] Error 2 > make[2]: Leaving directory `/home/shane/trunk/gb.desktop.x11' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/home/shane/trunk' > make: *** [all] Error 2 > > > > -- > Open source business process management suite built on Java and Eclipse > Turn processes into business applications with Bonita BPM Community Edition > Quickly connect people, data, and systems into organized workflows > Winner of BOSSIE, CODIE, OW2 and Gartner awards > http://p.sf.net/sfu/Bonitasoft > _______ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] gb.form.mdi : Attach/Detach
I am doing some experiments with detachable tabs in the gb.form.mdi component. A couple of things have come to light that I would like to suggest (as a basis for discussion, rather than a bug or whatever). 1) There is no way to completely detach a window from a workspace. That is, for example: suppose I have two workspaces on a form (or to abstract even further perhaps two workspaces on two concurrently active forms) and I want to move the current tab from this workspace to that workspace. I have proved I can do that almost successfully by, to put it at its' simplest: Workspace1.Detach(hWindow) Workspace2.Add(hWindow) but the association with Workspace1 remains and has some interesting side effects. So, it appears (to me) there is no way to completely dissociate hWindow from its' original Workspace. 2) When a window is Attached to a Workspace it is not automatically made the ActiveWindow. This may be "by design" but if I want to make the ActiveWindow in code then there does not seem to be anything like an "Attached" event in the Workspace that I can catch to effectively make this automatic Activation happen. (I have found a reasonably simple workaround for this but it is not "intuitively obvious". 3) Similar to 2) there is no "Detached" event available whereby I could set some values in the Workspace concerned or even in the detached window that would allow me to affect later processing. That's obscure. Suppose I have, as above, two workspaces and when I detach a window from one I need to know later "which workspace it was detached from", it would be nice to say set the Tag property to the name of the "original workspace". Either... 3a) Because I would like to implement a menuitem in the detached window that would allow a "Re-attach" action. 3b) Because even when the window is detached I may like to Reparent it in some other container :-) tricky eh? 4) The Detach/Attach/Reparent methods are not exactly ... how can I say it developer friendly? Suppose I want to move a window from a workspace to some other container. When the window is associated with a workspace, ReParent does not work - and silently at that. The window must first be detached and then reparented. Conversely, moving it from another container to a workspace involves a (fake) reparent, then either a Workspace.Add or, given that there is no completely detach method, a Workspace.Attach call. As I said, these things are not really bugs or complaints, rather a "Request For Comment". I have a demo project displaying some of these things which I will post if there is some interest. But, imagine an IDE wherein you could have both the form design and the form code visible at the same time in an hsplitter, or where you could have two (or more) class codes visible at the same time, or the ability to move one of the "bits" of the properties tab to the bottom "debug" panel of the IDE, or even move the toolbox into a vsplitter under the project browser instead of having it clutter the bottom of the properties sidepanel ... or even for that matter moving the properties thing into the middle pane... or or or. Get my drift? Anyone familiar with, for example, how the Modellio layouts can be manipulated in this way will understand what could be achieved here for the gambas IDE. regards and looking forward to comments Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Two quick questions
1) "Run this form" seems to ignore the Margin and Spacing properties of containers within the form. They work properly when the application main form is run. Has anyone seen this - or have I done something odd? 2) Occasionally, when changing gb.form.mdi ToolBar properties, or the properties of toolbuttons therein, in the IDE suddenly when running the form containing the toolbar all the buttons are invisible - and not available in the Configure popup. Further, when I look at the config file for the project the "Layout" slot for the toolbar has disappeared. I have no idea what is causing this. Has anyone else seen it? rgrds Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] gb.form.mdi : Attach/Detach
Yes, the gimp is probably a more common example. B On Tue, 1 Jul 2014 09:22:19 +0200 Fabien Bodard wrote: > So in a gimp way ? > Le 1 juil. 2014 06:29, "B Bruen" a écrit : > > > I am doing some experiments with detachable tabs in the gb.form.mdi > > component. A couple of things have come to light that I would like to > > suggest (as a basis for discussion, rather than a bug or whatever). > > > > 1) There is no way to completely detach a window from a workspace. > > That is, for example: suppose I have two workspaces on a form (or to > > abstract even further perhaps two workspaces on two concurrently active > > forms) and I want to move the current tab from this workspace to that > > workspace. I have proved I can do that almost successfully by, to put it at > > its' simplest: > > Workspace1.Detach(hWindow) > > Workspace2.Add(hWindow) > > but the association with Workspace1 remains and has some interesting side > > effects. > > So, it appears (to me) there is no way to completely dissociate hWindow > > from its' original Workspace. > > > > 2) When a window is Attached to a Workspace it is not automatically made > > the ActiveWindow. > > This may be "by design" but if I want to make the ActiveWindow in code > > then there does not seem to be anything like an "Attached" event in the > > Workspace that I can catch to effectively make this automatic Activation > > happen. > > (I have found a reasonably simple workaround for this but it is not > > "intuitively obvious". > > > > 3) Similar to 2) there is no "Detached" event available whereby I could > > set some values in the Workspace concerned or even in the detached window > > that would allow me to affect later processing. That's obscure. Suppose I > > have, as above, two workspaces and when I detach a window from one I need > > to know later "which workspace it was detached from", it would be nice to > > say set the Tag property to the name of the "original workspace". Either... > > > > 3a) Because I would like to implement a menuitem in the detached window > > that would allow a "Re-attach" action. > > 3b) Because even when the window is detached I may like to Reparent it in > > some other container :-) tricky eh? > > > > 4) The Detach/Attach/Reparent methods are not exactly ... how can I say it > > developer friendly? > > Suppose I want to move a window from a workspace to some other container. > > When the window is associated with a workspace, ReParent does not work - > > and silently at that. The window must first be detached and then > > reparented. Conversely, moving it from another container to a workspace > > involves a (fake) reparent, then either a Workspace.Add or, given that > > there is no completely detach method, a Workspace.Attach call. > > > > As I said, these things are not really bugs or complaints, rather a > > "Request For Comment". I have a demo project displaying some of these > > things which I will post if there is some interest. > > > > But, imagine an IDE wherein you could have both the form design and the > > form code visible at the same time in an hsplitter, or where you could have > > two (or more) class codes visible at the same time, or the ability to move > > one of the "bits" of the properties tab to the bottom "debug" panel of the > > IDE, or even move the toolbox into a vsplitter under the project browser > > instead of having it clutter the bottom of the properties sidepanel ... or > > even for that matter moving the properties thing into the middle pane... or > > or or. Get my drift? > > > > Anyone familiar with, for example, how the Modellio layouts can be > > manipulated in this way will understand what could be achieved here for the > > gambas IDE. > > > > regards and looking forward to comments > > Bruce > > > > -- > > B Bruen > > > > > > -- > > Open source business process management suite built on Java and Eclipse > > Turn processes into business applications with Bonita BPM Community Edition > > Quickly connect people, data, and systems into organized workflows > > Winner of BOSSIE, CODIE, OW2 and Gartner awards > > http://p.sf.net/sfu/Bonitasoft > > ___ > > Gambas-user mailing list > > Gambas-user@lists.sourceforge.net > > https://lis
Re: [Gambas-user] Wishlist : gb.form.mdi ToolBar
On Sat, 05 Jul 2014 14:21:51 +0200 Benoît Minisini wrote: > Le 25/06/2014 04:32, B Bruen a écrit : > > Is there any reason that the ToolBar control is constrained within > > gb.form.mdi? > > I use it consistently, without needing the other controls in gb.form.mdi > > and would really like to see it just within gb.form as a general control. > > > > Maybe gb4? > > > > regards > > Bruce > > > > Because the Toolbar is dependent on other internal features of gb.form.mdi. > > But why is it a problem that you have to check "gb.form.mdi"? > > -- > Benoît Minisini > OK, no real problem (I just keep forgetting to add it and then my "train-of-thought" gets interupted.) B -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] creating gb.qt4.webkit pages using gb.markdown etc (quick question)
On Fri, 27 Jun 2014 23:15:14 -0600 Randall Morgan wrote: > I am not quit sure I understand what you mean the best way to build the how > to form. > > I use a web editor like Dreamweaver, Aptana Studio, etc. to create template > pages. These pages are stored in the project folder. I then load the data > needed to complete the page from a database, text or xml file. An entire > page of content can be loaded this way. > > I hope this helps > Yes, thanks Randall. I was probably just too close to the problem to see the obvious solution. (Talk about over-complicating things.) Bruce > > On Fri, Jun 27, 2014 at 10:02 PM, B Bruen wrote: > > > On Sat, 28 Jun 2014 09:44:00 +0930 > > B Bruen wrote: > > > > > some stuff that was probably not well expressed. > > > > So I will try again. What we have is: > > * some text files in many of our projects that describe "how to" do > > something in that application > > - by "how to" I mean stepwise descriptions of what actions need to be > > done to complete a "business" level activity that is supported by the > > application. These activities are not capable of, say, being driven by a > > wizard control or similar as they involve external parties and may take > > hours, days, ... to complete. The text files are there to provide (and > > this is really the best description I can give them) an aide-mémoire for > > the user's to go through the entire business activity. > > * up till now we have used these doc files internally to reply to user > > queries on these things, i.e. we reply by phone, fax or email with a "these > > are the things that have to be done" message. > > > > What I want to do is provide a do-it-yourself solution so the users can > > access the aide-mémoire files themselves. So it's sort of like a gambas > > help browser thing I am trying to build. The aide-mémoire "pages" are > > fairly simple. A topic, a title and a list of the steps needed. As an > > example, to change the ownership of a registered racing thoroughbred, which > > is required by the "rules" here in Australia, the registered trainer must > > submit a paper or fax form of up to 20 pages length to the national > > registry organisation. To prepare this paperwork could take the trainer an > > hour or so. Our gambas application does this in a few seconds. The steps > > (manual) are: > > 1) prepare the ownership change form > > 2) submit the form to the registry > > 3) wait ... ... until the registry confirms that the change has been > > approved and registered, or denied, or queried ... > > 4) file the ownership papers appropriately. > > Our application takes care of 1,2 and 4. But looks more like: > > 1) use menu item blah to prepare and submit ownership change documents to > > registry > >* the horse owners records will be updated, but marked as "pending" > > 2) when the change confirmation is received, use menu item blah2 to update > > owner records > > * the pending status will be removed and emails to the (changed) owners > > will be sent automatically. > > * the new ownership schedule will be printed so you can file it > > appropriately. > > 3) if the change is denied or queried by the registry see the following > > how-tos: > > * etc > > > > And this is one of the simplest (haha) things one could imagine for the > > arcane and bureaucratic ways things are run here. (You dont want to see > > other examples.) > > > > So: > > I want to build a how-to form in our trainer application that (simply) has > > an index page and a set of dynamically generated pages (based) on some > > simple text files. The index page will be static with just a set of links > > that access the topic page. I don't need or want anything fancier than > > that... yet. > > We are doing the following: > > * these files are being actively converted to the gambas "markdown" > > syntax. Very simple, but time consuming due to the number of them (~300) > > * trying to figure out the best way to build the "how-to" form. > > > > This last bit is what I am asking about. I am "wishing" that there is a > > really easy way to achieve the goals outlined above without having to > > re-invent the wheel so to speak. > > > > Any input will be (really) gratefully recieved. > > > > tia > > Bruce > > > > -- > > B Bruen > > > > > > ---
Re: [Gambas-user] IDE Feature Request
On Mon, 16 Jun 2014 17:36:43 +0200 Benoît Minisini wrote: > Le 16/06/2014 00:52, B Bruen a écrit : > > ( Don't see why I shouldn't join in :-) ) > > > > Would it be possible to lock source files the same as for forms? This > > would prevent me from changing the wrong class in a set of very > > similar classes. > > > > Oh,and while you're there - the reload button on the form toolbar > > seems to unlock a locked form! > > > > regards Bruce > > > > I didn't know that feature was used... I often have 3 or more projects open, either copying some code from one to another or refactoring one based on the newer or bettter code in another. Invariably, if I don't pay proper attention, I end up changing the wrong project's code. So locking class code would stop me making that mistake. > > I will change the way it works, so that every file can be locked. I will > simply use the file read authorization. Benoît, Was this done yet? Not bumping, just wondering. > > Regards, > > -- > Benoît Minisini > regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Sorting gridviews
Hi Tobi, I too have implemented a similar approach to yours, but it is not what I was looking for. I am trying to implement a sort over multiple columns, like "ORDER BY ColA ASC, ColC DESC, ColB ASC" in an sql query. I just cannot get it right. In fact, I have now decided that the easiest way is to create a temporary Sqllite db, fill it with the columns of the array and let it do the sorting. Not an optimal solution but at least it works for the data sets we will be using it for. regards Bruce On Wed, 25 Jun 2014 13:51:42 +0200 Tobias Boege wrote: > On Wed, 25 Jun 2014, B Bruen wrote: > > Someone, recently, was discussing sorting gridviews over multiple columns. > > Tobi? > > > > Was any progress made on this? > > > > The project was finished some time ago. But likely the results will not > please you because the code is not very integrative. > > Basically, we model the GridView as an array of Record objects (the array is > the rows, a Record describes the columns in the GridView). By a special > RecordArray class which Inherits Record[] and a special _compare() method in > Record, we can sort that RecordArray by any property of the Record objects. > > So you must write a Record class for your specific purpose and have an array > of them behind the scenes to populate the GridView with. Maybe you can tweak > the code to be a bit more general... if you get it much more general, please > tell me :-) [ IIRC, we have a SortField property in each Record object which > we need to set for each object in the array before we sort. I think you can > replace that with a static property if you never sort multiple arrays at the > same time... ] > > The code for the GridView is here[0] and also here[1] in the more abstract > context of sorting multidimensional arrays. (The project archives are at the > end of the article.) > > Regards, > Tobi > > [0] http://www.gambas-buch.de/dw/doku.php?id=k17:k17.7:k17.7.4:start > [1] http://www.gambas-buch.de/dw/doku.php?id=k7:k7.4:k7.4.9:k7.4.9.4:start > > PS: I would prefer [1] over [0]. The code used in [0] was actually an early > try from me and it uses the officially not supported possibility to override > Variant[]. (Variant[] acts as both, a Record object and also as an array > class for Variant[] objects there!) > > -- > "There's an old saying: Don't change anything... ever!" -- Mr. Monk > > -- > Open source business process management suite built on Java and Eclipse > Turn processes into business applications with Bonita BPM Community Edition > Quickly connect people, data, and systems into organized workflows > Winner of BOSSIE, CODIE, OW2 and Gartner awards > http://p.sf.net/sfu/Bonitasoft > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] The Class keyword
Ah, now I get it! Thanks Tobi B On Fri, 27 Jun 2014 11:42:06 +0200 Tobias Boege wrote: > On Fri, 27 Jun 2014, B Bruen wrote: > > As in : > > CLASS Identifier > >Declares to the compiler that Identifier can be used as a class name. > > > > I am unsure of what this keyword really achieves. Specifically, I am > > having trouble understanding the help paragraph: > > "This keyword can be useful if you want to write some optional code in a > > component that needs a class from a component that is not necessarily > > loaded by the main project using this component." > > > > Suppose you implement a Graph class in gb.data which uses an adjacency > matrix. So you have the normal graph stuff in the interface but also maybe > a Matrix property that is specific to the Graph implementation via an > adjacency matrix - and this property returns that matrix. > > This is actually useful because you may want to do arithmetic on this matrix > to find connected components, the number of triangles in the graph, etc.. > > However, you would want the datatype of the Matrix property to be the Matrix > class of gb.gsl or the like so that users can readily operate on it. But you > may also notice that some users don't really care about the matrix - they > just want *some* graph or adjacency matrices scale well in their application > - and are bothered by the dependency of gb.gsl you have just imposed. > > Therefore, leave gb.gsl out and use "Class Matrix" in your Graph class. > Those users who want to use the Matrix property will have to load gb.gsl > themselves and everyone is happy. > > Regards, > Tobi > > -- > "There's an old saying: Don't change anything... ever!" -- Mr. Monk > > -- > Open source business process management suite built on Java and Eclipse > Turn processes into business applications with Bonita BPM Community Edition > Quickly connect people, data, and systems into organized workflows > Winner of BOSSIE, CODIE, OW2 and Gartner awards > http://p.sf.net/sfu/Bonitasoft > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] RFC: How to identify vertices and edges in a Graph class?
clean" the graph that would remove dangling edges. So ... Class g-node' attempts to generalise any Vertice or Edge in a directed graph Property Key,Identifier as String Property Type As String ' validated "In ["V","E"] Property OriginatingAssociations As Array' holds the list of g-nodes where this g-node is the origin Property TerminatingAssociations As Array ' holds the list of g-nodes where this g-node is the destination Class graph Property Nodes as Array ' holds the set of nodes in the graph Function Remove(Key as String) As graph ' remove a node and leave all associations dangling Function RemoveWithSnap(Key as String) as graph Function Clean() as graph etc Is this type of thinking consistent with yours? regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] RFC: How to identify vertices and edges in a Graph class?
On Sun, 6 Jul 2014 16:48:47 +0200 Tobias Boege wrote: > On Sun, 06 Jul 2014, B Bruen wrote: > > On Fri, 4 Jul 2014 13:23:41 +0200 > > Tobias Boege wrote: > > > > > Hi list, > > > > > > I'm currently (well, I'll try to continue with it tomorrow) implementing > > > an > > > abstract Graph class in gb.data. And by "abstract", I mean that I will > > > just > > > specify the interface of Graph classes, so that concrete implementations, > > > of > > > which there are plenty possibilities, are varible behind that consistent > > > interface. (Of course, after the interface is there, you get at least two > > > concrete implementations delivered for free along with gb.data.) This > > > should > > > encourage you to model your problems as your own customised Graph classes > > > and maybe you can then already solve them with a standard algorithm, like > > > Dijkstra. > > > ... > > > > Hi Tobi, > > Some thoughts. > > > > A directed graph is more fundamental than an undirected graph. Consider > > the simplest directed graph, an ordered list of two Vertices and one Edge. > > (I'll avoid integer idenitifcations for ease of explanation,) We have nodes > > "A" and "B" which are Vertices and node "ab" which is the edge. Node "ab" > > allows a traversal from "A" to "B", there is no traversal permissable from > > "B" to "A". In an undirected graph, the "ab" edge would somehow have to > > permit both the A->B traversal and the B->A traversal. However, this could > > be implemented as a graph type property where creating the "ab" edge also > > creates the reverse "ba" edge. > > > > That's what I was going to do. The Graph constructor will take an Optional > Directed As Boolean. The implementation will need to worry about what this > property effects. Indeed, my thoughts exactly. > > > The second point is somewhat more interesting. In the above I used the > > term "node" deliberately. Some of the more arcane bits of graph theory > > suggest or even require that Vertices and Edges are interchangeable. That > > is, any Vertice can be considered as an Edge and any Edge can be considered > > as a Vertice. To allow this, I think that there needs to be a "fundamental > > particle" approach to building a library such as yours. This is based on: > > "A graph is a set of Vertices each of which is connected to some number of > > other Vertices by a set of Edges" > > "A graph is a set of Edges, each of which is connected to some number of > > other Edges by a set of Vertices" > > Note, generally we think of an edge as something with a maximum of two > > connections, i.e. ends. But in fact mathematically and Edge could have any > > number of ends. That's hard to visualise using the normal "ball and string" > > image, but if you consider the edge "abc" as a ball with three > > (unterminated) strings "A","B" and "C" then it starts to become easier to > > imagine. > > That's interesting! Can you put your definition mathematically? Or suggest a > book which develops graph theory this way? I fear otherwise I won't get the > idea. It comes from the hypergraph ideas. See http://en.wikipedia.org/wiki/Hypergraph especially the second and third paragraphs. > > What I call a graph is a pair of sets (V, E) where V are the vertices and E > is a subset of V times V. So in fact, an edge has exactly one end. It cannot > have zero ends nor two (like your edges could). (How many beginnings do your > edges support anyway?) Bit unsure of what you mean here? I was using "end" to mean both the origin association(s) and the destination association(s). So to me an edge can only have >= 2 ends. However, any "end" could be "unfilled" i.e. there is no vertice on it. > > Vertices and edges are well distinguished in the above definition. Could you > give me a pointer on where one needs to have vertices and edges to be > interchangeable? At this point, interpreting a vertex as an edge doesn't > make any sense to me (whereas an edge as a vertex seems ok). Some information at http://en.wikipedia.org/wiki/Edge_graph > > Wikipedia calls an extension of a graph where edges can connect any number > of vertices (apparently any *positive* number) a "hypergraph" and I would > personally stick to that naming, i.e. implement
Re: [Gambas-user] Discourse?
Yes, me as well. It looks more like using a pantechnicon to go to the corner shop for a loaf of bread and a bottle of milk. :-) regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] IDE Wish list: Stock popup to select an image for code insertion
I come up against this occasionally, so this is an "only if it's easy" wish. When working with class code and I want to insert a color value, it is very easy to do so using the "Insert Color" button on the class editor toolbar. Occasionally, again when working with the code, I want to insert a stock image. Now I realise that the auto-complete for Picture["icon:/... will provide a fairly easy way to achieve that. However, it sort of needs me to know beforehand the name of the icon that I want. So, my wish is for a class editor toolbutton (like "Insert Color") to insert the entire code (yes, I can usually manage not to remember that "icon:/ starter bit) that would popup a form like the form designer stock image selector and let me select the icon I want visually. As an example, today the icon I was looking for was Picture["icon:/22/sort-descent']. I did find it after a couple of up and down scrolls through the auto-completion listview. It did not occur to me that the name began with sort- :-( and it would have been much easier just to have that form designer stock image form showing the matrix of icons. Whatever you think. regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] More IDE wish list items
1) In the form designer context menu "Select" item controls popup list, the form itself is not listed. It would be nice to be able to use this when there is little or no space on the form to quickly get to the form itself. 2) In the form designer context menu as well as "Select All" could we also have "Select Parent" to get the container for the currently selected control. regards Bruce -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] MTHeme error...
On Thu, 10 Jul 2014 14:46:20 +0200 Tobias Boege wrote: > On Thu, 10 Jul 2014, Stephen wrote: > >Thank you Tobias. > > > >H... it (MTheme.ReadFile) is looking for a subdir off /tmp with > > the name of gambas. I created the subdir manually and gambas3-3.5.4 now > > starts up as it should. > >Perhaps a change to the MTheme.module is warranted, check for the > > existence of the directories referenced in sPath, create them if need > > be, then copy sPath to sTemp. Just a thought. > > > > Hmm, interesting. From _init(), ReadFile("gambas") gets called, which > constructs a path "theme/gambas" to load the default theme which is then > copied to a temporary location, which is the famous line 59. > > But the path to copy the theme file to is obtained from Temp$() so if this > directory doesn't exist, some node in the path /tmp/gambas.UID/PID/ does not > exist (which would be strange) or Temp$() is broken... > Guessing ... >some node in the path /tmp/gambas.UID/PID/ does not > exist (which would be strange) but then wouldn't the fail occur earlier when tmp/gambas.UID/PID was created? > Temp$() is broken... again wouldn't that imply an earlier failure? So something else is awry. rgrds Bruce > Regards, > Tobi > > -- > "There's an old saying: Don't change anything... ever!" -- Mr. Monk > -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] More IDE wish list items
On Thu, 10 Jul 2014 23:24:50 +0200 Benoît Minisini wrote: > Le 10/07/2014 02:50, B Bruen a écrit : > > 1) In the form designer context menu "Select" item controls popup > > list, the form itself is not listed. It would be nice to be able to > > use this when there is little or no space on the form to quickly get > > to the form itself. > > Just hit ESC. Well, you have successfully kept that secret (from me) for years now! :-) > > > 2) In the form designer context menu as well as > > "Select All" could we also have "Select Parent" to get the container > > for the currently selected control. > > That's possible. > > -- > Benoît Minisini > > -- > Open source business process management suite built on Java and Eclipse > Turn processes into business applications with Bonita BPM Community Edition > Quickly connect people, data, and systems into organized workflows > Winner of BOSSIE, CODIE, OW2 and Gartner awards > http://p.sf.net/sfu/Bonitasoft > ___ > Gambas-user mailing list > Gambas-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-user -- B Bruen -- Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user