From gambasfr at ...4... Sun Jan 1 01:57:47 2006 From: gambasfr at ...4... (Fabien Bodard) Date: Sun, 1 Jan 2006 01:57:47 +0100 Subject: [Gambas-devel] Happy new year Message-ID: <200601010157.48237.gambasfr@...4...> I whish an happy new year to all the Gambas users and Team We are now in 2006, and i hope it will be a great year for our prefered shrimp with many and many new feature and kind of uses... Regards, Fabien Bodard From csorda at ...69... Sun Jan 1 16:36:29 2006 From: csorda at ...69... (csorda@libero.it) Date: Sun, 1 Jan 2006 16:36:29 +0100 Subject: [Gambas-devel] happy new year Message-ID: Happy new year from Carlo Sorda. From gambas at ...1... Mon Jan 2 02:21:29 2006 From: gambas at ...1... (Benoit Minisini) Date: Mon, 2 Jan 2006 02:21:29 +0100 Subject: [Gambas-devel] Release of gambas 1.9.23 Message-ID: <200601020221.29979.gambas@...1...> Happy new year to everyone! (Well... for those who have the same calendar than me) Here is a new release of the development version: The main change in this version is the support for auto-increment and blob fields in the database component. To create a serial field, use the 'db.Serial' constant as field datatype. And to create a blob field, use the 'db.Blob' constant. Because of underlying database limits, you can only have one autoincrement field by table, and it must be the primary key. Moreover, the blob support is not perfect: it uses SQL requests, and so wastes memory and CPU. Especially in the sqlite driver, which have many problems about that... A blob field returns a Blob object, which have a Data property, that represents the blob data as a string. There is a Length property too, that returns the length of the blob data. The returned Blob object is valid as long as you don't move or release the Result object it comes from. Here is a little example: res = DB.Find("MyTable") PRINT res!BlobField.Data res!BlobField.Data = File.Load("picture.png") ' The following is a shortcut for the previous line res!BlobField = File.Load("picture.png") The following drivers were modified to support autoincrement fields and blobs: * MySQL * PostgreSQL * SQLite ODBC and Firebird driver do not support it yet. I will post some explanation about what to do in the development mailing-list for Niggel, Andrea and Daniel Otherwise, there are many other little changes you will see in the ChangeLog. The more important is that now you can declare several local variables of the same datatype on the same line. This way: DIM i, j, k AS Integer Maybe I should allow this syntax too: DIM i AS Integer, s, a AS String I will see if it is possible... So... try it and report the problems... :-) -- Benoit Minisini From gambas at ...1... Mon Jan 2 11:16:27 2006 From: gambas at ...1... (Benoit Minisini) Date: Mon, 2 Jan 2006 11:16:27 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 Message-ID: <200601021116.27366.gambas@...1...> Here is more explanations about the database driver update of 1.9.23: (1) The DB_DATABASE structure has changed. Before, it was just a cast to the underlying connection handle. Now it is the following structure: typedef struct { void *handle; /* Connection handle */ long version; /* Version of the database system */ char *charset; /* Charset used by the database */ void *data; /* Can be used by the driver for storing its own private data */ struct { unsigned no_table_type : 1; /* Tables do not have types */ unsigned no_serial : 1; /* Serial fields are not supported */ unsigned no_blob : 1; /* Blob fields are not supported */ unsigned no_seek : 1; /* Cannot seek anywhere in a Result */ } flags; } DB_DATABASE; All drivers functions that took a DB_DATABASE argument were (or have to be) modified so that they receive now a DB_DATABASE pointer argument. The interface of open_database() driver function has changed. Now this function must fill the DB_DATABASE structure. As the database version is stored in this structure, the 'version' argument of some driver functions has been removed. (2) Two new functions must be implemented in a database driver: * format_blob(): This function transforms a blob value into a string value that can be inserted into a SQL query. * blob_read(): Returns the value of a BLOB field. As usual, these functions are documented in the postgresql driver. They are void stubs in the sqlite2 driver, as sqlite2 does not support blobs. (3) Two new constants were added that represent new field datatypes: * DB_T_SERIAL, for autoincrement fields. * DB_T_BLOB, for blob fields. (4) A special comment for Nigel :-) SQLite driver dataset C++ function is a mess. The guy who wrote it did a very bad C++ job. At the moment, I had to hack them to support blobs. But when you read a blob field, its contents are copied three times by this API before raising the Gambas user variables! I think all that *@#! must be destroyed, and that I should make an emulation of direct-access result set in the database component for database backends that only support forward-only result set. It will benefits ODBC drivers that are in the same situation. (5) A special comment for Andrea :-) The implementation of autoincrement field and blob is just a stub at the moment. I don't know ODBC enough to do the job. Good luck! (6) A special comment for Daniel :-) Same remark for Firebird. I have the source, but I can't compile it because of missing libraries on Mandriva :-( Best regards to all three, -- Benoit Minisini From nigel at ...2... Mon Jan 2 20:52:17 2006 From: nigel at ...2... (nigel at ...2...) Date: Mon, 2 Jan 2006 20:52:17 +0100 (CET) Subject: [Gambas-devel] Database driver update in 1.9.23 Message-ID: <30572140.1136231537823.JavaMail.www@...233...> Benoit wrote: > > Here is more explanations about the database driver update of 1.9.23: > > (4) A special comment for Nigel :-) > > SQLite driver dataset C++ function is a mess. The guy who wrote it did a very > bad C++ job. > > At the moment, I had to hack them to support blobs. But when you read a blob > field, its contents are copied three times by this API before raising the > Gambas user variables! > > I think all that *@#! must be destroyed, and that I should make an emulation > of direct-access result set in the database component for database backends > that only support forward-only result set. It will benefits ODBC drivers that > are in the same situation. > > To be fare to the guy that wrote the SQLite dataset stuff, the version that I used was written in 2002 and there is a later version that might be better. I have not had the time to compare the differences...and try and reinsert the code that I altered. Perhaps it now might be a wise thing to do. Nigel From daniel at ...318... Mon Jan 2 22:18:40 2006 From: daniel at ...318... (Daniel) Date: Mon, 02 Jan 2006 22:18:40 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <200601021116.27366.gambas@...1...> References: <200601021116.27366.gambas@...1...> Message-ID: <43B998B0.3050402@...318...> Benoit Minisini wrote: >Here is more explanations about the database driver update of 1.9.23: > > >(1) The DB_DATABASE structure has changed. > >Before, it was just a cast to the underlying connection handle. Now it is the >following structure: > >typedef > struct { > void *handle; /* Connection handle */ > long version; /* Version of the database system */ > char *charset; /* Charset used by the database */ > void *data; /* Can be used by the driver for storing its > own private data */ > struct { > unsigned no_table_type : 1; /* Tables do not have types */ > unsigned no_serial : 1; /* Serial fields are not supported */ > unsigned no_blob : 1; /* Blob fields are not supported */ > unsigned no_seek : 1; /* Cannot seek anywhere in a Result */ > } > flags; > } >DB_DATABASE; > >All drivers functions that took a DB_DATABASE argument were (or have to be) >modified so that they receive now a DB_DATABASE pointer argument. > >The interface of open_database() driver function has changed. Now this >function must fill the DB_DATABASE structure. > >As the database version is stored in this structure, the 'version' argument of >some driver functions has been removed. > > >(2) Two new functions must be implemented in a database driver: > >* format_blob(): This function transforms a blob value into a string value >that can be inserted into a SQL query. > >* blob_read(): Returns the value of a BLOB field. > >As usual, these functions are documented in the postgresql driver. > >They are void stubs in the sqlite2 driver, as sqlite2 does not support blobs. > > >(3) Two new constants were added that represent new field datatypes: > >* DB_T_SERIAL, for autoincrement fields. >* DB_T_BLOB, for blob fields. > > >(4) A special comment for Nigel :-) > >SQLite driver dataset C++ function is a mess. The guy who wrote it did a very >bad C++ job. > >At the moment, I had to hack them to support blobs. But when you read a blob >field, its contents are copied three times by this API before raising the >Gambas user variables! > >I think all that *@#! must be destroyed, and that I should make an emulation >of direct-access result set in the database component for database backends >that only support forward-only result set. It will benefits ODBC drivers that >are in the same situation. > > >(5) A special comment for Andrea :-) > >The implementation of autoincrement field and blob is just a stub at the >moment. I don't know ODBC enough to do the job. Good luck! > > >(6) A special comment for Daniel :-) > >Same remark for Firebird. I have the source, but I can't compile it because of >missing libraries on Mandriva :-( > > the name of the lib missing please ! daniel >Best regards to all three, > > > From gambas at ...1... Mon Jan 2 22:27:22 2006 From: gambas at ...1... (Benoit Minisini) Date: Mon, 2 Jan 2006 22:27:22 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <43B998B0.3050402@...318...> References: <200601021116.27366.gambas@...1...> <43B998B0.3050402@...318...> Message-ID: <200601022227.22687.gambas@...1...> On Monday 02 January 2006 22:18, Daniel wrote: > Benoit Minisini wrote: > >Here is more explanations about the database driver update of 1.9.23: > > > > > >(1) The DB_DATABASE structure has changed. > > > >Before, it was just a cast to the underlying connection handle. Now it is > > the following structure: > > > >typedef > > struct { > > void *handle; /* Connection handle */ > > long version; /* Version of the database system */ > > char *charset; /* Charset used by the database */ > > void *data; /* Can be used by the driver for storing its > > own private data */ > > struct { > > unsigned no_table_type : 1; /* Tables do not have types */ > > unsigned no_serial : 1; /* Serial fields are not supported */ > > unsigned no_blob : 1; /* Blob fields are not supported */ > > unsigned no_seek : 1; /* Cannot seek anywhere in a Result */ > > } > > flags; > > } > >DB_DATABASE; > > > >All drivers functions that took a DB_DATABASE argument were (or have to > > be) modified so that they receive now a DB_DATABASE pointer argument. > > > >The interface of open_database() driver function has changed. Now this > >function must fill the DB_DATABASE structure. > > > >As the database version is stored in this structure, the 'version' > > argument of some driver functions has been removed. > > > > > >(2) Two new functions must be implemented in a database driver: > > > >* format_blob(): This function transforms a blob value into a string value > >that can be inserted into a SQL query. > > > >* blob_read(): Returns the value of a BLOB field. > > > >As usual, these functions are documented in the postgresql driver. > > > >They are void stubs in the sqlite2 driver, as sqlite2 does not support > > blobs. > > > > > >(3) Two new constants were added that represent new field datatypes: > > > >* DB_T_SERIAL, for autoincrement fields. > >* DB_T_BLOB, for blob fields. > > > > > >(4) A special comment for Nigel :-) > > > >SQLite driver dataset C++ function is a mess. The guy who wrote it did a > > very bad C++ job. > > > >At the moment, I had to hack them to support blobs. But when you read a > > blob field, its contents are copied three times by this API before > > raising the Gambas user variables! > > > >I think all that *@#! must be destroyed, and that I should make an > > emulation of direct-access result set in the database component for > > database backends that only support forward-only result set. It will > > benefits ODBC drivers that are in the same situation. > > > > > >(5) A special comment for Andrea :-) > > > >The implementation of autoincrement field and blob is just a stub at the > >moment. I don't know ODBC enough to do the job. Good luck! > > > > > >(6) A special comment for Daniel :-) > > > >Same remark for Firebird. I have the source, but I can't compile it > > because of missing libraries on Mandriva :-( > > the name of the lib missing please ! > > daniel > The one you use in the component: libibpp.so Regards, -- Benoit Minisini From daniel at ...413... Tue Jan 3 00:37:54 2006 From: daniel at ...413... (Daniel) Date: Tue, 03 Jan 2006 00:37:54 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <200601022227.22687.gambas@...1...> References: <200601021116.27366.gambas@...1...> <43B998B0.3050402@...318...> <200601022227.22687.gambas@...1...> Message-ID: <43B9B952.7050907@...413...> Benoit Minisini wrote: >On Monday 02 January 2006 22:18, Daniel wrote: > > >>Benoit Minisini wrote: >> >> >>>Here is more explanations about the database driver update of 1.9.23: >>> >>> >>>(1) The DB_DATABASE structure has changed. >>> >>>Before, it was just a cast to the underlying connection handle. Now it is >>>the following structure: >>> >>>typedef >>> struct { >>> void *handle; /* Connection handle */ >>> long version; /* Version of the database system */ >>> char *charset; /* Charset used by the database */ >>> void *data; /* Can be used by the driver for storing its >>> own private data */ >>> struct { >>> unsigned no_table_type : 1; /* Tables do not have types */ >>> unsigned no_serial : 1; /* Serial fields are not supported */ >>> unsigned no_blob : 1; /* Blob fields are not supported */ >>> unsigned no_seek : 1; /* Cannot seek anywhere in a Result */ >>> } >>> flags; >>> } >>>DB_DATABASE; >>> >>>All drivers functions that took a DB_DATABASE argument were (or have to >>>be) modified so that they receive now a DB_DATABASE pointer argument. >>> >>>The interface of open_database() driver function has changed. Now this >>>function must fill the DB_DATABASE structure. >>> >>>As the database version is stored in this structure, the 'version' >>>argument of some driver functions has been removed. >>> >>> >>>(2) Two new functions must be implemented in a database driver: >>> >>>* format_blob(): This function transforms a blob value into a string value >>>that can be inserted into a SQL query. >>> >>>* blob_read(): Returns the value of a BLOB field. >>> >>>As usual, these functions are documented in the postgresql driver. >>> >>>They are void stubs in the sqlite2 driver, as sqlite2 does not support >>>blobs. >>> >>> >>>(3) Two new constants were added that represent new field datatypes: >>> >>>* DB_T_SERIAL, for autoincrement fields. >>>* DB_T_BLOB, for blob fields. >>> >>> >>>(4) A special comment for Nigel :-) >>> >>>SQLite driver dataset C++ function is a mess. The guy who wrote it did a >>>very bad C++ job. >>> >>>At the moment, I had to hack them to support blobs. But when you read a >>>blob field, its contents are copied three times by this API before >>>raising the Gambas user variables! >>> >>>I think all that *@#! must be destroyed, and that I should make an >>>emulation of direct-access result set in the database component for >>>database backends that only support forward-only result set. It will >>>benefits ODBC drivers that are in the same situation. >>> >>> >>>(5) A special comment for Andrea :-) >>> >>>The implementation of autoincrement field and blob is just a stub at the >>>moment. I don't know ODBC enough to do the job. Good luck! >>> >>> >>>(6) A special comment for Daniel :-) >>> >>>Same remark for Firebird. I have the source, but I can't compile it >>>because of missing libraries on Mandriva :-( >>> >>> >>the name of the lib missing please ! >> >>daniel >> >> >> > >The one you use in the component: libibpp.so > >Regards, > > > sorry, yes this lib is not in one package i think !! the best is downloading from www.ibpp.org compile (gcc>=3.2) and copy the new lib in default lib directory + ibpp.h and iberror.h in default include directory daniel From robsamferr at ...7... Tue Jan 3 17:54:32 2006 From: robsamferr at ...7... (Rob SamFerr) Date: Tue, 3 Jan 2006 08:54:32 -0800 (PST) Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <43B9B952.7050907@...413...> Message-ID: <20060103165432.91319.qmail@...414...> I can't follow all the e-mails, but maybe somebody can help me with an answer, gambas has a report designer now or somebody think to develop one??? Thanx a lot........ --- Daniel wrote: > Benoit Minisini wrote: > > >On Monday 02 January 2006 22:18, Daniel wrote: > > > > > >>Benoit Minisini wrote: > >> > >> > >>>Here is more explanations about the database > driver update of 1.9.23: > >>> > >>> > >>>(1) The DB_DATABASE structure has changed. > >>> > >>>Before, it was just a cast to the underlying > connection handle. Now it is > >>>the following structure: > >>> > >>>typedef > >>> struct { > >>> void *handle; /* Connection handle */ > >>> long version; /* Version of the database > system */ > >>> char *charset; /* Charset used by the database > */ > >>> void *data; /* Can be used by the driver for > storing its > >>> own private data */ > >>> struct { > >>> unsigned no_table_type : 1; /* Tables do not > have types */ > >>> unsigned no_serial : 1; /* Serial fields > are not supported */ > >>> unsigned no_blob : 1; /* Blob fields are > not supported */ > >>> unsigned no_seek : 1; /* Cannot seek > anywhere in a Result */ > >>> } > >>> flags; > >>> } > >>>DB_DATABASE; > >>> > >>>All drivers functions that took a DB_DATABASE > argument were (or have to > >>>be) modified so that they receive now a > DB_DATABASE pointer argument. > >>> > >>>The interface of open_database() driver function > has changed. Now this > >>>function must fill the DB_DATABASE structure. > >>> > >>>As the database version is stored in this > structure, the 'version' > >>>argument of some driver functions has been > removed. > >>> > >>> > >>>(2) Two new functions must be implemented in a > database driver: > >>> > >>>* format_blob(): This function transforms a blob > value into a string value > >>>that can be inserted into a SQL query. > >>> > >>>* blob_read(): Returns the value of a BLOB field. > >>> > >>>As usual, these functions are documented in the > postgresql driver. > >>> > >>>They are void stubs in the sqlite2 driver, as > sqlite2 does not support > >>>blobs. > >>> > >>> > >>>(3) Two new constants were added that represent > new field datatypes: > >>> > >>>* DB_T_SERIAL, for autoincrement fields. > >>>* DB_T_BLOB, for blob fields. > >>> > >>> > >>>(4) A special comment for Nigel :-) > >>> > >>>SQLite driver dataset C++ function is a mess. The > guy who wrote it did a > >>>very bad C++ job. > >>> > >>>At the moment, I had to hack them to support > blobs. But when you read a > >>>blob field, its contents are copied three times > by this API before > >>>raising the Gambas user variables! > >>> > >>>I think all that *@#! must be destroyed, and that > I should make an > >>>emulation of direct-access result set in the > database component for > >>>database backends that only support forward-only > result set. It will > >>>benefits ODBC drivers that are in the same > situation. > >>> > >>> > >>>(5) A special comment for Andrea :-) > >>> > >>>The implementation of autoincrement field and > blob is just a stub at the > >>>moment. I don't know ODBC enough to do the job. > Good luck! > >>> > >>> > >>>(6) A special comment for Daniel :-) > >>> > >>>Same remark for Firebird. I have the source, but > I can't compile it > >>>because of missing libraries on Mandriva :-( > >>> > >>> > >>the name of the lib missing please ! > >> > >>daniel > >> > >> > >> > > > >The one you use in the component: libibpp.so > > > >Regards, > > > > > > > sorry, > yes this lib is not in one package i think !! > the best is downloading from www.ibpp.org > compile (gcc>=3.2) and copy the new lib in default > lib directory + > ibpp.h and iberror.h in default include directory > > daniel > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do > you grep through log files > for problems? Stop! Download the new AJAX search > engine that makes > searching your log files as easy as surfing the > web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Gambas-devel mailing list > Gambas-devel at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-devel > Roberto Samaniego Ferrabone Licdo. Tecnolog?a de Programaci?n PC Advisers __________________________________________ Yahoo! DSL ? Something to write home about. Just $16.99/mo. or less. dsl.yahoo.com From gambasfr at ...4... Tue Jan 3 21:14:18 2006 From: gambasfr at ...4... (Fabien Bodard) Date: Tue, 3 Jan 2006 21:14:18 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <20060103165432.91319.qmail@...414...> References: <20060103165432.91319.qmail@...414...> Message-ID: <200601032114.18275.gambasfr@...4...> Le Mardi 3 Janvier 2006 17:54, Rob SamFerr a ?crit?: > I can't follow all the e-mails, but maybe somebody can > help me with an answer, gambas has a report designer > now or somebody think to develop one??? > > Thanx a lot........ > It's in progress... but not this night i've broken my mouse :( But i've something for the end of the month i think... Christian Faure have done some stuff on another one too and it is usable at this time i think Fabien Bodard From robsamferr at ...7... Tue Jan 3 21:22:44 2006 From: robsamferr at ...7... (Rob SamFerr) Date: Tue, 3 Jan 2006 12:22:44 -0800 (PST) Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <200601032114.18275.gambasfr@...4...> Message-ID: <20060103202244.10694.qmail@...415...> Ok, it's fantastic, i'll be waiting for it.... i think it's just what it not has by now.... Best regards........ --- Fabien Bodard wrote: > Le Mardi 3 Janvier 2006 17:54, Rob SamFerr a ?crit?: > > I can't follow all the e-mails, but maybe somebody > can > > help me with an answer, gambas has a report > designer > > now or somebody think to develop one??? > > > > Thanx a lot........ > > > > It's in progress... but not this night i've broken > my mouse :( > > But i've something for the end of the month i > think... > > > Christian Faure have done some stuff on another one > too and it is usable at > this time i think > > Fabien Bodard > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do > you grep through log files > for problems? Stop! Download the new AJAX search > engine that makes > searching your log files as easy as surfing the > web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_idv37&alloc_id865&op=click > _______________________________________________ > Gambas-devel mailing list > Gambas-devel at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-devel > Roberto Samaniego Ferrabone Licdo. Tecnolog?a de Programaci?n PC Advisers __________________________________________ Yahoo! DSL ? Something to write home about. Just $16.99/mo. or less. dsl.yahoo.com From gambasfr at ...4... Thu Jan 5 20:28:54 2006 From: gambasfr at ...4... (Fabien Bodard) Date: Thu, 5 Jan 2006 20:28:54 +0100 Subject: [Gambas-devel] BUG on Object.Parent(o) Message-ID: <200601052028.54329.gambasfr@...4...> Hi Benoit ... This is a small exemple that raise a crash... Regards, Fabien From gambasfr at ...4... Thu Jan 5 20:30:06 2006 From: gambasfr at ...4... (Fabien Bodard) Date: Thu, 5 Jan 2006 20:30:06 +0100 Subject: [Gambas-devel] BUG on Object.Parent(o) Message-ID: <200601052030.06891.gambasfr@...4...> Hi Benoit ... This is a small exemple that raise a crash... Regards, Fabien -------------- next part -------------- A non-text attachment was scrubbed... Name: Inheritance_Test-0.0.1.tar.gz Type: application/x-tgz Size: 912 bytes Desc: not available URL: From gambas at ...1... Thu Jan 5 23:48:34 2006 From: gambas at ...1... (Benoit Minisini) Date: Thu, 5 Jan 2006 23:48:34 +0100 Subject: [Gambas-devel] BUG on Object.Parent(o) In-Reply-To: <200601052030.06891.gambasfr@...4...> References: <200601052030.06891.gambasfr@...4...> Message-ID: <200601052348.34940.gambas@...1...> On Thursday 05 January 2006 20:30, Fabien Bodard wrote: > Hi Benoit ... > > This is a small exemple that raise a crash... > > > Regards, > Fabien Same problem than you sent me in french. But now I understand better what you wanted to do. The problem is that during the _new method, the created object is not yet attached to its parent, and so Object.Parent() returns NULL! But I really don't see the need of what you want to do... -- Benoit Minisini From gambasfr at ...4... Fri Jan 6 13:26:31 2006 From: gambasfr at ...4... (Fabien Bodard) Date: Fri, 6 Jan 2006 13:26:31 +0100 Subject: [Gambas-devel] BUG on Object.Parent(o) In-Reply-To: <200601052348.34940.gambas@...1...> References: <200601052030.06891.gambasfr@...4...> <200601052348.34940.gambas@...1...> Message-ID: <200601061326.32027.gambasfr@...4...> Le Jeudi 5 anvier 2006 23:48, Benoit Minisini a ?crit?: > On Thursday 05 January 2006 20:30, Fabien Bodard wrote: > > Hi Benoit ... > > > > This is a small exemple that raise a crash... > > > > > > Regards, > > Fabien > > Same problem than you sent me in french. But now I understand better what > you wanted to do. En fait je probl?me est que dans mon syst?me chaque objet a une fonction le dessinant... Pour la Classe ReportLabel qui sert a la fois de label et de champ suivant les donn?e demand? dans la propri?t? command, l'?v?nement doit ?tre appel? par le label lui m?me en passant les champ appel? ou les information demand?. Dans la version 1.9.22 tout allais bien ... mais avec la 1.9.23 ?a plante... En effet mon exemple envoy? ?tait mal construit, mais dans gb.report, l'objet Report est cr?? et attach? a son parent avant la cr?ation de tout autre composant donc ce n'est pas le soucis... > The problem is that during the _new method, the created object is not yet > attached to its parent, and so Object.Parent() returns NULL! > > But I really don't see the need of what you want to do... Ben si tu a une autre id?e je veut bien l'entendre... Amicalement, Fabien Bodard PS: Y'a quand m?me un bug ! From gambas at ...1... Fri Jan 6 21:48:36 2006 From: gambas at ...1... (Benoit Minisini) Date: Fri, 6 Jan 2006 21:48:36 +0100 Subject: [Gambas-devel] BUG on Object.Parent(o) In-Reply-To: <200601061326.32027.gambasfr@...4...> References: <200601052030.06891.gambasfr@...4...> <200601052348.34940.gambas@...1...> <200601061326.32027.gambasfr@...4...> Message-ID: <200601062148.36949.gambas@...1...> On Friday 06 January 2006 13:26, Fabien Bodard wrote: > Le Jeudi 5 anvier 2006 23:48, Benoit Minisini a ?crit?: > > On Thursday 05 January 2006 20:30, Fabien Bodard wrote: > > > Hi Benoit ... > > > > > > This is a small exemple that raise a crash... > > > > > > > > > Regards, > > > Fabien > > > > Same problem than you sent me in french. But now I understand better what > > you wanted to do. > > En fait je probl?me est que dans mon syst?me chaque objet a une fonction > le dessinant... > Pour la Classe ReportLabel qui sert a la fois de label et de champ suivant > les donn?e demand? dans la propri?t? command, l'?v?nement doit ?tre appel? > par le label lui m?me en passant les champ appel? ou les information > demand?. Dans la version 1.9.22 tout allais bien ... mais avec la 1.9.23 ?a > plante... En effet mon exemple envoy? ?tait mal construit, mais dans > gb.report, l'objet Report est cr?? et attach? a son parent avant la > cr?ation de tout autre composant donc ce n'est pas le soucis... > > > The problem is that during the _new method, the created object is not yet > > attached to its parent, and so Object.Parent() returns NULL! > > > > But I really don't see the need of what you want to do... > > Ben si tu a une autre id?e je veut bien l'entendre... > > > Amicalement, > Fabien Bodard > > PS: > > Y'a quand m?me un bug ! > Write in english if you post on the mailing-list please! :-) And what is the bug? I can't attach the object to its parent during the constructors are executed, because if the object raises an event, he will be in a not-ready state, as the constructors are not finished. Did you talk about that? Regards, -- Benoit Minisini From gambas at ...1... Fri Jan 6 21:58:56 2006 From: gambas at ...1... (Benoit Minisini) Date: Fri, 6 Jan 2006 21:58:56 +0100 Subject: [Gambas-devel] BUG on Object.Parent(o) In-Reply-To: <200601062148.36949.gambas@...1...> References: <200601052030.06891.gambasfr@...4...> <200601061326.32027.gambasfr@...4...> <200601062148.36949.gambas@...1...> Message-ID: <200601062158.56855.gambas@...1...> On Friday 06 January 2006 21:48, Benoit Minisini wrote: > I can't attach the object to its parent during the constructors are | while --------------------------------------+ > Write in english if you post on the mailing-list please! :-) This is for me too :-) -- Benoit Minisini From gambasfr at ...4... Sat Jan 7 14:50:16 2006 From: gambasfr at ...4... (Fabien Bodard) Date: Sat, 7 Jan 2006 14:50:16 +0100 Subject: [Gambas-devel] BUG on Object.Parent(o) In-Reply-To: <200601062148.36949.gambas@...1...> References: <200601052030.06891.gambasfr@...4...> <200601061326.32027.gambasfr@...4...> <200601062148.36949.gambas@...1...> Message-ID: <200601071450.16397.gambasfr@...4...> Le Vendredi 6 Janvier 2006 21:48, Benoit Minisini a ?crit?: > On Friday 06 January 2006 13:26, Fabien Bodard wrote: > > Le Jeudi 5 anvier 2006 23:48, Benoit Minisini a ?crit?: > > > On Thursday 05 January 2006 20:30, Fabien Bodard wrote: > > > > Hi Benoit ... > > > > > > > > This is a small exemple that raise a crash... > > > > > > > > > > > > Regards, > > > > Fabien > > > > > > Same problem than you sent me in french. But now I understand better > > > what you wanted to do. > > > > En fait je probl?me est que dans mon syst?me chaque objet a une fonction > > le dessinant... > > Pour la Classe ReportLabel qui sert a la fois de label et de champ > > suivant les donn?e demand? dans la propri?t? command, l'?v?nement doit > > ?tre appel? par le label lui m?me en passant les champ appel? ou les > > information demand?. Dans la version 1.9.22 tout allais bien ... mais > > avec la 1.9.23 ?a plante... En effet mon exemple envoy? ?tait mal > > construit, mais dans gb.report, l'objet Report est cr?? et attach? a son > > parent avant la cr?ation de tout autre composant donc ce n'est pas le > > soucis... > > > > > The problem is that during the _new method, the created object is not > > > yet attached to its parent, and so Object.Parent() returns NULL! > > > > > > But I really don't see the need of what you want to do... > > > > Ben si tu a une autre id?e je veut bien l'entendre... > > > > > > Amicalement, > > Fabien Bodard > > > > PS: > > > > Y'a quand m?me un bug ! > > Write in english if you post on the mailing-list please! :-) Sorry ... :-( > > And what is the bug? > > I can't attach the object to its parent during the constructors are > executed, because if the object raises an event, he will be in a not-ready > state, as the constructors are not finished. Did you talk about that? ok i understand now... in fact i was trying to join automagiquely the label to the report parent but i've mabe another way to do that more simply and without bug... I think i can join it at the file loading. o = new Label(hcont) as "ReportObject" and use a 2 level events... PUBLIC SUB ReportObject_Data(Command) RAISE Data(Command) END > > Regards, From daniel at ...413... Fri Jan 13 00:56:38 2006 From: daniel at ...413... (Daniel) Date: Fri, 13 Jan 2006 00:56:38 +0100 Subject: [Gambas-devel] Release of gambas 1.9.23 In-Reply-To: <200601020221.29979.gambas@...1...> References: <200601020221.29979.gambas@...1...> Message-ID: <43C6ECB6.2010309@...413...> Benoit Minisini wrote: >Happy new year to everyone! (Well... for those who have the same calendar than >me) > >Here is a new release of the development version: > >The main change in this version is the support for auto-increment and blob >fields in the database component. > >To create a serial field, use the 'db.Serial' constant as field datatype. And >to create a blob field, use the 'db.Blob' constant. > >Because of underlying database limits, you can only have one autoincrement >field by table, and it must be the primary key. > >Moreover, the blob support is not perfect: it uses SQL requests, and so wastes >memory and CPU. Especially in the sqlite driver, which have many problems >about that... > >A blob field returns a Blob object, which have a Data property, that >represents the blob data as a string. There is a Length property too, that >returns the length of the blob data. > >The returned Blob object is valid as long as you don't move or release the >Result object it comes from. > >Here is a little example: > > res = DB.Find("MyTable") > PRINT res!BlobField.Data > res!BlobField.Data = File.Load("picture.png") > ' The following is a shortcut for the previous line > res!BlobField = File.Load("picture.png") > >The following drivers were modified to support autoincrement fields and blobs: > * MySQL > * PostgreSQL > * SQLite > >ODBC and Firebird driver do not support it yet. I will post some explanation >about what to do in the development mailing-list for Niggel, Andrea and >Daniel > >Otherwise, there are many other little changes you will see in the ChangeLog. > >The more important is that now you can declare several local variables of the >same datatype on the same line. This way: > > DIM i, j, k AS Integer > >Maybe I should allow this syntax too: > > DIM i AS Integer, s, a AS String > >I will see if it is possible... > >So... try it and report the problems... :-) > > > hi all hi benoit in attachment the driver for firebird with serial field (i use trigger look like postgres) and blob (read REDME for more info) daniel -------------- next part -------------- A non-text attachment was scrubbed... Name: gb.db.firebird.12.01.2006.1.9.23.tar.gz Type: application/x-gzip Size: 220495 bytes Desc: not available URL: From daniel at ...413... Fri Jan 13 17:14:20 2006 From: daniel at ...413... (Daniel) Date: Fri, 13 Jan 2006 17:14:20 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <200601021116.27366.gambas@...1...> References: <200601021116.27366.gambas@...1...> Message-ID: <43C7D1DC.10103@...413...> Benoit Minisini wrote: >Here is more explanations about the database driver update of 1.9.23: > > >(1) The DB_DATABASE structure has changed. > >Before, it was just a cast to the underlying connection handle. Now it is the >following structure: > >typedef > struct { > void *handle; /* Connection handle */ > long version; /* Version of the database system */ > char *charset; /* Charset used by the database */ > void *data; /* Can be used by the driver for storing its > own private data */ > struct { > unsigned no_table_type : 1; /* Tables do not have types */ > unsigned no_serial : 1; /* Serial fields are not supported */ > unsigned no_blob : 1; /* Blob fields are not supported */ > unsigned no_seek : 1; /* Cannot seek anywhere in a Result */ > } > flags; > } >DB_DATABASE; > >All drivers functions that took a DB_DATABASE argument were (or have to be) >modified so that they receive now a DB_DATABASE pointer argument. > >The interface of open_database() driver function has changed. Now this >function must fill the DB_DATABASE structure. > >As the database version is stored in this structure, the 'version' argument of >some driver functions has been removed. > > >(2) Two new functions must be implemented in a database driver: > >* format_blob(): This function transforms a blob value into a string value >that can be inserted into a SQL query. > >* blob_read(): Returns the value of a BLOB field. > >As usual, these functions are documented in the postgresql driver. > >They are void stubs in the sqlite2 driver, as sqlite2 does not support blobs. > > >(3) Two new constants were added that represent new field datatypes: > >* DB_T_SERIAL, for autoincrement fields. >* DB_T_BLOB, for blob fields. > > >(4) A special comment for Nigel :-) > >SQLite driver dataset C++ function is a mess. The guy who wrote it did a very >bad C++ job. > >At the moment, I had to hack them to support blobs. But when you read a blob >field, its contents are copied three times by this API before raising the >Gambas user variables! > >I think all that *@#! must be destroyed, and that I should make an emulation >of direct-access result set in the database component for database backends >that only support forward-only result set. It will benefits ODBC drivers that >are in the same situation. > > >(5) A special comment for Andrea :-) > >The implementation of autoincrement field and blob is just a stub at the >moment. I don't know ODBC enough to do the job. Good luck! > > >(6) A special comment for Daniel :-) > >Same remark for Firebird. I have the source, but I can't compile it because of >missing libraries on Mandriva :-( > >Best regards to all three, > > > hi benoit i don't understand i read the postgres driver and i don't see who call read_blob and format_blob the call is in the driver or in gambas i make more test and it is any time query_fill called for blob!!! daniel From gambas at ...1... Fri Jan 13 21:33:51 2006 From: gambas at ...1... (Benoit Minisini) Date: Fri, 13 Jan 2006 21:33:51 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <43C7D1DC.10103@...413...> References: <200601021116.27366.gambas@...1...> <43C7D1DC.10103@...413...> Message-ID: <200601132133.51899.gambas@...1...> On Friday 13 January 2006 17:14, Daniel wrote: > Benoit Minisini wrote: > >Here is more explanations about the database driver update of 1.9.23: > > > > > >(1) The DB_DATABASE structure has changed. > > > >Before, it was just a cast to the underlying connection handle. Now it is > > the following structure: > > > >typedef > > struct { > > void *handle; /* Connection handle */ > > long version; /* Version of the database system */ > > char *charset; /* Charset used by the database */ > > void *data; /* Can be used by the driver for storing its > > own private data */ > > struct { > > unsigned no_table_type : 1; /* Tables do not have types */ > > unsigned no_serial : 1; /* Serial fields are not supported */ > > unsigned no_blob : 1; /* Blob fields are not supported */ > > unsigned no_seek : 1; /* Cannot seek anywhere in a Result */ > > } > > flags; > > } > >DB_DATABASE; > > > >All drivers functions that took a DB_DATABASE argument were (or have to > > be) modified so that they receive now a DB_DATABASE pointer argument. > > > >The interface of open_database() driver function has changed. Now this > >function must fill the DB_DATABASE structure. > > > >As the database version is stored in this structure, the 'version' > > argument of some driver functions has been removed. > > > > > >(2) Two new functions must be implemented in a database driver: > > > >* format_blob(): This function transforms a blob value into a string value > >that can be inserted into a SQL query. > > > >* blob_read(): Returns the value of a BLOB field. > > > >As usual, these functions are documented in the postgresql driver. > > > >They are void stubs in the sqlite2 driver, as sqlite2 does not support > > blobs. > > > > > >(3) Two new constants were added that represent new field datatypes: > > > >* DB_T_SERIAL, for autoincrement fields. > >* DB_T_BLOB, for blob fields. > > > > > >(4) A special comment for Nigel :-) > > > >SQLite driver dataset C++ function is a mess. The guy who wrote it did a > > very bad C++ job. > > > >At the moment, I had to hack them to support blobs. But when you read a > > blob field, its contents are copied three times by this API before > > raising the Gambas user variables! > > > >I think all that *@#! must be destroyed, and that I should make an > > emulation of direct-access result set in the database component for > > database backends that only support forward-only result set. It will > > benefits ODBC drivers that are in the same situation. > > > > > >(5) A special comment for Andrea :-) > > > >The implementation of autoincrement field and blob is just a stub at the > >moment. I don't know ODBC enough to do the job. Good luck! > > > > > >(6) A special comment for Daniel :-) > > > >Same remark for Firebird. I have the source, but I can't compile it > > because of missing libraries on Mandriva :-( > > > >Best regards to all three, > > hi benoit > i don't understand > i read the postgres driver and i don't see who call read_blob and > format_blob > the call is in the driver or in gambas > i make more test and it is any time query_fill called for blob!!! > > daniel > format_blob() and blob_read() are two new driver functions that are used by the database component. No other function in the driver should call them. query_fill() should return NULL for blob fields. The database component will call blob_read() instead, when detecting that a result field has the DB_T_BLOB datatype, as returned by the field_type() driver function. format_blob() is used by the database component when it creates a SQL query. I hope things are clearer now :-) Regards, -- Benoit Minisini From daniel at ...413... Sat Jan 14 01:20:30 2006 From: daniel at ...413... (Daniel) Date: Sat, 14 Jan 2006 01:20:30 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <200601132133.51899.gambas@...1...> References: <200601021116.27366.gambas@...1...> <43C7D1DC.10103@...413...> <200601132133.51899.gambas@...1...> Message-ID: <43C843CE.70005@...413...> Benoit Minisini wrote: >On Friday 13 January 2006 17:14, Daniel wrote: > > >>Benoit Minisini wrote: >> >> >>>Here is more explanations about the database driver update of 1.9.23: >>> >>> >>>(1) The DB_DATABASE structure has changed. >>> >>>Before, it was just a cast to the underlying connection handle. Now it is >>>the following structure: >>> >>>typedef >>> struct { >>> void *handle; /* Connection handle */ >>> long version; /* Version of the database system */ >>> char *charset; /* Charset used by the database */ >>> void *data; /* Can be used by the driver for storing its >>> own private data */ >>> struct { >>> unsigned no_table_type : 1; /* Tables do not have types */ >>> unsigned no_serial : 1; /* Serial fields are not supported */ >>> unsigned no_blob : 1; /* Blob fields are not supported */ >>> unsigned no_seek : 1; /* Cannot seek anywhere in a Result */ >>> } >>> flags; >>> } >>>DB_DATABASE; >>> >>>All drivers functions that took a DB_DATABASE argument were (or have to >>>be) modified so that they receive now a DB_DATABASE pointer argument. >>> >>>The interface of open_database() driver function has changed. Now this >>>function must fill the DB_DATABASE structure. >>> >>>As the database version is stored in this structure, the 'version' >>>argument of some driver functions has been removed. >>> >>> >>>(2) Two new functions must be implemented in a database driver: >>> >>>* format_blob(): This function transforms a blob value into a string value >>>that can be inserted into a SQL query. >>> >>>* blob_read(): Returns the value of a BLOB field. >>> >>>As usual, these functions are documented in the postgresql driver. >>> >>>They are void stubs in the sqlite2 driver, as sqlite2 does not support >>>blobs. >>> >>> >>>(3) Two new constants were added that represent new field datatypes: >>> >>>* DB_T_SERIAL, for autoincrement fields. >>>* DB_T_BLOB, for blob fields. >>> >>> >>>(4) A special comment for Nigel :-) >>> >>>SQLite driver dataset C++ function is a mess. The guy who wrote it did a >>>very bad C++ job. >>> >>>At the moment, I had to hack them to support blobs. But when you read a >>>blob field, its contents are copied three times by this API before >>>raising the Gambas user variables! >>> >>>I think all that *@#! must be destroyed, and that I should make an >>>emulation of direct-access result set in the database component for >>>database backends that only support forward-only result set. It will >>>benefits ODBC drivers that are in the same situation. >>> >>> >>>(5) A special comment for Andrea :-) >>> >>>The implementation of autoincrement field and blob is just a stub at the >>>moment. I don't know ODBC enough to do the job. Good luck! >>> >>> >>>(6) A special comment for Daniel :-) >>> >>>Same remark for Firebird. I have the source, but I can't compile it >>>because of missing libraries on Mandriva :-( >>> >>>Best regards to all three, >>> >>> >>hi benoit >>i don't understand >>i read the postgres driver and i don't see who call read_blob and >>format_blob >>the call is in the driver or in gambas >>i make more test and it is any time query_fill called for blob!!! >> >>daniel >> >> >> > >format_blob() and blob_read() are two new driver functions that are used by >the database component. No other function in the driver should call them. > >query_fill() should return NULL for blob fields. The database component will >call blob_read() instead, when detecting that a result field has the >DB_T_BLOB datatype, as returned by the field_type() driver function. > >format_blob() is used by the database component when it creates a SQL query. > >I hope things are clearer now :-) > >Regards, > > > yes clear now but i have now a error "type mismatch: wanted string. got blob instead" when i want to fill a tableview and if i use a command look like this result = con1.Exec("select * from mytable") result.MoveLast() PRINT result!my_blob.data it's ok the blob is printed (blob_read and blob_unquote is called) daniel From gambas at ...1... Sat Jan 14 08:13:25 2006 From: gambas at ...1... (Benoit Minisini) Date: Sat, 14 Jan 2006 08:13:25 +0100 Subject: [Gambas-devel] Database driver update in 1.9.23 In-Reply-To: <43C843CE.70005@...413...> References: <200601021116.27366.gambas@...1...> <200601132133.51899.gambas@...1...> <43C843CE.70005@...413...> Message-ID: <200601140813.26131.gambas@...1...> On Saturday 14 January 2006 01:20, Daniel wrote: > > yes clear now > but i have now a error "type mismatch: wanted string. got blob instead" > when i want to fill a tableview > and if i use a command look like this > result = con1.Exec("select * from mytable") > result.MoveLast() > PRINT result!my_blob.data > it's ok the blob is printed (blob_read and blob_unquote is called) > > daniel > The value of a Blob field is a Blob object. I did that because: - It seems that the Blob thing is something that is not standardized (again). So they are managed differently between all database systems. - I wanted to allow the user to store gambas object in Blob fields transparently in the future. But now I realized that maybe I can make Blob field return a string directly. I will see... :-) Regards, -- Benoit Minisini From brian at ...418... Sun Jan 29 12:26:11 2006 From: brian at ...418... (Christopher Brian Jack) Date: Sun, 29 Jan 2006 03:26:11 -0800 (PST) Subject: [Gambas-devel] component API and miscellany Message-ID: <20060129031632.A63726@...419...> Is there a stub component available for doing the typical "Hello World!" application as a component (in other words to make sure it is properly talking to the Gambas executive and other administrivia required on the part of Gambas component). It's been mentioned people want to do games in Gambas and I have the same intention (in fact the project I am working on on the source side of the coin is indeed a game project and I want to have things like AI and all that stuff, and am looking highly into streaming video and all the like). A library knowns as Hermes will assist in pixel format changing (RGB(a) to YUVxy etc) which is good because the Vidix support requires YUVxy input. As far as I know Vidix works by having the client make a window blue (0x0000ff) then telling the driver that the blue area is the target for the video stream. I know when I've dragged around a Vidix window around in MPlayer very quickly that I often see a blue rectanlge playing catchup with the window so obviously some sort of color keying is going on with the operation of Vidix. Other tools like libMPEG can provide the necessary video signal for the Vidix layer. Has anyone else given these issues consideration. .=================================================. | Christopher BRIAN Jack aka "Gau of the Veldt" | +=================================================' | brian _AT_ brians-anime _DOT_ com | brian _AT_ animemayhem _DOT_ com | brian _AT_ nall.brians-anime _DOT_ com | brian _AT_ ruby.brians-anime _DOT_ com | gau_veldt _AT_ hotmail _DOT_ com `=================================================- Hi Spambots, my email address is sputnik at ...418... From lordheavy at ...141... Sun Jan 29 14:16:44 2006 From: lordheavy at ...141... (Laurent Carlier) Date: Sun, 29 Jan 2006 14:16:44 +0100 Subject: [Gambas-devel] component API and miscellany In-Reply-To: <20060129031632.A63726@...419...> References: <20060129031632.A63726@...419...> Message-ID: <200601291416.44580.lordheavy@...141...> Le Dimanche 29 Janvier 2006 12:26, Christopher Brian Jack a ?crit?: > Is there a stub component available for doing the typical "Hello World!" > application as a component (in other words to make sure it is properly > talking to the Gambas executive and other administrivia required on the > part of Gambas component). > > It's been mentioned people want to do games in Gambas and I have the same > intention (in fact the project I am working on on the source side of the > coin is indeed a game project and I want to have things like AI and all > that stuff, and am looking highly into streaming video and all the like). > > A library knowns as Hermes will assist in pixel format changing (RGB(a) to > YUVxy etc) which is good because the Vidix support requires YUVxy input. > As far as I know Vidix works by having the client make a window blue > (0x0000ff) then telling the driver that the blue area is the target for > the video stream. I know when I've dragged around a Vidix window around > in MPlayer very quickly that I often see a blue rectanlge playing catchup > with the window so obviously some sort of color keying is going on with > the operation of Vidix. > > Other tools like libMPEG can provide the necessary video signal for the > Vidix layer. > > Has anyone else given these issues consideration. > I guess perhaps i should add yuv overlay support to sdl componant .... I know sdl support overlay surfaces but i don't know really how it work :-/ But i can be a pretty good idea to support these. Regards, -- jabber : lordheavy at ...298... mail : lordheavymREMOVEME at ...176... From brian at ...418... Sun Jan 29 14:26:03 2006 From: brian at ...418... (Christopher Brian Jack) Date: Sun, 29 Jan 2006 05:26:03 -0800 (PST) Subject: [Gambas-devel] component API and miscellany In-Reply-To: <200601291416.44580.lordheavy@...141...> References: <20060129031632.A63726@...419...> <200601291416.44580.lordheavy@...141...> Message-ID: <20060129052117.Y64697@...419...> On Sun, 29 Jan 2006, Laurent Carlier wrote: > Le Dimanche 29 Janvier 2006 12:26, Christopher Brian Jack a ?crit?: > > Is there a stub component available for doing the typical "Hello World!" > > application as a component (in other words to make sure it is properly > > talking to the Gambas executive and other administrivia required on the > > part of Gambas component). > > > > It's been mentioned people want to do games in Gambas and I have the same > > intention (in fact the project I am working on on the source side of the > > coin is indeed a game project and I want to have things like AI and all > > that stuff, and am looking highly into streaming video and all the like). > > > > A library knowns as Hermes will assist in pixel format changing (RGB(a) to > > YUVxy etc) which is good because the Vidix support requires YUVxy input. > > As far as I know Vidix works by having the client make a window blue > > (0x0000ff) then telling the driver that the blue area is the target for > > the video stream. I know when I've dragged around a Vidix window around > > in MPlayer very quickly that I often see a blue rectanlge playing catchup > > with the window so obviously some sort of color keying is going on with > > the operation of Vidix. > > > > Other tools like libMPEG can provide the necessary video signal for the > > Vidix layer. > > > > Has anyone else given these issues consideration. > > > > I guess perhaps i should add yuv overlay support to sdl componant .... I know > sdl support overlay surfaces but i don't know really how it work :-/ > > But i can be a pretty good idea to support these. Here's a go-one-further: those wonderful vector drawing controls... What if the vector vertices could be manipulated progrmatically and the output passed through MPEGlib to encode as an MPEG-2 stream. One could even write a Gambas application to do the vector editing and create a "script" to control the vectors (Flash seem familiar here anyone???) allowing animation either by running the script on the vector canvas or use the MPEGlib to play it as a streaming video. Whether this could be done via Gambas program(s) themselves or if a component would be needed would remain to be seen. .=================================================. | Christopher BRIAN Jack aka "Gau of the Veldt" | +=================================================' | brian _AT_ brians-anime _DOT_ com | brian _AT_ animemayhem _DOT_ com | brian _AT_ nall.brians-anime _DOT_ com | brian _AT_ ruby.brians-anime _DOT_ com | gau_veldt _AT_ hotmail _DOT_ com `=================================================- Hi Spambots, my email address is sputnik at ...418... From brian at ...418... Sun Jan 29 14:33:16 2006 From: brian at ...418... (Christopher Brian Jack) Date: Sun, 29 Jan 2006 05:33:16 -0800 (PST) Subject: [Gambas-devel] component API and miscellany In-Reply-To: <200601291416.44580.lordheavy@...141...> References: <20060129031632.A63726@...419...> <200601291416.44580.lordheavy@...141...> Message-ID: <20060129052632.U64697@...419...> On Sun, 29 Jan 2006, Laurent Carlier wrote: > I guess perhaps i should add yuv overlay support to sdl componant .... I know > sdl support overlay surfaces but i don't know really how it work :-/ > > But i can be a pretty good idea to support these. On my system in particular there does not seem to be a symmetry between SDL supporting overlays and the X environment support of XVidix/XVideo. I'm going by my experience with MPlayer but what gets me is that the XVideo/XVidix documentation is difficult to find. I'm wondering where the MPlayer folks found it? My preference is for an independant XVidix/XVideo component since it will interoperate with either of the selected Form interfaces (Qt vs. Gtk) and that SDL does not provide the ability to use forms if used for anything more than sound support. On this note I still would like to see a "Hello, World!" component stub with instructions to get the Gambas build to compile it and make the exported class available. This simplest component I can think of would make a HelloWorld class with a single method hello() (AS String) that would return the text "Hello, World!" I think this would be a useful stub for potential component builders to see what is involved. .=================================================. | Christopher BRIAN Jack aka "Gau of the Veldt" | +=================================================' | brian _AT_ brians-anime _DOT_ com | brian _AT_ animemayhem _DOT_ com | brian _AT_ nall.brians-anime _DOT_ com | brian _AT_ ruby.brians-anime _DOT_ com | gau_veldt _AT_ hotmail _DOT_ com `=================================================- Hi Spambots, my email address is sputnik at ...418... From lordheavy at ...141... Sun Jan 29 14:46:08 2006 From: lordheavy at ...141... (Laurent Carlier) Date: Sun, 29 Jan 2006 14:46:08 +0100 Subject: [Gambas-devel] component API and miscellany In-Reply-To: <20060129052632.U64697@...419...> References: <20060129031632.A63726@...419...> <200601291416.44580.lordheavy@...141...> <20060129052632.U64697@...419...> Message-ID: <200601291446.08871.lordheavy@...141...> Le Dimanche 29 Janvier 2006 14:33, Christopher Brian Jack a ?crit?: > > On my system in particular there does not seem to be a symmetry between > SDL supporting overlays and the X environment support of XVidix/XVideo. > I'm going by my experience with MPlayer but what gets me is that the > XVideo/XVidix documentation is difficult to find. I'm wondering where the > MPlayer folks found it? > > My preference is for an independant XVidix/XVideo component since it will > interoperate with either of the selected Form interfaces (Qt vs. Gtk) and > that SDL does not provide the ability to use forms if used for anything > more than sound support. Perhaps take a look at libxine ? > > On this note I still would like to see a "Hello, World!" component stub > with instructions to get the Gambas build to compile it and make the > exported class available. This simplest component I can think of would > make a HelloWorld class with a single method hello() (AS String) that > would return the text "Hello, World!" I think this would be a useful stub > for potential component builders to see what is involved. > I guess you can take a look at the pcre or crypt component, and of course if you want make your component, you can take a look at the make-component script (in the TEMPLATE dir). The documentation is of course a good help. Regards, -- jabber : lordheavy at ...298... mail : lordheavymREMOVEME at ...176... From brian at ...418... Sun Jan 29 16:36:22 2006 From: brian at ...418... (Christopher Brian Jack) Date: Sun, 29 Jan 2006 07:36:22 -0800 (PST) Subject: [Gambas-devel] Vector Graphics (needs more versatility!!!) In-Reply-To: <200601291446.08871.lordheavy@...141...> References: <20060129031632.A63726@...419...> <200601291416.44580.lordheavy@...141...> <20060129052632.U64697@...419...> <200601291446.08871.lordheavy@...141...> Message-ID: <20060129071827.B65241@...419...> I have noticed the Drawing control can only use pre-existing SVG files. One useful feature might be either (1) accept an SVG stored in a String or even better (2) accept an SVG stored in a String array or even better (3) accept a Collection of SVG strings and have "object" support (where the names of the "objects" are the keys in the Collection "array" and the control could be instructed to show or hide specific "objects". I'm trying to think forward to ways to use this control for vectorized animation which would be a powerful addition. It would be great if "Vectorized Entity" objects could be created that generate their SVG strings based on their vertex settings, color settings and such then you could make the entities move, animate limbs or other parts, etc... It would be a Made-in-Gambas solution too! Vector animators would have the choice of Windoze-only Flash proprioware (closed source, no reverse-engineering allowed) or potentially cross-platform Gambas-based vector animation openware (by openware I mean "the hood is open to look inside" ware, that is, free as in freedom). I can see big things possible were this functionality used in conjunction with, say, gb.net to do a fully-animated multi-player game. For 2D games with animated characters and/or the desire to do full screen cutscenes without having to render video, it's certainly the way to go. I've seen Anime contests where the entrants only used Shockwave/Flash to do the animation and I liked what I saw from the entrants. .=================================================. | Christopher BRIAN Jack aka "Gau of the Veldt" | +=================================================' | brian _AT_ brians-anime _DOT_ com | brian _AT_ animemayhem _DOT_ com | brian _AT_ nall.brians-anime _DOT_ com | brian _AT_ ruby.brians-anime _DOT_ com | gau_veldt _AT_ hotmail _DOT_ com `=================================================- Hi Spambots, my email address is sputnik at ...418... From gambas at ...1... Sun Jan 29 16:52:47 2006 From: gambas at ...1... (Benoit Minisini) Date: Sun, 29 Jan 2006 16:52:47 +0100 Subject: [Gambas-devel] Vector Graphics (needs more versatility!!!) In-Reply-To: <20060129071827.B65241@...419...> References: <20060129031632.A63726@...419...> <200601291446.08871.lordheavy@...141...> <20060129071827.B65241@...419...> Message-ID: <200601291652.47491.gambas@...1...> On Sunday 29 January 2006 16:36, Christopher Brian Jack wrote: > I have noticed the Drawing control can only use pre-existing SVG files. > One useful feature might be either (1) accept an SVG stored in a String or > even better (2) accept an SVG stored in a String array or even better (3) > accept a Collection of SVG strings and have "object" support (where the > names of the "objects" are the keys in the Collection "array" and the > control could be instructed to show or hide specific "objects". > > I'm trying to think forward to ways to use this control for vectorized > animation which would be a powerful addition. It would be great if > "Vectorized Entity" objects could be created that generate their SVG > strings based on their vertex settings, color settings and such then you > could make the entities move, animate limbs or other parts, etc... The SVG support of QT3 is experimental. Things will be better with QT4. > > It would be a Made-in-Gambas solution too! Vector animators would have > the choice of Windoze-only Flash proprioware (closed source, no > reverse-engineering allowed) or potentially cross-platform Gambas-based > vector animation openware (by openware I mean "the hood is open to look > inside" ware, that is, free as in freedom). I can see big things possible > were this functionality used in conjunction with, say, gb.net to do a > fully-animated multi-player game. As I said before, QT4 seems to support SVG completely (at least better than QT3), and there is a free Flash player replacement being developed by GNU. So I think it just a matter of time to have a complete animated vector drawing solutions. Regards, -- Benoit Minisini From sumangalaknair at ...7... Sun Jan 29 18:31:19 2006 From: sumangalaknair at ...7... (sumangala nair) Date: Sun, 29 Jan 2006 09:31:19 -0800 (PST) Subject: [Gambas-devel] A report tool query Message-ID: <20060129173119.73838.qmail@...421...> Sir, I almost completed a simple designer,with the controls of gambas itself(with no exporting or anything of that sort)The properties have been set by me.It was implemented using XSl stylesheet with minimal formatting.It gives an html preview. But my sir Mr. Madhu V.T wanted a pdf output for the reports.Rather than using the renderer of konqueror i've decided on using another technique by using a pdf formatter tool.can u suggest any othe technique.Xsl-fo was a technique to format the pages.But it is a bit tough since it doesn't support html along with it.The formatter shows error on using html.Can u suggest any other technique. sumangala K.nair --------------------------------- Yahoo! Autos. Looking for a sweet ride? Get pricing, reviews, & more on new and used cars. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gambas at ...1... Sun Jan 29 18:54:10 2006 From: gambas at ...1... (Benoit Minisini) Date: Sun, 29 Jan 2006 18:54:10 +0100 Subject: [Gambas-devel] A report tool query In-Reply-To: <20060129173119.73838.qmail@...421...> References: <20060129173119.73838.qmail@...421...> Message-ID: <200601291854.10540.gambas@...1...> On Sunday 29 January 2006 18:31, sumangala nair wrote: > Sir, > I almost completed a simple designer,with the controls of gambas > itself(with no exporting or anything of that sort)The properties have > been > set by me.It was implemented using XSl stylesheet with minimal > formatting.It gives an html preview. > > But my sir Mr. Madhu V.T wanted a pdf output for the > reports.Rather than > using the renderer of konqueror i've decided on using another > technique by > using a pdf formatter tool.can u suggest any othe technique.Xsl-fo > was a > technique to format the pages.But it is a bit tough since it doesn't > support html along with it.The formatter shows error on using > html.Can u > suggest any other technique. sumangala K.nair > > If you have HTML output, maybe you can ask a browser to print it for you in a postcript file (and then convert the ps to pdf). Maybe you can generate an OpenOffice document (which is an XML format), and print the result? Anyway, I think it won't be simple... Regards, -- Benoit Minisini From sourceforge-raindog2 at ...19... Sun Jan 29 20:31:09 2006 From: sourceforge-raindog2 at ...19... (Rob Kudla) Date: Sun, 29 Jan 2006 14:31:09 -0500 Subject: [Gambas-devel] component API and miscellany In-Reply-To: <20060129052632.U64697@...419...> References: <20060129031632.A63726@...419...> <200601291416.44580.lordheavy@...141...> <20060129052632.U64697@...419...> Message-ID: <200601291431.09502.sourceforge-raindog2@...19...> On Sun January 29 2006 08:33, Christopher Brian Jack wrote: > On this note I still would like to see a "Hello, World!" > component stub with instructions to get the Gambas build to > compile it and make the exported class available. This If you look in the Gambas source tree under comp/src, you'll find three components written in Gambas, including the .component and other special files necessary for building each of them. I guess you could make a component that did nothing but provide a class with a "Hello, world" function, but I think these three are pretty good examples, if not all that well documented yet. I'd write the documentation myself, but my only Gambas component programming has been in C. Rob From brian at ...418... Sun Jan 29 23:50:29 2006 From: brian at ...418... (Christopher Brian Jack) Date: Sun, 29 Jan 2006 14:50:29 -0800 (PST) Subject: [Gambas-devel] component API and miscellany In-Reply-To: <200601291431.09502.sourceforge-raindog2@...19...> References: <20060129031632.A63726@...419...> <200601291416.44580.lordheavy@...141...> <20060129052632.U64697@...419...> <200601291431.09502.sourceforge-raindog2@...19...> Message-ID: <20060129144746.W65524@...419...> On Sun, 29 Jan 2006, Rob Kudla wrote: > If you look in the Gambas source tree under comp/src, you'll find > three components written in Gambas, including the .component and > other special files necessary for building each of them. I > guess you could make a component that did nothing but provide a > class with a "Hello, world" function, but I think these three > are pretty good examples, if not all that well documented yet. > > I'd write the documentation myself, but my only Gambas component > programming has been in C. Some of the component ideas I had would need to be done in C/C++ due to performance requirements (such as alpha merges and other tedium) or interfacing to libMPEG XVidix or similar connections for streaming video into a color keyed DrawingArea. Brian