From gambas at ...1... Fri Jul 1 16:48:19 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 1 Jul 2005 16:48:19 +0200 Subject: [Gambas-devel] Release of gambas2 1.9.10 In-Reply-To: <42C126AD.6030501@...45...> References: <200506241647.48455.gambas@...1...> <42C126AD.6030501@...45...> Message-ID: <200507011648.19759.gambas@...1...> On Tuesday 28 June 2005 12:30, Daniel Campos wrote: > The new EXEC is a bit ambiguous for me: > > Dim hProc As Process > > hProc=EXEC[command] > > Execution --> Error: wanted Process, got String > > hProc=EXEC[command] FOR WRITE > > Execution --> OK > > > Then, must I specify at least "FOR WRITE" if I want to recive the > Process descriptor? Even > if I don't want to write anything?. Should'n be more logical to return a > String only > if you specify the "WAIT" flag? > > My first impression was that it was a bug, as I didn't specify WAIT but > the program > was blocked till the process finished... It makes more dificult the > transition from > Gambas1 to Gambas2 too in any program, as it is not only matter of > change the > position of the process descriptor in the line, but adding a useless flag. > > Could you please change this Beno?t? I really do not find it useful nor > intuitive. > > Regards, > > D. Campos > OK. Here is a new syntax: 1) [hProcess =] (EXEC | SHELL) ... [WAIT] [FOR READ|WRITE] WAIT is never implicite in this syntax 2) (EXEC | SHELL) ... TO aString WAIT is implicite then, and aString get the output of the process. Is it better ? -- Benoit Minisini mailto:gambas at ...1... From danielcampos at ...45... Fri Jul 1 17:37:58 2005 From: danielcampos at ...45... (Daniel Campos) Date: Fri, 01 Jul 2005 17:37:58 +0200 Subject: [Gambas-devel] Release of gambas2 1.9.10 In-Reply-To: <200507011648.19759.gambas@...1...> References: <200506241647.48455.gambas@...1...> <42C126AD.6030501@...45...> <200507011648.19759.gambas@...1...> Message-ID: <42C56356.1090606@...45...> >> >> > >OK. Here is a new syntax: > >1) [hProcess =] (EXEC | SHELL) ... [WAIT] [FOR READ|WRITE] >WAIT is never implicite in this syntax > >2) (EXEC | SHELL) ... TO aString >WAIT is implicite then, and aString get the output of the process. > >Is it better ? > > Yes, it is much better, thanks! And in that new way you always receive a Process handler, which is less ambiguous. Regards, D. Campos From gambas at ...1... Fri Jul 1 17:56:22 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 1 Jul 2005 17:56:22 +0200 Subject: [Gambas-devel] bug In-Reply-To: <200506242038.18091.rospolosco@...29...> References: <200506242038.18091.rospolosco@...29...> Message-ID: <200507011756.22806.gambas@...1...> On Friday 24 June 2005 20:38, rospolosco wrote: > Hello Benoit. > > I found this bug. I made a form with a button and a drawing area. > > When I click the button I would change the background color of > the drawing area and draw a white rectangle. But: > > on first button click only background color changes; > > on second click I finally see the rectangle. > > To work around this little problem I added this line > to the code: > > WAIT 0 > > and now on first button click everything goes well. > > I've attached the buggy code. Just uncomment the > WAIT 0 line to work around the bug. > This is the code I run with Gambas 1.0.6. > The problem exists in 1.0.6 and 1.9.9. > > My system: > > OS: GNU/linux Mandrake 10.1 > kernel: 2.4.31 > CPU: Athlon 900 Mhz > Ram: 192 Mb > Gambas 1.0.6 > > Thanks for Gambas, > > Stefano > Actually, you have set DrawingArea.Cached to FALSE, so your drawing code must be put in the 'Draw' event handler. Otherwise, the behaviour is hard to predict. You should not rely on the background and foreground property to draw inside the DrawingArea. Set them with Draw.Foreground and Draw.Background directly. But I admit this is logical, so in the future, the Background and Foreground DrawingArea properties may be automatically transmitted to the Draw class. Last, you should not use the Clear method when Cached is set to FALSE. It does nothing! > P.S. > > In 1.9.9 the autocompletation in .Perm. inside > a WITH END WITH construct doesn't work. > I mean: > > WITH Stat(a file) > > .Perm.(no_auto_completation user-group-other) > > END WITH OK, this bug will be fixed in the next version. Regards, -- Benoit Minisini mailto:gambas at ...1... From gambasfr at ...4... Fri Jul 1 21:56:55 2005 From: gambasfr at ...4... (fabien) Date: Fri, 1 Jul 2005 21:56:55 +0200 Subject: [Gambas-devel] Bug in gambas code autoformat Message-ID: <200507012156.55248.gambasfr@...4...> hresult = hcon.Exec("SELECT code.*, users.login, users.idusers, codeinfo.showed, codeinfo.downloaded, codeinfo.rate, codeinfo.nbrvote, codecategory.name FROM code, users, codeinfo, codecategory WHERE code.idcode = &1 AND code.idusers = users.idusers AND codeinfo.idcode=code.idcode", hweb.Get["id"]) type this and gambas editor when you move your cursor cut code.idcode so i've an error because code.idcode <> code.i !! an idea ? Fabien hresult = hcon.Exec("SELECT code.*, users.login, users.idusers, codeinfo.showed, codeinfo.downloaded, codeinfo.rate, codeinfo.nbrvote, codecategory.name FROM code, users, codeinfo, codecategory WHERE code.idcode = &1 AND code.idusers = users.idusers AND codeinfo.idcode=code.i", hweb.Get["id"]) From danielcampos at ...45... Sat Jul 2 01:51:14 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sat, 02 Jul 2005 01:51:14 +0200 Subject: [Gambas-devel] Picture.Flush segfault Message-ID: <42C5D6F2.8070601@...45...> Hi: Just create a project with a pictureBox and a button, and the following code in the button click event: PictureBox1.Picture=Picture["/any/path/that/exists"] Picture.Flush() After pressing some times the button, you will reach a segmentation fault using gb.qt Regards, D. Campos From danielcampos at ...45... Sat Jul 2 19:10:06 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sat, 02 Jul 2005 19:10:06 +0200 Subject: [Gambas-devel] gb.gtk updated Message-ID: <42C6CA6E.5080602@...45...> Hi: 050702 - Alpha http://gambas.gnulinex.org/gtk * NEW: ScrollView properties and methods fully implemented. * FIXED: Button font handling improved: more compatibility with gb.qt * FIXED: "fg" and "bg" widgets pointers removed from gControl (8 bytes less used per widget) * NEW: Image.Save, Picture.Save, Picture.Flush, Picture._put, Picture._get methods implemented. * FIXED: ListView.BackGround not works corretly. * NEW: Mouse.Move method implemented. * NEW: Picture.Clear method implemented. * NEW: Window and Form can have a parent now. * NEW: ScrollBar and Slider properties and methods are fully implemented now. Regards, D. Campos From gambas at ...1... Sat Jul 2 15:49:30 2005 From: gambas at ...1... (Benoit Minisini) Date: Sat, 2 Jul 2005 15:49:30 +0200 Subject: [Gambas-devel] DCOP QMAP problem In-Reply-To: <6.0.0.22.2.20050608174235.02c43b20@...239...> References: <42A2B40A.6080702@...1...> <42A6B2BD.6050409@...316...> <6.0.0.22.2.20050608174235.02c43b20@...239...> Message-ID: <200507021549.31867.gambas@...1...> On Wednesday 08 June 2005 18:11, Carlo Sorda wrote: > Hi, > I have a problem to use DCOP to drive knotes. > like sample: > > DIM cNotes AS Collection > Dim id as string > > cNotes = NEW Collection > hKnotes = Application["knotes"] > cNotes = hKnotes["KNotesIface"].notes() > > IF cNotes <> NULL THEN > FOR EACH Element IN cNotes > id = cstring(cNotes.Key) > PRINT "Key: " & id & " - " "Element: " & Element; > NEXT > ENDIF > > the first 4 byte of id are in binary mode, other are string!!! > The function QMAP is mapped to Collection of string This is a bad bug I made in the QT component. It will fixed in the next development version, and will be backported to the stable one. Regards, -- Benoit Minisini mailto:gambas at ...1... From gambas at ...1... Fri Jul 1 23:02:29 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 1 Jul 2005 23:02:29 +0200 Subject: [Gambas-devel] Bug in process (2) In-Reply-To: <42C15661.7010101@...45...> References: <42C15661.7010101@...45...> Message-ID: <200507012302.29494.gambas@...1...> On Tuesday 28 June 2005 15:53, Daniel Campos wrote: > The bug is exatly here: > > static void stop_process_after(CPROCESS *_object) > { > > ...... > > /* Vidage du tampon de sortie */ > if (THIS->out >= 0) > { > stream = CSTREAM_stream(THIS); > while (!STREAM_eof(stream)) <---- HERE IT FINISHES WITH A SEGFAULT > { > stream->process.read_something = FALSE; > .... > > > Regards, > > Daniel Campos > > Thanks Daniel. This will be fixed in the next version. -- Benoit Minisini mailto:gambas at ...1... From gambas at ...1... Fri Jul 1 23:42:52 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 1 Jul 2005 23:42:52 +0200 Subject: [Gambas-devel] gb.v4l update In-Reply-To: <42C2BDE5.9080608@...45...> References: <42C2BDE5.9080608@...45...> Message-ID: <200507012342.52918.gambas@...1...> On Wednesday 29 June 2005 17:27, Daniel Campos wrote: > Hi: > > I've finished all that I wanted for the v4l component: capture support, > and support > for a Tuner, so you can select the frequency on a TV card. So I've > placed the > stable release at: > > http://gambas.gnulinex.org/v4l > > (gnulinex DNS is already up and running, so if you > can not enter today, please wait a few hours). > > I changed some names to be more generic. The main class now is > "VideoDev" instead > of "WebCam". There are two virtual classes: > > - VideoDevTuner : to manage to frequencies > - VideoDevFeatures: to get video device capabilities. > > Note that this component is just intended for capture, do not expect to > show images at > 1024x768 over a remote desktop and things like this :-)). However, one > of the properties, > "id", gives you the possibility of using the new API-Call capabilities > of Gambas, if you > want to perform special actions. > > I've updated the example, too. > > Beno?t: even if this component is just for Linux (it is sure Windows has > not a v4l interface, > and I don't know about FreeBSD), it can be useful for a lot of people: > some market applications, > for example, use to allow to connect to a webcam so the owner of the > store can view remotely if somebody > is stealing (or sleeping :-)), and it is useful to show images on a web > page, using a CGI, too. > Do you plan to include it in the main sources? Yes, of course! But before I suggest... :-) 1) Renaming "VideoDev" to "VideoDevice" 2) Replacing the ToString() method by sort of "Data" property that returns a Byte[] array. 3) Make VideoDevice a stream, so that reading returns the image data. 4) When a method receives a file name as argument, you *must* use the GB.FileName() API to get it, and not use the string argument directly: BEGIN_METHOD(save_me, GB_STRING path) char *filename = GB.FileName(STRING(path), LENGTH(path)); ... END_METHOD Look at CIMAGE_save() in ./src/gb.qt/src/CImage.cpp if you need an example. GB.FileName() converts the file name given by the user (in UTF-8) to the encoding used by the system (ISO8859-15 on my Mandrake). If you don't that, file names including non-ASCII characters won't work! 5) Use the file extension to guess the file format, when the format argument is not specified in the Save method. 6) GB_PROPERTY_READ("Tuner",".VideoDevTuner",CWEBCAM_self) is not needed anymore. You can use: GB_PROPERTY_SELF("Tuner",".VideoDevTuner"), and then remove CWEBCAM_self. 7) Do not prefix constants when there is no ambiguity: NormPAL -> PAL, SourceCOMPOSITE -> Composite, and so on. 8) Replacing SelectSource() method by an integer property named Source, that combines Source and Norm arguments. Something like: MyVideoDevice.Source = VideoDevice.PAL + VideoDevice.Composite You may have to change the value of the constants to do that. 9) I have an article in french Linux magazine that explains how to capture image from IEEE 1394 device. But they use a specific API... Can v4l use IEEE 1394 devices ? 10) Don't use GB.ReturnNewString("", 0); - berk! Just use GB.ReturnNull(); 11) Instead of using GB.ReturnNewString(str, 0);, use GB.ReturnNewZeroString(str); Regards, -- Benoit Minisini mailto:gambas at ...1... From gambas at ...1... Fri Jul 1 22:59:06 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 1 Jul 2005 22:59:06 +0200 Subject: [Gambas-devel] Removing some warnings ... In-Reply-To: <42C3FD66.8010003@...141...> References: <42C3FD66.8010003@...141...> Message-ID: <200507012259.06895.gambas@...1...> On Thursday 30 June 2005 16:10, Laurent Carlier wrote: > I've remove warning about redefinition of ulong by adding : > > #include "config.h" > > to gb_common.h > > Regards, OK. I do the same thing... -- Benoit Minisini mailto:gambas at ...1... From gambas at ...1... Fri Jul 1 23:03:02 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 1 Jul 2005 23:03:02 +0200 Subject: [Gambas-devel] gb.gtk - 050630 In-Reply-To: <42C3E6D8.9020008@...45...> References: <42C3E6D8.9020008@...45...> Message-ID: <200507012303.02903.gambas@...1...> On Thursday 30 June 2005 14:34, Daniel Campos wrote: > Hi: > > New version of the gb.gtk component with a lot of fixes. The next release > I will begin to write a ChangeLog file. > > http://gambas.gnulinex.org/gtk > > Regards, > > D. Campos > OK. Merged! -- Benoit Minisini mailto:gambas at ...1... From stefanopalmeri at ...29... Sat Jul 2 20:50:18 2005 From: stefanopalmeri at ...29... (Stefano Palmeri) Date: Sat, 2 Jul 2005 20:50:18 +0200 Subject: [Gambas-devel] bug In-Reply-To: <200507011756.22806.gambas@...1...> References: <200506242038.18091.rospolosco@...29...> <200507011756.22806.gambas@...1...> Message-ID: <200507022050.19162.stefanopalmeri@...29...> Alle 17:56, venerd? 1 luglio 2005, Benoit Minisini ha scritto: Thanks for answers. Regards, Stefano Palmeri > On Friday 24 June 2005 20:38, rospolosco wrote: > > Hello Benoit. > > > > I found this bug. I made a form with a button and a drawing area. > > > > When I click the button I would change the background color of > > the drawing area and draw a white rectangle. But: > > > > on first button click only background color changes; > > > > on second click I finally see the rectangle. > > > > To work around this little problem I added this line > > to the code: > > > > WAIT 0 > > > > and now on first button click everything goes well. > > > > I've attached the buggy code. Just uncomment the > > WAIT 0 line to work around the bug. > > This is the code I run with Gambas 1.0.6. > > The problem exists in 1.0.6 and 1.9.9. > > > > My system: > > > > OS: GNU/linux Mandrake 10.1 > > kernel: 2.4.31 > > CPU: Athlon 900 Mhz > > Ram: 192 Mb > > Gambas 1.0.6 > > > > Thanks for Gambas, > > > > Stefano > > Actually, you have set DrawingArea.Cached to FALSE, so your drawing code > must be put in the 'Draw' event handler. Otherwise, the behaviour is hard > to predict. > > You should not rely on the background and foreground property to draw > inside the DrawingArea. Set them with Draw.Foreground and Draw.Background > directly. > > But I admit this is logical, so in the future, the Background and > Foreground DrawingArea properties may be automatically transmitted to the > Draw class. > > Last, you should not use the Clear method when Cached is set to FALSE. It > does nothing! > > > P.S. > > > > In 1.9.9 the autocompletation in .Perm. inside > > a WITH END WITH construct doesn't work. > > I mean: > > > > WITH Stat(a file) > > > > .Perm.(no_auto_completation user-group-other) > > > > END WITH > > OK, this bug will be fixed in the next version. > > Regards, From danielcampos at ...45... Sun Jul 3 12:54:07 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sun, 03 Jul 2005 12:54:07 +0200 Subject: [Gambas-devel] gb.v4l update In-Reply-To: <200507012342.52918.gambas@...1...> References: <42C2BDE5.9080608@...45...> <200507012342.52918.gambas@...1...> Message-ID: <42C7C3CF.8070007@...45...> OK, I will apply the changes in the next release, thanks, Daniel > >Yes, of course! > >But before I suggest... :-) > >1) Renaming "VideoDev" to "VideoDevice" > >2) Replacing the ToString() method by sort of "Data" property that returns a >Byte[] array. > >3) Make VideoDevice a stream, so that reading returns the image data. > >4) When a method receives a file name as argument, you *must* use the >GB.FileName() API to get it, and not use the string argument directly: > >BEGIN_METHOD(save_me, GB_STRING path) > char *filename = GB.FileName(STRING(path), LENGTH(path)); > ... >END_METHOD > >Look at CIMAGE_save() in ./src/gb.qt/src/CImage.cpp if you need an example. > >GB.FileName() converts the file name given by the user (in UTF-8) to the >encoding used by the system (ISO8859-15 on my Mandrake). > >If you don't that, file names including non-ASCII characters won't work! > >5) Use the file extension to guess the file format, when the format argument >is not specified in the Save method. > >6) GB_PROPERTY_READ("Tuner",".VideoDevTuner",CWEBCAM_self) is not needed >anymore. You can use: GB_PROPERTY_SELF("Tuner",".VideoDevTuner"), and then >remove CWEBCAM_self. > >7) Do not prefix constants when there is no ambiguity: NormPAL -> PAL, >SourceCOMPOSITE -> Composite, and so on. > >8) Replacing SelectSource() method by an integer property named Source, that >combines Source and Norm arguments. Something like: > >MyVideoDevice.Source = VideoDevice.PAL + VideoDevice.Composite > >You may have to change the value of the constants to do that. > >9) I have an article in french Linux magazine that explains how to capture >image from IEEE 1394 device. But they use a specific API... Can v4l use IEEE >1394 devices ? > >10) Don't use GB.ReturnNewString("", 0); - berk! Just use GB.ReturnNull(); > >11) Instead of using GB.ReturnNewString(str, 0);, use >GB.ReturnNewZeroString(str); > >Regards, > > > From danielcampos at ...45... Sun Jul 3 13:00:23 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sun, 03 Jul 2005 13:00:23 +0200 Subject: [Gambas-devel] gb.v4l update In-Reply-To: <200507012342.52918.gambas@...1...> References: <42C2BDE5.9080608@...45...> <200507012342.52918.gambas@...1...> Message-ID: <42C7C547.2030908@...45...> > >9) I have an article in french Linux magazine that explains how to capture >image from IEEE 1394 device. But they use a specific API... Can v4l use IEEE >1394 devices ? > > > > > V4L is an standard to receive images from a Webcam or TV Card, but it does not specify anything about the physical connection between the device and the PC, that is, you can receive images from the device if you have a driver for that device, and the driver controls the connection: USB, PCI, Ethernet Web Cameras... If there's any driver to get images from a IEEE 1394 device that supports the v4l standard you'll be able to do it, but I have not any information about that :-(. Regards, D. Campos From danielcampos at ...45... Sun Jul 3 17:12:44 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sun, 03 Jul 2005 17:12:44 +0200 Subject: [Gambas-devel] gb.v4l update Message-ID: <42C8006C.2010607@...45...> OK: http://gambas.gnulinex.org/v4l All changes proposed by Beno?t where added to the gb.v4l component. Now the "VideoDevice" class inherits stream, so you can access to the current frame using the common stream methods. The VideoDev object keeps a buffer of one frame (in ppm format), you can: -> Know the length of the frame (in bytes) with Lof(), -> Move your position in the frame with SEEK, and know the current position with Seek(), -> Know if you're at the end of the stream with Eof() -> Read data with READ -> Discard current frame and read next frame with FLUSH You can get a frame reading the Data property as a Byte array, too. The "MyWebCam" example has been updated too, so you can understand the changes in the interface. Regards, D. Campos From gambas at ...1... Sun Jul 3 19:32:38 2005 From: gambas at ...1... (Benoit Minisini) Date: Sun, 3 Jul 2005 19:32:38 +0200 Subject: [Gambas-devel] gb.v4l update In-Reply-To: <42C8006C.2010607@...45...> References: <42C8006C.2010607@...45...> Message-ID: <200507031932.38359.gambas@...1...> On Sunday 03 July 2005 17:12, Daniel Campos wrote: > OK: > > http://gambas.gnulinex.org/v4l > > All changes proposed by Beno?t where added to the gb.v4l component. > > Now the "VideoDevice" class inherits stream, so you can access to the > current > frame using the common stream methods. The VideoDev object keeps a buffer > of one frame (in ppm format), you can: > > -> Know the length of the frame (in bytes) with Lof(), > -> Move your position in the frame with SEEK, and know the current > position with Seek(), > -> Know if you're at the end of the stream with Eof() > -> Read data with READ > -> Discard current frame and read next frame with FLUSH > > You can get a frame reading the Data property as a Byte array, too. > > The "MyWebCam" example has been updated too, so you can understand the > changes in the interface. > > > Regards, > > D. Campos > > Thanks Daniel! -- Benoit Minisini mailto:gambas at ...1... From lordheavy at ...141... Tue Jul 5 14:40:43 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Tue, 05 Jul 2005 14:40:43 +0200 Subject: [Gambas-devel] new released of sdl component ... Message-ID: <42CA7FCB.7050201@...141...> It's available here : http://gamebas.tuxfamily.org/download/gambas2-gb.sdl-050705-1.9.10.tar.gz Changelog: Sound component * Now fadeIn and FadeOut are available with music playing (sound.c) Image Component * All key constants are now in keyCode virtual class (key.c key.h) * New property key.Code will contain key pressed/released inside keyPressed/keyReleased event (key.c key.h) * Some Events for screen are available : Refresh, Close, GotFocus, LostFocus, Enter, Leave, MouseDown, MouseUp, MouseMove. KeyPressed, KeyReleased. Refresh and Close can be canceled (main.c main.h event.c event.h screen.c screen.h) * Now Fps are available from Screen.GetFramerate property, screen.Refresh doesn't Return Fps anymore (screen.c) * Move driverinfo init from main to driver (main.c driver.c driver.h) * Move all screen inits/exits from main to screen (main.c main.h screen.c screen.h) Have fun ! -- Laurent Carlier jabber : LordHeavy at ...298... From lordheavy at ...141... Wed Jul 6 16:00:06 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Wed, 06 Jul 2005 16:00:06 +0200 Subject: [Gambas-devel] sdl component bugfix release ... Message-ID: <42CBE3E6.2020307@...141...> I've found a bug with surface convertion so an update version is available here : http://gamebas.tuxfamily.org/download/ And an exemple (sdlmove "uptodate" with comments) -- Laurent Carlier jabber : LordHeavy at ...298... -------------- next part -------------- A non-text attachment was scrubbed... Name: sdlmove-0.0.1.tar.gz Type: application/x-gzip Size: 2530 bytes Desc: not available URL: From gambas at ...1... Wed Jul 6 19:24:19 2005 From: gambas at ...1... (Benoit Minisini) Date: Wed, 6 Jul 2005 19:24:19 +0200 Subject: [Gambas-devel] Release of gambas2 1.9.11 Message-ID: <200507061924.19734.gambas@...1...> Hi, Here is a big important release of the development version. Many new syntaxes and features were added to the compiler and the interpreter, the bytecode has changes, and so ALL PROJECTS MUST BE *ENTIRELY* RECOMPILED! I apologize for the inconvenience, but I think it's worth it :-) Here are the changes, with some explanations when needed: * You can instanciate objects at variable declaration with any expression now. Now you can type things like: DIM Matrix AS NEW Float[3, 3] PUBLIC MyObject AS NEW MyObject(GetParam(), Len(TheName)) ... * Functions can take a variable number of arguments now. Just use three points at the end of the argument list: SUB MyPrintf(sFormat AS String, ...) ... END Use the Param class to access additional arguments (see below). * You can use the '_unknown' special method now. Declare it this way: PUBLIC FUNCTION _unknown(...) AS Variant ... END Use the Param class to get the name of the called method. *A new syntax 'IF ... AND IF ...'. The second test is not done if the first is false. You can type now: IF Test1 AND IF Test2 THEN ... The Test2 is never evaluated if Test1 is FALSE, contrary to 'IF Test1 AND Test2' You can use more than two AND IF of course. * A new syntax 'IF ... OR IF ...'. The second test is not done if the first is true. The same syntax than previously, but with OR. * A new syntax 'CASE ... TO ...', to test the match to an interval of values. You can type now: SELECT Value CASE 1 TO 10 PRINT "1 TO 10" CASE 11 TO 20, 25 PRINT "11 TO 20 or 25" END SELECT * New C-style assignment operators: +=, -=, *=, /=, \=, &=, &/=. Now you can type: i += 1 instead of i = i + 1 And so on... * The DIRECT keyword has been removed. Now use 'OPEN ... FOR INPUT | OUTPUT' to open a file in buffered mode and 'OPEN ... FOR READ | WRITE' to open a file in direct mode. * The BIG and LITTLE keywords have been removed. Now use the new ByteOrder property of the Strem class. * A new syntax for EXEC or SHELL: 'EXEC|SHELL ... TO aString' executes the command, waits for its termination, and returns the process output to the specified string. The syntax defined in 1.9.10 has been removed. * WAIT is not implicite anymore in the EXEC or SHELL command. * Now ambiguous expressions are detected, and raise an error. * A new operator '==', to compare strings by ignoring their case. Interpreter PRINT "Gambas" == "gambas" returns TRUE * System.Home was definitely replaced by User.Home. * System.User was definitely replaced by User.Name. * The class ".Stream" has been renamed as "Stream". Be careful component developers! :-) * A new class, Param, to get extra arguments, and information about a call to the _unknown method. Param.Count returns the number of extra arguments. Param[i] returns the i-th argument as a variant. Param.Unknown returns the name of the unknown method. * A new property, Stream.ByteOrder, to set the byte order of a stream. Now, instead of using BIG or LITTLE with OPEN, you must write: hStream.ByteOrder = gb.LittleEndian / gb.BigEndian. Note that you can do that for any type of stream! * A new property, User.Id, returns the user id of the current process. * Application.Args is now enumerable. Now you can type: FOR EACH sArg in Application.Args ... NEXT * Formatting currency is possible now, by specifying gb.Currency (or gb.International to use the international currency symbol) as second argument of Format$(). In France: PRINT Format$(10000.50, gb.Currency) 10 000,50 ? PRINT Format$(10000.50, gb.International) 10 000,50 FRF In US: (tell me if I am wrong) PRINT Format$(10000.50, gb.Currency) $ 10,000.50 PRINT Format$(10000.50, gb.International) USD 10,000.50 * New mathematical functions: Exp2, Exp10, Log2, Cbr, Expm, Logm, Atan2, Ang, Hyp, Mag. Exp2(x) = 2 ^ x Exp10(x) = 10 ^ x Log2(x) = Log(x) / Log(2) Cbr(x) = x ^ (1/3) Expm(x) = Exp(x) - 1 with good precision when x -> 1 Logp(x) = Log(x + 1) with good precision when x -> 0 Atan2(x, y) = Atan(y / x) Ang(x, y) = Atan(x / y) Hyp(x, y) = Sqr(x^2 + y^2) Mag(x, y) = Hyp(x, y) * New conversion functions: DConv$(), for converting from system charset to desktop charset, and SConv$() for doing the contrary. * New date functions: DateAdd() and DateDiff(). They were backported from the vb component and the syntax was modified. DateAdd(Date AS Date, Period AS Integer, Interval AS Integer) adds to Date a specified number (Interval) of Period. Period can be: - gb.Second - gb.Minute - gb.Hour - gb.Day - gb.WeekDay - gb.Week - gb.Month - gb.Quarter - gb.Year DateDiff(Date1 AS Date, Date2 AS Date, Period AS Integer) returns the number of Period that leads from Date1 to Date2, Date2 being excluded. * A new function, RDir(), to read the contents of a directory recursively. It has the same syntax than Dir(). Try it! * A new storage class, List. Here is a little chart for comparing Array, List and Collection. Array Collection List Indexed by integer string integer Inserting can be slow (1) slow immediate Deleting can be slow (1) slow immediate Accessing immediate fast can be slow (2) (1) The array is shrinked or expanded as needed, every 16 insertion or deletion. (2) The list of elements must be traversed. Accessing the next or previous element is immediate. * Adding or substracting little integers is now optimized: about 5 times faster. * Calling functions with a fixed number of arguments, without needing to convert the arguments is optimized: about 4 times faster. * A new drawing method in the QT component, Draw.Zoom, for drawing a zoomed version of an Image. * A new video capture component named 'gb.v4l' made by Daniel Campos. It is based on Video4Linux. * The CGI Gambas program that manages the new documentation is distributed with the source so that people can translate it. That's all :-) Please read the changelog for a list of bug fixes and other changes. ENJOY IT! -- Benoit Minisini mailto:gambas at ...1... From oreip at ...1... Wed Jul 6 20:04:46 2005 From: oreip at ...1... (PV) Date: Wed, 06 Jul 2005 20:04:46 +0200 Subject: [Gambas-devel] Release of gambas2 1.9.11 In-Reply-To: <200507061924.19734.gambas@...1...> References: <200507061924.19734.gambas@...1...> Message-ID: <42CC1D3E.6060102@...1...> On 06/07/2005 19:24, Benoit Minisini wrote: > Hi, > > Here is a big important release of the development version. [snip] WOOOWWW Benoit, that's a whole lot of new and improved features!!! Thanks a lot! Ciao, Piero From mauriziopz at ...176... Fri Jul 8 16:28:49 2005 From: mauriziopz at ...176... (Maurizio Pozzobon) Date: Fri, 8 Jul 2005 16:28:49 +0200 Subject: [Gambas-devel] Italian translations Message-ID: Translations of last gambas2 in Italian -- Maurizio -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gambas2-it-0.99.po Type: text/x-gettext-translation Size: 62494 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gambas-database-manager-it-0.99.po Type: text/x-gettext-translation Size: 17677 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: doc.cgi-it-0.0.po Type: text/x-gettext-translation Size: 6460 bytes Desc: not available URL: From gambas at ...1... Fri Jul 8 16:35:08 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 8 Jul 2005 16:35:08 +0200 Subject: [Gambas-devel] sdl component bugfix release ... In-Reply-To: <42CBE3E6.2020307@...141...> References: <42CBE3E6.2020307@...141...> Message-ID: <200507081635.08826.gambas@...1...> On Wednesday 06 July 2005 16:00, Laurent Carlier wrote: > I've found a bug with surface convertion so an update version is > available here : > http://gamebas.tuxfamily.org/download/ > > And an exemple (sdlmove "uptodate" with comments) Aargh. Why did you rename the Key class to 'KeyCode' ? Can you rename it back so that the syntax is the same with the Qt component ? I tried the sdlmove example too, and it is slow, but I didn't look in the code to understand why. Regards, -- Benoit Minisini mailto:gambas at ...1... From lordheavy at ...141... Fri Jul 8 17:00:04 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Fri, 08 Jul 2005 17:00:04 +0200 Subject: [Gambas-devel] sdl component bugfix release ... In-Reply-To: <200507081635.08826.gambas@...1...> References: <42CBE3E6.2020307@...141...> <200507081635.08826.gambas@...1...> Message-ID: <42CE94F4.3080109@...141...> Benoit Minisini a ?crit : > > Aargh. Why did you rename the Key class to 'KeyCode' ? Can you rename it back > so that the syntax is the same with the Qt component ? Because of the huge quantity of keyboard key name ! It was the mess in the key class, a mix of key methods/properties and key symbol :) And it's really easier to use code completion now ... And SDL as got a lot of key symbols instead of QT component ! I guess now it's a bit clear (parhaps some confusions with key.code and keyCode perhaps), but i can go backward, there's no problems :) > > I tried the sdlmove example too, and it is slow, but I didn't look in the code > to understand why. > This must come from all these "modern" CPU with speedstep feature and the nice STOP EVENT feature (no it's not a bug :) ) with refresh event ! Try to remove this line : IF moveX = 0 AND moveY = 0 THEN STOP EVENT I guess you should have a better spped (but more cpu load :p) > Regards, > Regards, -- Laurent Carlier jabber : LordHeavy at ...298... From lordheavy at ...141... Fri Jul 8 17:26:32 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Fri, 08 Jul 2005 17:26:32 +0200 Subject: [Gambas-devel] sdl component bugfix release ... In-Reply-To: <200507081635.08826.gambas@...1...> References: <42CBE3E6.2020307@...141...> <200507081635.08826.gambas@...1...> Message-ID: <42CE9B28.5010605@...141...> Benoit Minisini a ?crit : > > I tried the sdlmove example too, and it is slow, but I didn't look in the code > to understand why. > SDLmove with small updates (better key handling and comments) -- Laurent Carlier jabber : LordHeavy at ...298... -------------- next part -------------- A non-text attachment was scrubbed... Name: sdlmove-0.0.1.tar.gz Type: application/x-gzip Size: 2646 bytes Desc: not available URL: From gambasfr at ...4... Fri Jul 8 23:23:27 2005 From: gambasfr at ...4... (fabien) Date: Fri, 8 Jul 2005 23:23:27 +0200 Subject: [Gambas-devel] Release of gambas2 1.9.11 In-Reply-To: <200507061924.19734.gambas@...1...> References: <200507061924.19734.gambas@...1...> Message-ID: <200507082323.27442.gambasfr@...4...> Le Mercredi 06 Juillet 2005 19:24, Benoit Minisini a ?crit?: > Param.Count returns the number of extra arguments. > Param[i] returns the i-th argument as a variant. > Param.Unknown returns the name of the unknown method. hem Param.Unknown does'nt exist ... in fact it's : Param.Name Regards, Fabien From danielcampos at ...45... Sat Jul 9 00:57:05 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sat, 09 Jul 2005 00:57:05 +0200 Subject: [Gambas-devel] ReplaceSyntax updated Message-ID: <42CF04C1.1030704@...45...> http://www.binara.com/gambas-wiki/bin/view/Gambas/ChangeProcessSyntax Regards, D. Campos From dmuell at ...78... Sun Jul 10 16:51:01 2005 From: dmuell at ...78... (Dirk Mueller) Date: Sun, 10 Jul 2005 16:51:01 +0200 Subject: [Gambas-devel] [PATCH] don't link buildroot Message-ID: <200507101651.03340.dmuell@...78...> Hi, there is an error in installation of the gambas2 symlink, which references the $(DESTDIR), and is therefore actually stale after buildroot installation. Below the patch to fix it (against 1.9.11), please apply. -------------- next part -------------- A non-text attachment was scrubbed... Name: fix_gambas2_install.patch Type: text/x-diff Size: 617 bytes Desc: not available URL: From lordheavy at ...141... Sun Jul 10 19:16:02 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Sun, 10 Jul 2005 19:16:02 +0200 Subject: [Gambas-devel] The taste of openGL ... Message-ID: <42D157D2.8090602@...141...> I've done some test with opengl with sdl, here is a short demo. It's not usable, it was only done to see if it can be done ;p Can find it here : http://gamebas.tuxfamily.org/download/ component : gb.sdl.opengl testfile : opengltest :) Have fun, -- Laurent Carlier jabber : LordHeavy at ...298... -------------- next part -------------- A non-text attachment was scrubbed... Name: opengl.jpg Type: image/jpeg Size: 103874 bytes Desc: not available URL: From gambas at ...1... Mon Jul 11 20:19:29 2005 From: gambas at ...1... (Benoit Minisini) Date: Mon, 11 Jul 2005 20:19:29 +0200 Subject: [Gambas-devel] [PATCH] don't link buildroot In-Reply-To: <200507101651.03340.dmuell@...78...> References: <200507101651.03340.dmuell@...78...> Message-ID: <200507112019.29920.gambas@...1...> On Sunday 10 July 2005 16:51, Dirk Mueller wrote: > Hi, > > there is an error in installation of the gambas2 symlink, which references > the $(DESTDIR), and is therefore actually stale after buildroot > installation. > > Below the patch to fix it (against 1.9.11), please apply. Can you explain me what the problem is exactly ? If I remember, I added DESTDIR so that rpmbuild can build the package in a false root. Thanks in advance, Regards, -- Benoit Minisini mailto:gambas at ...1... From 5domenico at ...324... Tue Jul 12 16:14:08 2005 From: 5domenico at ...324... (Vanessa J. Smith) Date: Tue, 12 Jul 2005 14:14:08 +0000 Subject: [Gambas-devel] =?iso-8859-1?B?UG9wdWxhciBzb2Z0IC0gYm90dG9tIHByaWNlcw==?= Message-ID: Get all the popular software possible for prices substantially lower than in stores! We sell software 2-6 times cheaper than retail price. Just a few examples: $79.95 Windows XP Professional (Including: Service Pack 2) $89.95 Microsoft Office 2003 Professional / $79.95 Office XP Professional $99.95 Adobe Photoshop 8.0/CS (Including: ImageReady CS) $179.95 Macromedia Studio MX 2004 (Including: Dreamweaver MX + Flash MX + Fireworks MX) $79.95 Adobe Acrobat 6.0 Professional $69.95 MS Visio 2003 Professional Special Offers: $89.95 Windows XP Professional + Office XP Professional $149.95 Adobe Creative Suite Premium (5 CD) $129.95 Adobe Photoshop 7 + Adobe Premiere 7 + Adobe Illustrator 10 All main products from Microsoft, Adobe, Macromedia, Corel, etc. And lots more... To view full list of products go: http://www.soft-paradise.com Best, Vanessa J. Smith _____________________________________________________ To stop further mailings, go here _____________________________________________________ -------------- next part -------------- An HTML attachment was scrubbed... URL: From gambas at ...1... Thu Jul 14 20:07:46 2005 From: gambas at ...1... (Benoit Minisini) Date: Thu, 14 Jul 2005 20:07:46 +0200 Subject: [Gambas-devel] Release of gambas2 1.9.12 Message-ID: <200507142007.46764.gambas@...1...> Hi, Good news: I released a new version. Bad news: I modified the bytecode again, so you have to recompile all your projects :-) Here is the changelog: --8<------------------------------------------------------------------------------ * There is a new component, gb.crypt, that allows to use the crypt() Gnu C library function. DATABASE MANAGER * BUG: Errors during table creation or modification are now correctly handled. * BUG: Fields names are now case unsensitive in the table edition window. * BUG: Deleting fields that are used in an index is not allowed anymore. * BUG: Deleting fields in the index tableview now works as expected. EXAMPLES * BUG: In the Notepad example, the 'modified' flag now displays correctly in the window title. COMPILER * BUG: Fixed some parsing errors. * BUG: You can use event, label and property names in a class context now. * Now the DIM keyword is mandatory when declaring local variables. * BUG: You can effectively instanciate objects with any expression at local variable declaration. INTERPRETER * BUG: Format$() has been fixed, and re-fixed again. * Split() now gets a new optional boolean parameter to tell him to remove void elements from the returned array. * New methods to test character type: IsAscii, IsLetter, IsLower, IsUpper, IsDigit, IsHexa, IsSpace, IsBlank, IsPunct. * The stream argument of Eof() and Lof() is now optional. If it is not specified, then the standard input is used. * BUG: You should be able to retry any code that just raised an error in the debugger without crashing now. * BUG: Fixed a problem in the optimization of function calls. * BUG: Fixed the Round() function. Now Round(0.5) should returns 1 and not 0 anymore. * BUG: The comparison functions should work correctly now. 10 * (10 > 0) returns -10 again :-) * BUG: Array contents can be written to any stream now, not just files. QT COMPONENT * A new property, Application.Embedder, that allows you to embed the next opened window in an external window whose X11 handle is specified there. * The State property of the Window class has been replaced by three new properties: Minimized, Maximized and FullScreen. These properties are completely independant. * A new property, Window.Picture, that stores the window mask. * The Mask property now is boolean, and just tells if the Picture property must be used to mask the window. * A new control, Embedder, that allows to embed top-level windows of external applications. * Each window now has X11 window manager class set to the project name, and X11 window manager role set to its class name. * BUG: Unminimizing windows now always give them the focus. * BUG: Fix a potential crash is menu management. * BUG: If a modal window is already displayed, calling Show() on another window calls ShowModal() instead. SDL COMPONENT * SDL component has been updated. MYSQL DRIVER * BUG: Creating indexes on text fields with no size limit is not case sensitive anymore. --8<------------------------------------------------------------------------------ Enjoy it, -- Benoit Minisini mailto:gambas at ...1... From gambas at ...1... Thu Jul 14 21:32:15 2005 From: gambas at ...1... (Benoit Minisini) Date: Thu, 14 Jul 2005 21:32:15 +0200 Subject: [Gambas-devel] Designing good APIs Message-ID: <200507142132.15708.gambas@...1...> I suggest you (especially the Gambas component developers) read this article from Mathias Ettrich about the designing of APIs: http://doc.trolltech.com/qq/qq13-apis.html I agreed about all I read, even if I didn't follow all its recommendations in Gambas :-) -- Benoit Minisini mailto:gambas at ...1... From lordheavy at ...141... Fri Jul 15 01:17:10 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Fri, 15 Jul 2005 01:17:10 +0200 Subject: [Gambas-devel] Designing good APIs In-Reply-To: <200507142132.15708.gambas@...1...> References: <200507142132.15708.gambas@...1...> Message-ID: <42D6F276.5050706@...141...> Benoit Minisini a ?crit : > I suggest you (especially the Gambas component developers) read this article > from Mathias Ettrich about the designing of APIs: > > http://doc.trolltech.com/qq/qq13-apis.html > > I agreed about all I read, even if I didn't follow all its recommendations in > Gambas :-) > Thanks ! Really usefull and interesting ! -- Laurent Carlier jabber : LordHeavy at ...298... From gambas at ...1... Fri Jul 15 20:50:16 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 15 Jul 2005 20:50:16 +0200 Subject: [Gambas-devel] Designing good APIs In-Reply-To: <42D6F276.5050706@...141...> References: <200507142132.15708.gambas@...1...> <42D6F276.5050706@...141...> Message-ID: <200507152050.16612.gambas@...1...> On Friday 15 July 2005 01:17, Laurent Carlier wrote: > Benoit Minisini a ?crit : > > I suggest you (especially the Gambas component developers) read this > > article from Mathias Ettrich about the designing of APIs: > > > > http://doc.trolltech.com/qq/qq13-apis.html > > > > I agreed about all I read, even if I didn't follow all its > > recommendations in Gambas :-) > > Thanks ! > Really usefull and interesting ! Here is something that may interest you and others: I made a new API in gambas named GB.RealFileName(). It does the same thing as GB.FileName() except that if the file is located inside the project executable, then a temporary copy is made, and the path to this copy is returned. This way, the SDL component can load fonts and play musics that are located in the project transparently. And I could make a functional executable of Galaxia :-) Regards, -- Benoit Minisini mailto:gambas at ...1... From lordheavy at ...141... Fri Jul 15 21:24:58 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Fri, 15 Jul 2005 21:24:58 +0200 Subject: [Gambas-devel] Designing good APIs In-Reply-To: <200507152050.16612.gambas@...1...> References: <200507142132.15708.gambas@...1...> <42D6F276.5050706@...141...> <200507152050.16612.gambas@...1...> Message-ID: <42D80D8A.5010504@...141...> Benoit Minisini a ?crit : > > Here is something that may interest you and others: > > I made a new API in gambas named GB.RealFileName(). It does the same thing as > GB.FileName() except that if the file is located inside the project > executable, then a temporary copy is made, and the path to this copy is > returned. > > This way, the SDL component can load fonts and play musics that are located in > the project transparently. And I could make a functional executable of > Galaxia :-) > > Regards, > Yes it can be useful :) (in short term) Currently, it isn't possible to add font as part of executable because of buggy SDL_rwops/SDL_ttf. There's a patch on the SDL ML, but hadn't test it. Perhaps it fix the issue :) Must wait the next release (1.2.9) Perhaps in the next IDE add some "path ability", a data dir -> files will be store in ($datadir), ... if installed with autotools (at compilation time ?). -- Laurent Carlier jabber : LordHeavy at ...298... From lordheavy at ...141... Fri Jul 15 21:41:38 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Fri, 15 Jul 2005 21:41:38 +0200 Subject: [Gambas-devel] Designing good APIs In-Reply-To: <200507152050.16612.gambas@...1...> References: <200507142132.15708.gambas@...1...> <42D6F276.5050706@...141...> <200507152050.16612.gambas@...1...> Message-ID: <42D81172.3010805@...141...> Benoit Minisini a ?crit : > > Here is something that may interest you and others: > > I made a new API in gambas named GB.RealFileName(). It does the same thing as > GB.FileName() except that if the file is located inside the project > executable, then a temporary copy is made, and the path to this copy is > returned. > > This way, the SDL component can load fonts and play musics that are located in > the project transparently. And I could make a functional executable of > Galaxia :-) > > Regards, > As always i've read too fast :( Yes, it can fix the problem of files as part of the binary ! Files are copy in $TEMP dir, so the component/projet can access it without problems :) Great idea and nice fix ! -- Laurent Carlier jabber : LordHeavy at ...298... From gambasfr at ...4... Fri Jul 15 22:49:19 2005 From: gambasfr at ...4... (fabien) Date: Fri, 15 Jul 2005 22:49:19 +0200 Subject: [Gambas-devel] Correcting of the gambas Clock exemple Message-ID: <200507152249.19268.gambasfr@...4...> The mask property of gambas-qt is now a boolean and form have a new property Picture, so this is a correction of this exemple Fabien -------------- next part -------------- A non-text attachment was scrubbed... Name: Clock-0.0.20.tar.gz Type: application/x-tgz Size: 246801 bytes Desc: not available URL: From sourceforge-raindog2 at ...19... Sat Jul 16 06:54:11 2005 From: sourceforge-raindog2 at ...19... (Rob) Date: Sat, 16 Jul 2005 00:54:11 -0400 Subject: [Gambas-devel] Correcting of the gambas Clock exemple In-Reply-To: <200507152249.19268.gambasfr@...4...> References: <200507152249.19268.gambasfr@...4...> Message-ID: <200507160054.11167.sourceforge-raindog2@...19...> On Friday 15 July 2005 16:49, fabien wrote: > The mask property of gambas-qt is now a boolean and form have a new > property Picture, Arrrgh! So we can no longer have a mask that's independent of a form's background picture? Is that a new limitation of Qt or just Gambas? Rob From sourceforge-raindog2 at ...19... Sat Jul 16 07:14:21 2005 From: sourceforge-raindog2 at ...19... (Rob) Date: Sat, 16 Jul 2005 01:14:21 -0400 Subject: [Gambas-user] Re: [Gambas-devel] Correcting of the gambas Clock exemple In-Reply-To: <200507160054.11167.sourceforge-raindog2@...19...> References: <200507152249.19268.gambasfr@...4...> <200507160054.11167.sourceforge-raindog2@...19...> Message-ID: <200507160114.21077.sourceforge-raindog2@...19...> On Saturday 16 July 2005 00:54, Rob wrote: > Arrrgh! So we can no longer have a mask that's independent of a > form's background picture? ...never mind, I just realized I've been putting a PictureBox in the background of all my forms that needed background pictures. Rob From gambasfr at ...4... Sat Jul 16 18:58:09 2005 From: gambasfr at ...4... (Fabien Bodard) Date: Sat, 16 Jul 2005 18:58:09 +0200 Subject: [Gambas-user] Re: [Gambas-devel] Correcting of the gambas Clock exemple In-Reply-To: <200507160114.21077.sourceforge-raindog2@...19...> References: <200507152249.19268.gambasfr@...4...> <200507160054.11167.sourceforge-raindog2@...19...> <200507160114.21077.sourceforge-raindog2@...19...> Message-ID: <200507161858.09837.gambasfr@...4...> Le Samedi 16 Juillet 2005 07:14, Rob a ?crit?: > On Saturday 16 July 2005 00:54, Rob wrote: > > Arrrgh! So we can no longer have a mask that's independent of a > > form's background picture? > > ...never mind, I just realized I've been putting a PictureBox in the > background of all my forms that needed background pictures. > > Rob yes ... in first version we need to pass a picture to the mask property... i don't know why Benoit want this change ? Fabien > > > > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click > _______________________________________________ > Gambas-devel mailing list > Gambas-devel at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-devel From gambas at ...1... Sun Jul 17 19:41:11 2005 From: gambas at ...1... (Benoit Minisini) Date: Sun, 17 Jul 2005 19:41:11 +0200 Subject: [Gambas-user] Re: [Gambas-devel] Correcting of the gambas Clock exemple In-Reply-To: <200507161858.09837.gambasfr@...4...> References: <200507152249.19268.gambasfr@...4...> <200507160114.21077.sourceforge-raindog2@...19...> <200507161858.09837.gambasfr@...4...> Message-ID: <200507171941.12095.gambas@...1...> On Saturday 16 July 2005 18:58, Fabien Bodard wrote: > Le Samedi 16 Juillet 2005 07:14, Rob a ?crit?: > > On Saturday 16 July 2005 00:54, Rob wrote: > > > Arrrgh! So we can no longer have a mask that's independent of a > > > form's background picture? > > > > ...never mind, I just realized I've been putting a PictureBox in the > > background of all my forms that needed background pictures. > > > > Rob > > yes ... in first version we need to pass a picture to the mask property... > i don't know why Benoit want this change ? > > Fabien > I just try things :-) It may change back in the future, I don't know :-) I wanted the possibility to put a picture in a form without havng a mask. -- Benoit Minisini mailto:gambas at ...1... From danielcampos at ...45... Sun Jul 17 20:16:24 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sun, 17 Jul 2005 20:16:24 +0200 Subject: [Gambas-user] Re: [Gambas-devel] Correcting of the gambas Clock exemple In-Reply-To: <200507171941.12095.gambas@...1...> References: <200507152249.19268.gambasfr@...4...> <200507160114.21077.sourceforge-raindog2@...19...> <200507161858.09837.gambasfr@...4...> <200507171941.12095.gambas@...1...> Message-ID: <42DAA078.5030002@...45...> > > > >I just try things :-) > >It may change back in the future, I don't know :-) > >I wanted the possibility to put a picture in a form without havng a mask. > > It is possible with GTK+, and I think is a good idea, a Picture that can be just a background for the Form, or a mask. However this version (in gb.qt), seems to show the Picture only if "Mask" is TRUE. Is a bug, or it is not implemented yet? Regards, D. Campos From gambas at ...1... Sun Jul 17 20:24:58 2005 From: gambas at ...1... (Benoit Minisini) Date: Sun, 17 Jul 2005 20:24:58 +0200 Subject: [Gambas-user] Re: [Gambas-devel] Correcting of the gambas Clock exemple In-Reply-To: <42DAA078.5030002@...45...> References: <200507152249.19268.gambasfr@...4...> <200507171941.12095.gambas@...1...> <42DAA078.5030002@...45...> Message-ID: <200507172024.58354.gambas@...1...> On Sunday 17 July 2005 20:16, Daniel Campos wrote: > >I just try things :-) > > > >It may change back in the future, I don't know :-) > > > >I wanted the possibility to put a picture in a form without havng a mask. > > It is possible with GTK+, and I think is a good idea, a Picture that can > be just a background > for the Form, or a mask. However this version (in gb.qt), seems to show > the Picture only > if "Mask" is TRUE. Is a bug, or it is not implemented yet? > > Regards, > > D. Campos > Not implemented yet! -- Benoit Minisini mailto:gambas at ...1... From mauriziopz at ...176... Wed Jul 20 12:53:43 2005 From: mauriziopz at ...176... (Maurizio Pozzobon) Date: Wed, 20 Jul 2005 12:53:43 +0200 Subject: [Gambas-devel] translations 1.9.11 Message-ID: Italian translation for 1.9.11 -- Maurizio -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: doc.cgi-it-0.0.po Type: text/x-gettext-translation Size: 6458 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gambas2-it-0.99.po Type: text/x-gettext-translation Size: 62480 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gambas-database-manager-it-0.99.po Type: text/x-gettext-translation Size: 17667 bytes Desc: not available URL: From stefanopalmeri at ...29... Wed Jul 20 20:32:38 2005 From: stefanopalmeri at ...29... (Stefano Palmeri) Date: Wed, 20 Jul 2005 20:32:38 +0200 Subject: [Gambas-devel] bug in message.warning ? Message-ID: <200507202032.38200.stefanopalmeri@...29...> Hi all. I've found this dangerous behaviour in message.warning. The example application I've attached has two buttons. With the first one you can create a temp directory and with the second you can delete the temp dir. Well. When you click the remove button a message.warning window pops up. The application SELECTs the user's choice. HERE is the DANGER! If you accidentally close the message.warning window instead of using the buttons, the application thinks you have clicked the second button and removes the directory. So in a message.warning window when you close the window you act as if you clicked the last indexed button. I've read the Gambas doc and I haven't found an explanation for that. Is it a default feature, I mean "closing window" = "last button clicking" ? I think that disabling the window closing on messages windows should be safer. I'm using Gambas 1.0.7 Saluti, Stefano Palmeri I'm really new with Gambas and I've never used Vb, so I don't know -------------- next part -------------- A non-text attachment was scrubbed... Name: bug-message-warning-0.0.1.tar.gz Type: application/x-tgz Size: 773 bytes Desc: not available URL: From danielcampos at ...45... Fri Jul 22 11:07:11 2005 From: danielcampos at ...45... (Daniel Campos) Date: Fri, 22 Jul 2005 11:07:11 +0200 Subject: [Gambas-devel] gb.gtk / ReplaceSyntax Message-ID: <42E0B73F.6090301@...45...> Hi: 1) Here's gb.gtk 050722 "yesterday was my birthday" : * FIXED: "Show" calls to "ShowModal" if current Window is modal. * NEW: 8 bytes less wasted per container. * FIXED: "Frame" children position fixed. * FIXED: "TabStrip" can display accelerators in labels. BackGround and ForeGround properties fixed. Some less memory wasted per TabStrip widget. * NEW: "Window" Maximized, Minimized and FullScreen properties are working. State removed. * FIXED: "Dialog" class now implements Dialog.paths and OpenFile(Multi) to be compatible with the gb.qt component. * FIXED: "Window" now has two related properties "Mask" and "Picture" in order to be compatible with the gb.qt implementation. Masking works correctly now. Using a Picture with Mask=FALSE just uses the Picture as background for the Window. * FIXED: "Plugger" control now is called "Embedder" in order to be compatible with the gb.qt implementation. Methods, Events and Properties names changed too. * NEW: "Application.Embedder" added to be compatible with gb.qt implementation. Beno?t, you can find a function there for you (placed at gtrayicon.cpp), called XTray_RequestDock: void XTray_RequestDock(Display *xdisplay,Window icon) You just need to create a window able to work with the XEMBED protocol, (I used GtkPlug, I think you can use QtXEmbedClient window ), and after it is realized, pass the default display and the native window id of that Window to the function, to embed that window in the System Tray. I suppose you will add a QImage inside the QTXembedClient widget to show the icon. The rest of code (event, properties, methods) does not need to be shared, as the widget works exactly as if it were placed in a normal window. 2) I've updated the ReplaceSyntax miniprogram to help translating source code to the Gambas-1.9.12 version: http://www.binara.com/gambas-wiki/bin/view/Gambas/ChangeProcessSyntax Regards, D. Campos From danielcampos at ...45... Sun Jul 24 12:11:07 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sun, 24 Jul 2005 12:11:07 +0200 Subject: [Gambas-devel] gb.gtk 050724 Message-ID: <42E3693B.6040504@...45...> Hi: I've updated the gb.gtk version at http://gambas.gnulinex.org due to a serious bug when trying to show PNG's with transparences. This is the full changelog: 050724 - Alpha * NEW: "Picture.Copy" implemented. * FIXED: Pictures now display correctly PNG transparences. * FIXED: "Picture" class redesigned for better performance and less memory usage. * NEW: "Image" _get, _put, copy and replace methods implemented. * FIXED: 4 bytes less wasted per "PictureBox". * FIXED: 4 bytes less wasted per "ComboBox". * FIXED: Internal code reorganization and cleaning. Regards, D. Campos From danielcampos at ...45... Sun Jul 24 12:12:32 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sun, 24 Jul 2005 12:12:32 +0200 Subject: [Gambas-devel] Oops! Message-ID: <42E36990.6050205@...45...> The right path for gb.gtk is: http://gambas.gnulinex.org/gtk Sorry D. Campos From gambas at ...1... Sun Jul 24 18:26:04 2005 From: gambas at ...1... (Benoit Minisini) Date: Sun, 24 Jul 2005 18:26:04 +0200 Subject: [Gambas-devel] bug in message.warning ? In-Reply-To: <200507202032.38200.stefanopalmeri@...29...> References: <200507202032.38200.stefanopalmeri@...29...> Message-ID: <200507241826.04220.gambas@...1...> On Wednesday 20 July 2005 20:32, Stefano Palmeri wrote: > Hi all. > > I've found this dangerous behaviour in message.warning. > > The example application I've attached has two buttons. > With the first one you can create a temp directory and with > the second you can delete the temp dir. > Well. When you click the remove button a > message.warning window pops up. > The application SELECTs the user's choice. > > HERE is the DANGER! > > If you accidentally close the message.warning window instead of > using the buttons, the application thinks you have clicked > the second button and removes the directory. > > So in a message.warning window when you close the window > you act as if you clicked the last indexed button. > > I've read the Gambas doc and I haven't found an explanation for that. > Is it a default feature, I mean "closing window" = "last button clicking" ? > I think that disabling the window closing on messages windows > should be safer. > > I'm using Gambas 1.0.7 > > Saluti, > > Stefano Palmeri > > This is by design. Closing the message box is as if you clicked the right most button. I admit that is behaviour is a bit stupid... Maybe I should change it for the developmenet verison. As for the stable one, always please put your cancel button at the right of your message box. Regards, -- Benoit Minisini mailto:gambas at ...1... From gambas at ...1... Sun Jul 24 19:02:21 2005 From: gambas at ...1... (Benoit Minisini) Date: Sun, 24 Jul 2005 19:02:21 +0200 Subject: [Gambas-devel] Release of gambas 1.9.13 Message-ID: <200507241902.21919.gambas@...1...> Here is a new release of the development version. Many big changes there, some of them being experimental: * The source package structure has been redesigned a little, and now uses symbolic links so that size is reduced. * The configure script does not use $(ROOT) anymore, but only $(DESTDIR). Maybe making binary packages with rpmbuild is broken... * The IDE now stored control coordinates proportionally to the system font height. THIS IS EXPERIMENTAL, BE CAREFUL WITH YOUR PROJECTS! * Extern functions can be public. * The interpreter uses mmap() to load executables and components written in Gambas. * Each component can have a part written in C/C++ and a part written in Gambas. * Enumerable container classes now know when they are enumerated so that they can safely delete their elements. * Some new functions and instructions: DEBUG, ERROR, Week(), DFree(). * Some new syntaxes in File.Dir(), File.Ext(), File.Name() and File.BaseName(). * The TrayIcon class was implemented. * The OpenGL beta component was included. And many bug fixes of course... Please read the ChangeLog carefully before using this release! 1) The IDE storing proportional coordinates stuff is a way of having dialog boxes that adapt themselves to the user screen, by looking at the size of the font it uses. To convert a project to this feature, open it, open all forms, move all of them, and save the project back. The absolute coordinates are replaced by the scaled ones. BE CAREFUL! You may lose your projects if I made a bug, as the form files are modified. 2) There is a new iterator class named Enum that is used internally to implement the FOR EACH instruction. Try this code in older versions of Gambas: --8<--------------------------------------------- DIM cCol AS NEW Collection DIM iInd AS Integer dim sElt AS String FOR iInd = 1 TO 8 cCol[iInd] = Chr$(64 + iInd) NEXT FOR EACH sElt in cCol IF sElt = "E" THEN cCol.Clear NEXT --8<--------------------------------------------- If it doesn't crash, you are lucky, but try it with valgrind... This new iterator class allows the Collection class to deal with elements removing while being enumerated. In the example, the enumeration is stopped by the Clear method. Removing one element will make the enumeration jumps it. There is three new functions in the interpreter API for component developers that have enumerable classes whose elements can disappear without notice. I will write more about that when I will start filling the new documentation system with updated information on how to program components. 3) Now components can have a part written in gambas. To do that, just add a gambas project inside the 'src' sub-directory of the component, having the same name as the component. That's all :-) Note that components Makefile.am were modified. Now they all share the same base, located in the component.am file. This file is included in all component Makefile.am, and do all the stuff of installing the *.component file, compiling the gambas part of the component, and generating the information files for the IDE. Enjoy it! -- Benoit Minisini mailto:gambas at ...1... From jredrejo at ...101... Sun Jul 24 21:53:41 2005 From: jredrejo at ...101... (=?ISO-8859-1?Q?Jos=E9?= L. Redrejo =?ISO-8859-1?Q?Rodr=EDguez?=) Date: Sun, 24 Jul 2005 21:53:41 +0200 Subject: [Gambas-devel] Release of gambas 1.9.13 In-Reply-To: <200507241902.21919.gambas@...1...> References: <200507241902.21919.gambas@...1...> Message-ID: <1122234821.11369.15.camel@...102...> mmm, what happened with the gb.form and gb.xml.rpc? I have lost them in the new release... Only gb.settings is kept in the comp directory. El dom, 24-07-2005 a las 19:02 +0200, Benoit Minisini escribi?: > Here is a new release of the development version. > > Many big changes there, some of them being experimental: > > * The source package structure has been redesigned a little, and now uses > symbolic links so that size is reduced. > * The configure script does not use $(ROOT) anymore, but only $(DESTDIR). > Maybe making binary packages with rpmbuild is broken... > * The IDE now stored control coordinates proportionally to the system font > height. THIS IS EXPERIMENTAL, BE CAREFUL WITH YOUR PROJECTS! > * Extern functions can be public. > * The interpreter uses mmap() to load executables and components written in > Gambas. > * Each component can have a part written in C/C++ and a part written in > Gambas. > * Enumerable container classes now know when they are enumerated so that they > can safely delete their elements. > * Some new functions and instructions: DEBUG, ERROR, Week(), DFree(). > * Some new syntaxes in File.Dir(), File.Ext(), File.Name() and > File.BaseName(). > * The TrayIcon class was implemented. > * The OpenGL beta component was included. > > And many bug fixes of course... > > Please read the ChangeLog carefully before using this release! > > 1) The IDE storing proportional coordinates stuff is a way of having dialog > boxes that adapt themselves to the user screen, by looking at the size of the > font it uses. > > To convert a project to this feature, open it, open all forms, move all of > them, and save the project back. The absolute coordinates are replaced by the > scaled ones. > > BE CAREFUL! You may lose your projects if I made a bug, as the form files are > modified. > > 2) There is a new iterator class named Enum that is used internally to > implement the FOR EACH instruction. > > Try this code in older versions of Gambas: > > --8<--------------------------------------------- > > DIM cCol AS NEW Collection > DIM iInd AS Integer > dim sElt AS String > > FOR iInd = 1 TO 8 > cCol[iInd] = Chr$(64 + iInd) > NEXT > > FOR EACH sElt in cCol > IF sElt = "E" THEN cCol.Clear > NEXT > > --8<--------------------------------------------- > > If it doesn't crash, you are lucky, but try it with valgrind... > > This new iterator class allows the Collection class to deal with elements > removing while being enumerated. In the example, the enumeration is stopped > by the Clear method. Removing one element will make the enumeration jumps it. > > There is three new functions in the interpreter API for component developers > that have enumerable classes whose elements can disappear without notice. > > I will write more about that when I will start filling the new documentation > system with updated information on how to program components. > > 3) Now components can have a part written in gambas. To do that, just add a > gambas project inside the 'src' sub-directory of the component, having the > same name as the component. That's all :-) > > Note that components Makefile.am were modified. Now they all share the same > base, located in the component.am file. This file is included in all > component Makefile.am, and do all the stuff of installing the *.component > file, compiling the gambas part of the component, and generating the > information files for the IDE. > > Enjoy it! > From Karl.Reinl at ...16... Sun Jul 24 22:35:16 2005 From: Karl.Reinl at ...16... (Charlie Reinl) Date: Sun, 24 Jul 2005 22:35:16 +0200 Subject: [Gambas-devel] gambas-1.9.13 Message-ID: <200507242235.16792.Karl.Reinl@...16...> Salut, congratulations, since 1.9.5 now none existing libs make no more troubles. A simple ./configure made it. But one Problem: see the attachment ./configure reports: ************************************************************ THESE COMPONENTS ARE DISABLED: - gb.clanlib - gb.db.odbc - gb.gtk - gb.sdl ************************************************************ My last try was gambas-1.9.5 For the rest : Using: ?- gambas-1.0.8 ?(downloaded, no more from the gambas-shrine) ?- X Window System Version 6.8.2 Release Date: 9 February 2005 ? X Protocol Version 11, Revision 0, Release 6.8.2 ? Build Operating System: Linux 2.6.8-gentoo-r3 i686 [ELF] ? Current Operating System: Linux gentoo01 2.6.8-gentoo-r3 #1 SMP ? ?Sun Feb 13 21:57:11 CET 2005 i686 - gentoo 1.4 (last Updated 02.07.2005) on Gentoo Base System version 1.4.16 - Qt: 3.3.4 ?- KDE: 3.4.1 ?- gcc (GCC) 3.3.5-20050130 (Gentoo 3.3.5.20050130-r1, ssp-3.3.5.20050130-1, ??? pie-8.7.7.1) ?- mysql ?Ver 12.22 Distrib 4.0.24, for pc-linux-gnu (i686) ?- psql (PostgreSQL) 8.0.1 ?- SQLite version 2.8.15 ?- GNU Make 3.80 I deletet the old gambas2.conf , no changes. As I don't follow the list about the dev-branch, any hint would be nice. Amicalment Charlie -------------- next part -------------- A non-text attachment was scrubbed... Name: gambas2_01.png Type: image/png Size: 14145 bytes Desc: not available URL: From danielcampos at ...45... Mon Jul 25 00:40:24 2005 From: danielcampos at ...45... (Daniel Campos) Date: Mon, 25 Jul 2005 00:40:24 +0200 Subject: [Gambas-devel] gb.gtk 050725 Message-ID: <42E418D8.5060107@...45...> Hi: Here's the last version for Gambas-1.9.12 of the gb.gtk component: http://gambas.gnulinex.org/gtk (Version 050725) * FIXED: Restored compatibility with GTK+-2.4 * FIXED: "ComboBox" Length and Text properties are working now. * FIXED: "TextBox" Length property is working now. * NEW: "ColumnView" Click and Activate events implemented. Regards, D. Campos From lordheavy at ...141... Thu Jul 28 11:53:03 2005 From: lordheavy at ...141... (Laurent Carlier) Date: Thu, 28 Jul 2005 11:53:03 +0200 Subject: [Gambas-devel] gb.opengl 050728 / gb.sdl.opengl 050725 Message-ID: <42E8AAFF.7040802@...141...> New version of gb.opengl component : - Now start with Gl. and Glu. - Compile fine with Gcc3 (3.3.5) and Gcc4 (4.0.1) - Lot of features missing .... New gb.sdl.opengl is also available. An example is available : GambasGears (glxgears) http://gamebas.tuxfamily.org/download -- Laurent Carlier jabber : LordHeavy at ...298... From sourceforge-raindog2 at ...19... Thu Jul 28 19:19:41 2005 From: sourceforge-raindog2 at ...19... (Rob) Date: Thu, 28 Jul 2005 13:19:41 -0400 Subject: [Gambas-devel] gb.gtk makefile Message-ID: <200507281319.41598.sourceforge-raindog2@...19...> I've been trying to do Mandrake packages of 1.9.13, but whether I apply Daniel's new version of gb.gtk or not (and patch configure.in to make it only require Gtk 2.4 and not 2.6) the component's .info and .list files are never created. Looking at the Makefile.in files for all the components, they all now have a "Creating the information files for (component)" section in them except gb.gtk. I haven't figured out a way to automatically paste this section into the gb.gtk Makefile.in, do autoconf/automake/aclocal and have it actually work. Is everyone else manually making the .info and .list files or am I just doing something wrong? Rob From gambas at ...1... Fri Jul 29 18:51:51 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 29 Jul 2005 18:51:51 +0200 Subject: [Gambas-devel] gb.gtk makefile In-Reply-To: <200507281319.41598.sourceforge-raindog2@...19...> References: <200507281319.41598.sourceforge-raindog2@...19...> Message-ID: <200507291851.52036.gambas@...1...> On Thursday 28 July 2005 19:19, Rob wrote: > I've been trying to do Mandrake packages of 1.9.13, but whether I > apply Daniel's new version of gb.gtk or not (and patch configure.in > to make it only require Gtk 2.4 and not 2.6) the component's .info > and .list files are never created. > > Looking at the Makefile.in files for all the components, they all now > have a "Creating the information files for (component)" section in > them except gb.gtk. I haven't figured out a way to automatically > paste this section into the gb.gtk Makefile.in, do > autoconf/automake/aclocal and have it actually work. Is everyone > else manually making the .info and .list files or am I just doing > something wrong? > > Rob > Maybe I did something wrong? I will release 1.9.14 soon - I will check before what you are talking about. I will update the documentation system too, and maybe you can make it public ? The only problem at the moment is that I have to register people by hand. Regards, -- Benoit Minisini mailto:gambas at ...1... From sourceforge-raindog2 at ...19... Fri Jul 29 18:55:02 2005 From: sourceforge-raindog2 at ...19... (Rob) Date: Fri, 29 Jul 2005 12:55:02 -0400 Subject: [Gambas-devel] new Gambas documentation In-Reply-To: <200507291851.52036.gambas@...1...> References: <200507281319.41598.sourceforge-raindog2@...19...> <200507291851.52036.gambas@...1...> Message-ID: <200507291255.02794.sourceforge-raindog2@...19...> On Friday 29 July 2005 12:51, Benoit Minisini wrote: > I will update the documentation system too, and maybe you can make > it public ? Sure, anyone who wants to try out the new Gambas documentation, have a look at http://new.gambasdoc.org (it will redirect you to a numeric IP address but it should work.) Rob From danielcampos at ...45... Fri Jul 29 19:32:50 2005 From: danielcampos at ...45... (Daniel Campos) Date: Fri, 29 Jul 2005 19:32:50 +0200 Subject: [Gambas-devel] gb.gtk makefile In-Reply-To: <200507291851.52036.gambas@...1...> References: <200507281319.41598.sourceforge-raindog2@...19...> <200507291851.52036.gambas@...1...> Message-ID: <42EA6842.9080205@...45...> > >Maybe I did something wrong? I will release 1.9.14 soon - I will check before >what you are talking about. > > Wait a little, please, I must finish the new gtk version!!!! Regards, D. Campos From gambas at ...1... Fri Jul 29 19:45:22 2005 From: gambas at ...1... (Benoit Minisini) Date: Fri, 29 Jul 2005 19:45:22 +0200 Subject: [Gambas-devel] gb.gtk makefile In-Reply-To: <42EA6842.9080205@...45...> References: <200507281319.41598.sourceforge-raindog2@...19...> <200507291851.52036.gambas@...1...> <42EA6842.9080205@...45...> Message-ID: <200507291945.22382.gambas@...1...> On Friday 29 July 2005 19:32, Daniel Campos wrote: > >Maybe I did something wrong? I will release 1.9.14 soon - I will check > > before what you are talking about. > > Wait a little, please, I must finish the new gtk version!!!! > > Regards, > > D. Campos > No problem. I wait... :-) -- Benoit Minisini mailto:gambas at ...1... From danielcampos at ...45... Sat Jul 30 13:14:58 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sat, 30 Jul 2005 13:14:58 +0200 Subject: [Gambas-devel] gb.gtk 050730 Message-ID: <42EB6132.9010507@...45...> Hi: New version of the gb.gtk component for both Gambas-1.9.13 and Gambas-1.9.12: http://gambas.gnulinex.org/gtk 050730 - Alpha * FIXED: Controls now inherit parent font. * FIXED: Tooltips management improved: best performance and less memory wasted. * NEW: Application.Tooltip: Enabled and Font properties implemented * NEW: MouseWheel event, Mouse.Orientation and Mouse.Delta properties implemented. * NEW: Fonts.Count and Fonts._next implemented. * FIXED: Containers only arrange visible children. * FIXED: Segmentation fault on some containers when arrangement is not "None". * FIXED: Some Window.Picture representation problems. * NEW: "ListView" Find implemented. * NEW: "Application.ActiveWindow" implemented. * NEW: "TrayIcon": ScreenX, ScreenY, Width and Height properties added. * NEW: "TrayIcon" adapted to the gb.qt new interface. * NEW: "Mouse.ScreenX" and "Mouse.ScreenY" implemented. * NEW: "Desktop.Scale", "Control.MoveScaled" and "Control.ResizeScaled" implemented. Regards, D. Campos From gambas at ...1... Sat Jul 30 17:28:44 2005 From: gambas at ...1... (Benoit Minisini) Date: Sat, 30 Jul 2005 17:28:44 +0200 Subject: [Gambas-devel] Release of gambas 1.9.14 Message-ID: <200507301728.44644.gambas@...1...> Hi, all guys. Here is a new release of the development version that you can get there: http://prdownloads.sourceforge.net/gambas/gambas2-1.9.14.tar.bz2?download Now making Gambas components in Gambas really works :-) The development environment gets a new font selection dialog and a new color selection dialog both based on two new controls made with Gambas. Here is the complete Changelog: --8<--------------------------------------------------------------------------- CONFIGURATION * BUG: Finally applied the "fish jail" :-) patch of Dirk Mueller to the symbolic link creation. * BUG: Components directory including a gambas part are now correctly packaged. DEVELOPMENT ENVIRONMENT * New font and color dialogs in the property sheet. * The welcome, about and tips dialog now use the system colors. * Symbols including an underscore are not displayed anymore in the completion list. COMPILER * BUG: events from gambas classes are now internally prefixed with a colon, as the events from native classes. * The bytecode version is now written in each compiled class. INTERPRETER * BUG: Now a native class can have a static property that returns a usable virtual class. * If the bytecode version of a compiled class is different from the bytecode version of the interpreter, then an error is raised. * BUG: Many fixes in the gambas archive management. Now everything should work as expected :-) * The Boolean[] array class was implemented. * Object.GetProperty() now can return the value of static properties. * BUG: Classes located in gambas archives are now freed with the global classes when the interpreter ends. * BUG: Format$(0, "+#") now works correctly. * A new property, Application.Dir, that returns the application startup working directory at startup. Note that the current working directory is modified by the interpreter. * BUG: Hex$() and Bin$() now correctly display negative values. QT COMPONENT * Eight new properties in Color class that returns system colors. * A new array operator in Color class to split a color in its Red, Green, Blue, Alpha or Hue, Saturation, Value parts. * BUG: Some fixes in the arrangement algorithm of containers. * BUG: The DrawingArea draws its border correctly again. * A new property, Font.Scalable, that returns if a font is freely scalable. * A new property, Font.Grade, that represents a predefined font size proportional to the default application font. Range from -9 to +9. * A new control, UserControl, that acts as a parent class for implementing user controls directly in Gambas. * A new method, ScrollView.EnsureVisible, that ensures that a specified area of the ScrollView is visible. * A new property, TextArea.ScrollBar, to choose the display policy of the scrollbars. * A new class, TrayIcons, for enumerating all TrayIcon controls. * New properties in the TrayIcon class: Tag, ScreenX, ScreenY, Width and Height. * BUG: TrayIcon now catches Enter and Leave events. * BUG: The Design property now works with controls written in Gambas. * BUG: Some fixes in Open event trigerring of embedded forms. * Three new controls made with Gambas: FontChooser, ColorChooser and CustomListBox. DATABASE COMPONENT * A new method, CConnection.Subst(), that converts gambas values into the underlying database SQL syntax, and substitutes them in a query string. * BUG: Result can manage tables whose primary keys are not the first fields of the table. * BUG: Result enumeration are deletion-safe now. * BUG: You can use variant values with functions that use substitution. GTK+ COMPONENT * Updated. SDL COMPONENT * Updated. OPENGL COMPONENT * Updated. --8<--------------------------------------------------------------------------- ABOUT THE GAMBAS COMPONENTS MADE IN GAMBAS THING The source of these controls is the "gb.qt" gambas project located in the gb.qt component source directory. At the moment, it is part of this component, but it may become an independent component in the future. How does it work concretely ? I added a new control named "UserControl", and every user control made in Gambas should inherits it. This control is just a container with no properties. I just embedded a Form inside it. Why is Usercontrol needed ? Because if you use a form as a component, the user will see all its public properties and event handlers. By embedding the form, I can provide to the user a control with the interface I want, and this way hide all the specific stuff located in the embedded form. UserControl is a container with no properties, and its internal Arrangement property set to 'Fill'. But it is not declared as a usable control to the IDE. The simpler for understanding is looking at the sources :-) For example, the ColorChooser control embeds a form named FColorChooser, and in the IDE you will only see ColorChooser. The internal FColorChooser is completely hidden. As you may know ;-) Form controls are their own event observer. So I attached the FColorChooser to ColorChooser to get all events generated by the Form, and raised back the events like Form_Open or Form_Resize that the form needs to work. I am not completely satisfied with that, but at the moment it is the only way I found to make user controls behave like I wanted. In the future, I may implement something like UserContainer, to help implementing user controls that have containers. Note that components made in Gambas work exactly like any executable projects. They can include all the resource files they need, and their own translations. Please look at that as much as possible :-) This is the base for a future implementation of components like: - Complex controls like FontChooser or ColorChooser: FileChooser, DirChooser, anything you can imagine. - Controls bound to database. - Report designer. - WebForm designer. - Gambas MDI windows. ... The limit is time and imagination :-) Enjoy it! -- Benoit Minisini mailto:gambas at ...1... From danielcampos at ...45... Sun Jul 31 15:16:19 2005 From: danielcampos at ...45... (Daniel Campos) Date: Sun, 31 Jul 2005 15:16:19 +0200 Subject: [Gambas-devel] gb.gtk 050731 Message-ID: <42ECCF23.1010600@...45...> Hi: New version of gb.gtk: 050731 http://gambas.gnulinex.org/gtk This version adds the new stuff implemented by Beno?t in the gb.qt component, and yes, it has some bugs, but it would help Benoit to test the "UserControl" and Gambas control creation with gb.gtk, so they not depend on gb.qt. Beno?t: Apart from this, you should adapt the color chooser to be compatible with gb.gtk: When using GTK+, all h,s,v values have different ranges than in QT: H: 0 - 360 S: 0 - 100 V: 0 - 100 All GTK+ applications work in this way, and the gb.gtk component must be compatible with the rest of GTK+ applications. I suppose you could check the active component using the "Components" class, and then use values from 0 to 255 when using gb.qt and the values I told you when using gb.gtk. I also added an experimental method called "Reparent" for al widgets except top-level windows, so any control can change its parent. Changelog: * NEW: ScrollView.EnsureVisible implemented. * NEW: "UserControl" class implemented. * NEW: TrayIcon.Tag, W and H properties added. * NEW: Font.Scalable and Font.Grade properties implemented. * NEW: System colors added to "Color" class. * NEW: TextArea.Scrollbar property added. * NEW: Control.Reparent method added to reparent widgets (but not top-level windows) * FIXED: Mouse, Focus, and Key events handling redesigned: 28 bytes less per widget. * NEW: Application.Font implemented. Regards, D. Campos