From yves.cloutier at gmail.com Sat Sep 3 05:13:26 2022 From: yves.cloutier at gmail.com (Yves Cloutier) Date: Fri, 2 Sep 2022 22:13:26 -0500 Subject: [Gambas-user] Deployment Options for Gambas Web Apps Message-ID: Hello, does anyone have any experience and recommended options for deploying gambas web apps? Are there any free options? Are there any detailed instructions on how to deploy it? Also, here is an interesting link i found for how to create microservices with gambas: https://www.linkedin.com/pulse/deployable-microservice-using-gambas-vinode-singh-ujlain -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at westwoodsvcs.com Sat Sep 3 02:39:26 2022 From: brian at westwoodsvcs.com (Brian G) Date: Fri, 2 Sep 2022 17:39:26 -0700 (PDT) Subject: [Gambas-user] Error When printing to Terminal view, MayBe? Message-ID: <1731528593.76470.1662165566724.JavaMail.zimbra@westwoodsvcs.com> The console keeps printing these messges when printing to a terminal view gb.form.terminal: warning: String.Left() failed: 69 70 gb.form.terminal: warning: String.Left() failed: 69 70 gb.form.terminal: warning: String.Left() failed: 69 70 gb.form.terminal: warning: String.Left() failed: 69 70 gb.form.terminal: warning: String.Left() failed: 69 70 gb.form.terminal: warning: String.Left() failed: 69 70 gb.form.terminal: warning: String.Left() failed: 69 70 Is this my error some how or a bug, not sure? "Failure is the key to success; each mistake teaches us something" .. Morihei Ueshiba Brian G -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sat Sep 3 10:30:49 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 3 Sep 2022 09:30:49 +0100 Subject: [Gambas-user] Error When printing to Terminal view, MayBe? In-Reply-To: <1731528593.76470.1662165566724.JavaMail.zimbra@westwoodsvcs.com> References: <1731528593.76470.1662165566724.JavaMail.zimbra@westwoodsvcs.com> Message-ID: Not getting that message on any of my terminals m8. Is it all the time or some particular condition involved? Respects BruceS On Sat, 3 Sept 2022 at 05:31, Brian G wrote: > The console keeps printing these messges when printing to a terminal view > > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > > Is this my error some how or a bug, not sure? > > > "Failure is the key to success; > each mistake teaches us something" .. Morihei Ueshiba > Brian G > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Sat Sep 3 10:43:33 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 3 Sep 2022 10:43:33 +0200 Subject: [Gambas-user] Error When printing to Terminal view, MayBe? In-Reply-To: <1731528593.76470.1662165566724.JavaMail.zimbra@westwoodsvcs.com> References: <1731528593.76470.1662165566724.JavaMail.zimbra@westwoodsvcs.com> Message-ID: Le 03/09/2022 ? 02:39, Brian G a ?crit?: > The console keeps printing these messges when printing to a terminal view > > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > gb.form.terminal: warning: String.Left() failed: 69 70 > > Is this my error some how or a bug, not sure? > > > "Failure is the key to success; > ?each mistake teaches us something" ?.. Morihei Ueshiba > Brian G > If you keep getting it, can you make a project that reproduces the bug? -- Beno?t Minisini. From bagoneo at libero.it Sat Sep 3 14:26:11 2022 From: bagoneo at libero.it (gian) Date: Sat, 3 Sep 2022 14:26:11 +0200 Subject: [Gambas-user] Query for sorting not work Message-ID: Hi List, Is anyone able to explain to me why the most correct query (I think) for sorting the columns is the one that is not working? See attached, to see the malfunction you need to comment out the first sort routine and uncomment the second one. Thank you Gianluigi -------------- next part -------------- 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 QYIECRIkSJD4T/B/AKg1Ad0AoAAA From brian at westwoodsvcs.com Sat Sep 3 17:22:42 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Sat, 03 Sep 2022 18:22:42 +0300 Subject: [Gambas-user] =?utf-8?q?Error_When_printing_to_Terminal_view=2C_?= =?utf-8?q?MayBe=3F?= In-Reply-To: References: <1731528593.76470.1662165566724.JavaMail.zimbra@westwoodsvcs.com> Message-ID: <1662218562.817832719@f42.my.com> It seems random when I am printing quickly to the terminal. Or feeding it through a pipe.. Ummm, I guess I will have to see if I can replicate it in a short app... -- Thanks Brian G Saturday, 03 September 2022, 01:32AM -07:00 from Bruce Steers bsteers4 at gmail.com : >Not getting that message on any of my terminals m8. > >Is it all the time or some particular condition involved? > >Respects >BruceS > > >On Sat, 3 Sept 2022 at 05:31, Brian G < brian at westwoodsvcs.com> wrote: >>The console keeps printing these messges when printing to a terminal view >> >>gb.form.terminal: warning: String.Left() failed: 69 70 >>gb.form.terminal: warning: String.Left() failed: 69 70 >>gb.form.terminal: warning: String.Left() failed: 69 70 >>gb.form.terminal: warning: String.Left() failed: 69 70 >>gb.form.terminal: warning: String.Left() failed: 69 70 >>gb.form.terminal: warning: String.Left() failed: 69 70 >>gb.form.terminal: warning: String.Left() failed: 69 70 >> >>Is this my error some how or a bug, not sure? >> >> >>"Failure is the key to success; >>?each mistake teaches us something" ?.. Morihei Ueshiba >>Brian G >>----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > >----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From hans at gambas-buch.de Sat Sep 3 17:49:06 2022 From: hans at gambas-buch.de (Hans Lehmann) Date: Sat, 3 Sep 2022 17:49:06 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: Message-ID: An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gridviewsort4gian.tar.gz Type: application/gzip Size: 13103 bytes Desc: not available URL: From hans at gambas-buch.de Sat Sep 3 18:14:56 2022 From: hans at gambas-buch.de (Hans Lehmann) Date: Sat, 3 Sep 2022 18:14:56 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: Message-ID: An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: tDxaGazutpfhq7WE.png Type: image/png Size: 19660 bytes Desc: not available URL: From t.lee.davidson at gmail.com Sat Sep 3 18:26:53 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sat, 3 Sep 2022 12:26:53 -0400 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: Message-ID: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> On 9/3/22 08:26, gian via User wrote: > Hi List, > > Is anyone able to explain to me why the most correct query (I think) for sorting the columns is the one that is not working? > See attached, to see the malfunction you need to comment out the first sort routine and uncomment the second one. > > Thank you > > Gianluigi It does not work because SQLite does not understand a single-quoted column name. Data values should be single-quoted but not column names. I think the code misuses the Connection.Find method. Try using the .Exec method with the standard Subst function, eg.: If GridView1.Columns.Ascending Then $hResult = $hConn.Exec(Subst("select * from tuser ORDER BY &1 ASC", aArg[$iCurrentColumn])) Else $hResult = $hConn.Exec(Subst("select * from tuser ORDER BY &1 DESC", aArg[$iCurrentColumn])) Endif -- Lee From t.lee.davidson at gmail.com Sat Sep 3 18:53:41 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sat, 3 Sep 2022 12:53:41 -0400 Subject: [Gambas-user] Deployment Options for Gambas Web Apps In-Reply-To: References: Message-ID: On 9/2/22 23:13, Yves Cloutier wrote: > Hello, does anyone have any experience and recommended options for deploying gambas web apps? > > Are there any free options? > > Are there any detailed instructions on how to deploy it? > > Also, here is an interesting link i found for how to create microservices with gambas: > > https://www.linkedin.com/pulse/deployable-microservice-using-gambas-vinode-singh-ujlain > As far as I know, to deploy a Gambas web app, one simply uploads it to an appropriate server. Or, did you actually mean recommended options for *distributing* Gambas web apps, as in making them publicly available for download? If so, then perhaps sites like hotscripts.com could be persuaded to add a Gambas category. Also, I seem to recall talk of making the Gambas Farm publicly accessible, and of maintaining a curated list of Gambas apps in a Git repository. -- Lee From benoit.minisini at gambas-basic.org Sat Sep 3 19:19:07 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 3 Sep 2022 19:19:07 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> Message-ID: Le 03/09/2022 ? 18:26, T Lee Davidson a ?crit?: > On 9/3/22 08:26, gian via User wrote: >> Hi List, >> >> Is anyone able to explain to me why the most correct query (I think) >> for sorting the columns is the one that is not working? >> See attached, to see the malfunction you need to comment out the first >> sort routine and uncomment the second one. >> >> Thank you >> >> Gianluigi > > It does not work because SQLite does not understand a single-quoted > column name. Data values should be single-quoted but not column names. I > think the code misuses the Connection.Find method. Try using the .Exec > method with the standard Subst function, eg.: > > ? If GridView1.Columns.Ascending Then > ??? $hResult = $hConn.Exec(Subst("select * from tuser ORDER BY &1 ASC", > aArg[$iCurrentColumn])) > ? Else > ??? $hResult = $hConn.Exec(Subst("select * from tuser ORDER BY &1 > DESC", aArg[$iCurrentColumn])) > ? Endif > Oops, don't do that. The Exec() method substitutes using the Connection.Subst() method, that works for SQL values only. For SQL column names, you must use the Connection.Quote() function. There is even a boolean argument for quoting table names, because on some SQLs, you don't quote table names and column names the same way! SQL... I love you! Regards, -- Beno?t Minisini. From bagoneo at libero.it Sat Sep 3 23:08:59 2022 From: bagoneo at libero.it (gian) Date: Sat, 3 Sep 2022 23:08:59 +0200 Subject: [Gambas-user] Error compiling devel Message-ID: <8074cece-f751-f93f-4997-385444a645f3@libero.it> Hi Benoit, Compiling from git the latest devel version, I get this error on the make command: csvgimage.cpp: In function ?const char* load_file(CSVGIMAGE*, const char*, int)?: csvgimage.cpp:145:2: error: ?rsvg_handle_get_intrinsic_size_in_pixels? was not declared in this scope; did you mean ?rsvg_handle_get_intrinsic_dimensions?? 145 | rsvg_handle_get_intrinsic_size_in_pixels(handle, &THIS->width, &THIS->height); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | rsvg_handle_get_intrinsic_dimensions make[5]: *** [Makefile:1202: gb_gtk_la-csvgimage.lo] Errore 1 make[5]: uscita dalla directory ?/home/gian/gambasdevel/gb.gtk/src? make[4]: *** [Makefile:1327: all-recursive] Errore 1 make[4]: uscita dalla directory ?/home/gian/gambasdevel/gb.gtk/src? make[3]: *** [Makefile:449: all-recursive] Errore 1 make[3]: uscita dalla directory ?/home/gian/gambasdevel/gb.gtk? make[2]: *** [Makefile:381: all] Errore 2 make[2]: uscita dalla directory ?/home/gian/gambasdevel/gb.gtk? make[1]: *** [Makefile:443: all-recursive] Errore 1 make[1]: uscita dalla directory ?/home/gian/gambasdevel? make: *** [Makefile:384: all] Errore 2 Regards Gianluigi From t.lee.davidson at gmail.com Sun Sep 4 00:00:49 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sat, 3 Sep 2022 18:00:49 -0400 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> Message-ID: On 9/3/22 13:19, Benoit Minisini wrote: > Le 03/09/2022 ? 18:26, T Lee Davidson a ?crit?: >> On 9/3/22 08:26, gian via User wrote: >>> Hi List, >>> >>> Is anyone able to explain to me why the most correct query (I think) for sorting the columns is the one that is not working? >>> See attached, to see the malfunction you need to comment out the first sort routine and uncomment the second one. >>> >>> Thank you >>> >>> Gianluigi >> >> It does not work because SQLite does not understand a single-quoted column name. Data values should be single-quoted but not >> column names. I think the code misuses the Connection.Find method. Try using the .Exec method with the standard Subst >> function, eg.: >> >> ?? If GridView1.Columns.Ascending Then >> ???? $hResult = $hConn.Exec(Subst("select * from tuser ORDER BY &1 ASC", aArg[$iCurrentColumn])) >> ?? Else >> ???? $hResult = $hConn.Exec(Subst("select * from tuser ORDER BY &1 DESC", aArg[$iCurrentColumn])) >> ?? Endif >> > > Oops, don't do that. > > The Exec() method substitutes using the Connection.Subst() method, that works for SQL values only. Thank you for the clarification, Beno?t. The Find() method also obviously substitutes using the Connection.Subst() method which is why I suggested using DB.Exec() with the standard Subst() function, which does no quoting, thereby preventing the automatic use of Connection.Subst(). > For SQL column names, you must use the Connection.Quote() function. There is even a boolean argument for quoting table names, > because on some SQLs, you don't quote table names and column names the same way! Hmmm, so, a better query example would be: $hResult = $hConn.Exec("select * from tuser ORDER BY & " $hConn.Quote(aArg[$iCurrentColumn]) & " ASC") Correct? -- Lee From bagoneo at libero.it Sun Sep 4 00:11:01 2022 From: bagoneo at libero.it (gian) Date: Sun, 4 Sep 2022 00:11:01 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> Message-ID: Il 04/09/22 00:00, T Lee Davidson ha scritto: > On 9/3/22 13:19, Benoit Minisini wrote: >> Le 03/09/2022 ? 18:26, T Lee Davidson a ?crit?: >>> On 9/3/22 08:26, gian via User wrote: >>>> Hi List, >>>> >>>> Is anyone able to explain to me why the most correct query (I think) >>>> for sorting the columns is the one that is not working? >>>> See attached, to see the malfunction you need to comment out the >>>> first sort routine and uncomment the second one. >>>> >>>> Thank you >>>> >>>> Gianluigi >>> >>> It does not work because SQLite does not understand a single-quoted >>> column name. Data values should be single-quoted but not column >>> names. I think the code misuses the Connection.Find method. Try using >>> the .Exec method with the standard Subst function, eg.: >>> >>> ?? If GridView1.Columns.Ascending Then >>> ???? $hResult = $hConn.Exec(Subst("select * from tuser ORDER BY &1 >>> ASC", aArg[$iCurrentColumn])) >>> ?? Else >>> ???? $hResult = $hConn.Exec(Subst("select * from tuser ORDER BY &1 >>> DESC", aArg[$iCurrentColumn])) >>> ?? Endif >>> >> >> Oops, don't do that. >> >> The Exec() method substitutes using the Connection.Subst() method, >> that works for SQL values only. > > Thank you for the clarification, Beno?t. > > The Find() method also obviously substitutes using the > Connection.Subst() method which is why I suggested using DB.Exec() with > the standard Subst() function, which does no quoting, thereby preventing > the automatic use of Connection.Subst(). > > >> For SQL column names, you must use the Connection.Quote() function. >> There is even a boolean argument for quoting table names, because on >> some SQLs, you don't quote table names and column names the same way! > > Hmmm, so, a better query example would be: > > $hResult = $hConn.Exec("select * from tuser ORDER BY & " > $hConn.Quote(aArg[$iCurrentColumn]) & " ASC") > > Correct? > > Hi List, Thank you all for your responses, especially Benoit '' Way now work well? ;-D Public Sub GridView1_Sort() Dim aArg As String[] = ["uskey", "usnam", "ussur"] Dim sTable, sColumn, sSQL As String db.Debug = True sTable = "tuser" sColumn = aArg[$iCurrentColumn] sSQL = "SELECT * FROM " & DB.Quote(sTable, True) & " ORDER BY " & DB.Quote(sColumn, False) If GridView1.Columns.Ascending Then $hResult = $hConn.Exec(sSQL & " ASC") Else $hResult = $hConn.Exec(sSQL & " DESC") Endif GridView1.Rows.Count = $hResult.Count GridView1.Columns.Width = -1 Catch Print Error.Text End Regards Gianluigi From vuott at tutanota.com Sun Sep 4 01:10:10 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Sun, 4 Sep 2022 01:10:10 +0200 (CEST) Subject: [Gambas-user] Error compiling devel In-Reply-To: <8074cece-f751-f93f-4997-385444a645f3@libero.it> References: <8074cece-f751-f93f-4997-385444a645f3@libero.it> Message-ID: Hello, I confirm the problem: I obtain same error. Regards vuott 3 set 2022, 23:08 da user at lists.gambas-basic.org: > Hi Benoit, > > Compiling from git the latest devel version, I get this error on the make command: > > csvgimage.cpp: In function ?const char* load_file(CSVGIMAGE*, const char*, int)?: > csvgimage.cpp:145:2: error: ?rsvg_handle_get_intrinsic_size_in_pixels? was not declared in this scope; did you mean ?rsvg_handle_get_intrinsic_dimensions?? > 145 | rsvg_handle_get_intrinsic_size_in_pixels(handle, &THIS->width, &THIS->height); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | rsvg_handle_get_intrinsic_dimensions > make[5]: *** [Makefile:1202: gb_gtk_la-csvgimage.lo] Errore 1 > make[5]: uscita dalla directory ?/home/gian/gambasdevel/gb.gtk/src? > make[4]: *** [Makefile:1327: all-recursive] Errore 1 > make[4]: uscita dalla directory ?/home/gian/gambasdevel/gb.gtk/src? > make[3]: *** [Makefile:449: all-recursive] Errore 1 > make[3]: uscita dalla directory ?/home/gian/gambasdevel/gb.gtk? > make[2]: *** [Makefile:381: all] Errore 2 > make[2]: uscita dalla directory ?/home/gian/gambasdevel/gb.gtk? > make[1]: *** [Makefile:443: all-recursive] Errore 1 > make[1]: uscita dalla directory ?/home/gian/gambasdevel? > make: *** [Makefile:384: all] Errore 2 > > Regards > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Sun Sep 4 09:41:54 2022 From: bagoneo at libero.it (gian) Date: Sun, 4 Sep 2022 09:41:54 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> Message-ID: <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> Il 03/09/22 19:19, Benoit Minisini ha scritto: > Oops, don't do that. > > The Exec() method substitutes using the Connection.Subst() method, that > works for SQL values only. > > For SQL column names, you must use the Connection.Quote() function. > There is even a boolean argument for quoting table names, because on > some SQLs, you don't quote table names and column names the same way! > > SQL... I love you! > > Regards, > > -- > Beno?t Minisini. Hi Benoit, If I understand your suggestion correctly the sort routine: '--------------------------------------------------------------------- '' Works correctly on any database (MySQL, PostgreSQL, SQLite, ODBC) Public Sub GridView1_Sort() Dim aArg As String[] = ["uskey", "usnam", "ussur"] Dim sTable, sColumn, sSQL As String Dim sSort As String = " ASC" db.Debug = True sTable = "tuser" sColumn = aArg[$iCurrentColumn] sSQL = "SELECT * FROM " & DB.Quote(sTable, True) & " ORDER BY " & DB.Quote(sColumn, False) If Not GridView1.Columns.Ascending Then sSort = " DESC" $hResult = $hConn.Exec(sSQL & sSort) GridView1.Rows.Count = $hResult.Count GridView1.Columns.Width = -1 Catch Print Error.Text End '--------------------------------- works correctly on all databases. While the routine: '--------------------------------- '' Is this routine incorrect? Public Sub GridView1_Sort() Dim sSort As String db.Debug = True If GridView1.Columns.Ascending Then sSort = "ORDER BY &1 ASC" Else sSort = "ORDER BY &1 DESC" Endif $hResult = $hConn.Find("tuser", sSort, $iCurrentColumn + 1) GridView1.Rows.Count = $hResult.Count GridView1.Columns.Width = -1 Catch Print Error.Text End '--------------------------------- does not work correctly, right? Project attached Thank you and regards Gianluigi From bagoneo at libero.it Sun Sep 4 09:47:05 2022 From: bagoneo at libero.it (gian) Date: Sun, 4 Sep 2022 09:47:05 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> Message-ID: <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> Il 04/09/22 09:41, gian via User ha scritto: > Project attached > > Thank you and regards > > Gianluigi Sorry I forgot to attach the project :-( Regards Gianluigi -------------- next part -------------- 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 O7c0bXLmOzUPFw9iNTozw6NX5H3UtiSvLvkPaXtCqvNYz7U0zRy7+OUVU/OX5GRmfv779jMftzc/ jwme5nL4WdOzBagDve34Mrvr1xnlaQ1elW111ltSLVxXFA/+0OW9jMIjfMZt843c5t0lOStj7gqr LUYWDqrnq5PVNzgnTjQ9Cj194ahiTksOn9927PfaLafjrj0eupmf9r50Xn2etN+o70pUv58/r6mz HtOW2PJkh6VbfKwZtDN5f/7wG/tz/BPuVF33Deu1tlaIBPctz2r0pfQmrflYUa9yosfVh33q5mbp OyHtdmtR0bfOqtbMdUzunD2Vju0vahL72V1S547mJ/MQsy2NfyZ/mSu/plG+oFKWDXYcYTF7LvtQ 0Rn7La1rw6bL3OfPq2cP4IR+HX0vu1XTWhe8qjVlfQozzcm5zm/Lf+2z4qnLip4P38zn+/dLmrYv YMzAb9Tnq2rcA5jcCw+iNXbzVj5N0Nz24jfXbkihBjkcnESqD/Odti2IfWjOfXF+dVrUUHbjd9yV RX0q7qQsnTHD3v/FSNLXo/Ka7zrFuLdoNlkvnHiMEd/6efWSYZsC8vOsvxtkk6MenXIhyWz9GTO0 etDu0uqGMScX9m0/9MX+2JI6te0Yly1lsy+lnz+WsfLK6PKYJwVn1WXUNO624a1poyeoj6RNaabe J629rp47jkO78FxTWEm9sGPJz1U3ipYwNiWVr1KnbbyV5FVWePna4jE1E5wSnxeJrGxGPP41rdVr 2EDowm9nJpHaPt23KtNl/v72s/W11n4le348IHPmf5HIutp6M9KqoZZ6hHUyc92aF5pghvcaa6uR FcN81bblBXW9yiP7TVykvlqZK70+wqPl8v2GzdY7au1bRkvTyqp5N/tWUnwiix8cC1IETk3feGH2 exnX9vbZPN15ws20hVVzrbE/1D/U5leuVd+vzt91nxTWUJjVCK/PPNe+frVQPHx3Wdnh0rJeK0cN MX9/1IqcFpspA1aHjhXSsh5TPBbdv4aRXI771JEip2CFpPr1LoU/ezlrbuyMFI949kPr/PbkKTMH bOEO2mnV3PgibMeCBX8U30p5cCpUeUhxKdcqp6ahYGrqX5urfi+a7RLJupnvvC+4dtrJgCv9Zrve D0gZ9UPy5vCce2anHD4IJs/Ot4q+cmaSGa9Z9YyfV+n8yeN9jf5NmhfNRyJXY5w9Fy7dERYOHhqf vmDCnSuJbntvO31RblGTvzbrYqXviuP8vP4bLfv5HphUPOCOS+9eZuk4UuCjq9m8efCqIrK6VbXG f+HzlqbMLx8i7NGTI4YIG2qTzufYlRwZxeNPOrg6x6xm2g9BDgtnV7xnxxq7zXnuiKMbWKl0nvTF 96v61qgPXNg1/mrTZGkL3b5hMjDrdv64072W+QAKv7H58+ChMZyt82ouji8p11RHrPb9OiieG+Uj qfX5jOUnfhwjMVNxD7YV3qfuJ535NJnXJ30xe4Bd0t5mrzyetTrit2kNFRcXZ3yU7RXHsEp3uFSw q1ZamPbZhtSaiG1L75kJth4tI9lYX83dQ8voF1WnGXuGU1dsnVMgd1nf8uG8adOq9ltmMTX8bDPL AXZWG6tCTy1EV2w6UR4+2+vxkqkt7pbbOZrivDxN6picyUNCGYHudSS3ws8fnLiamxWWNKyNr9ao j2iGr4unNbKze1mN+y4Dq7pjX7iYWkjaUc5fLIkcJrbaVymNaB5WJdi6NaDubsD13ocKrn/g6mxl CU6aVfzTByeqbY9je4ptoCHPFjA5mnzqynSLDbuXpH8+rnDOJwXM83mUYJWa9GA3e89PlulDLB45 9baYXLzcz3vA2XWDfhnxxa5F3lGs8RtmrCZVo+fMrXpPKeMHzHc+E3L7J/NMl9KU99Nu+N1CU6eO OfRQY5fe+JBvHjn96Lek4gHrDpvFZWXspp6uKSqkpZ/dsvBO5sV1i12mFAjz5qQ8yj17ccEn1NJp A6fF/Rmk3JpDI6lqis8yQqeca06k1H11y7niQzPastvSucMH8ptWFlT//vjX2vbqSudjX1lSZ2Sk NVNHXj+WfbDWvPwxb+KqrL0VuwPaHdCDqQk2wqHWUt925dRN+fZWGyNCl2z71vyZ07qlZU1VfU+M n1m2q6yK/3jP2fyiH65cf7hDua3kgxtNzfUZ2b15Nw/URUCuJMe75r4Ve8JzcyvGbjr1S97k65ml X+6qv1He5j93xKaHCxxs1n9dVx9POltVTkk/R0t/gqw4N78trCRqrCZJ1eoWOoH2tHUcdGm7dIl3 8tRH8bunbfrQJZdUdqD6xo2k4j9jhu6reB6ebufUvC/wWz/GpggrcnnmSSthrRPfuU34SfqebCnj 0pUdjTtdvZwm3hl++czRe189mW0X/HOdOMNhgi02Q5BMC35vUVZIsI9kT4Vvg/0vf6kLWp7160eK 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 5XwNAKAAAA== From bagoneo at libero.it Sun Sep 4 17:06:10 2022 From: bagoneo at libero.it (gian) Date: Sun, 4 Sep 2022 17:06:10 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> Message-ID: <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> Il 04/09/22 09:47, gian ha scritto: > Il 04/09/22 09:41, gian via User ha scritto: >> Project attached >> >> Thank you and regards >> >> Gianluigi > > Sorry I forgot to attach the project :-( > > Regards > Gianluigi Hi Benoit, I get it, you thought "why don't you try it and stop bothering". I tried it and it works with the three databases I'm interested in (to be honest I'm only interested in SQLite and PostgreSQL but I tried MySQL as well), as you can see from the console response: The Database is open = True 2022-09-04 15:59:40.284 gb.db.sqlite3: 0x55d0b05a6088: SELECT * FROM "tuser" ORDER BY "uskey" DESC 2022-09-04 15:59:41.403 gb.db.sqlite3: 0x55d0b05a6088: SELECT * FROM "tuser" ORDER BY "uskey" ASC The Database is open = False The Database is open = True 2022-09-04 16:34:30.268 gb.db.postgresql: 0x5636531c4220: SELECT * FROM "tuser" ORDER BY "usnam" ASC 2022-09-04 16:34:31.341 gb.db.postgresql: 0x5636531c4220: SELECT * FROM "tuser" ORDER BY "usnam" DESC The Database is open = False The Database is open = True 2022-09-04 15:56:03.732 gb.db.mysql: 0x55aa5d13fe20: SELECT * FROM `tuser` ORDER BY `ussur` ASC 2022-09-04 15:56:04.787 gb.db.mysql: 0x55aa5d13fe20: SELECT * FROM `tuser` ORDER BY `ussur` DESC The Database is open = False @Lee, what do you think, is it possible to complete the Sorted wiki with this new knowledge? :-) Regards Gianluigi From benoit.minisini at gambas-basic.org Sun Sep 4 18:15:38 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sun, 4 Sep 2022 18:15:38 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> Message-ID: <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> Le 04/09/2022 ? 17:06, gian via User a ?crit?: > > Hi Benoit, > > I get it, you thought "why don't you try it and stop bothering". > > I tried it and it works with the three databases I'm interested in (to > be honest I'm only interested in SQLite and PostgreSQL but I tried MySQL > as well), as you can see from the console response: > > The Database is open = True > 2022-09-04 15:59:40.284 gb.db.sqlite3: 0x55d0b05a6088: SELECT * FROM > "tuser" ORDER BY "uskey" DESC > 2022-09-04 15:59:41.403 gb.db.sqlite3: 0x55d0b05a6088: SELECT * FROM > "tuser" ORDER BY "uskey" ASC > The Database is open = False > > The Database is open = True > 2022-09-04 16:34:30.268 gb.db.postgresql: 0x5636531c4220: SELECT * FROM > "tuser" ORDER BY "usnam" ASC > 2022-09-04 16:34:31.341 gb.db.postgresql: 0x5636531c4220: SELECT * FROM > "tuser" ORDER BY "usnam" DESC > The Database is open = False > > The Database is open = True > 2022-09-04 15:56:03.732 gb.db.mysql: 0x55aa5d13fe20: SELECT * FROM > `tuser` ORDER BY `ussur` ASC > 2022-09-04 15:56:04.787 gb.db.mysql: 0x55aa5d13fe20: SELECT * FROM > `tuser` ORDER BY `ussur` DESC > The Database is open = False > > @Lee, > > what do you think, is it possible to complete the Sorted wiki with this > new knowledge? > > :-) > > Regards > Gianluigi > Yes, the problem of quoting should have been explain explicitely in the methods that build SQL requests. I'm currently thinking, maybe I could add new substitution syntaxes to tell Gambas if we want to substitute a value, a column name or a table name. Something like that: DB.Exec("SELECT * FROM [&1] WHERE column = &2 SORT BY '&3'", sTableName, sValue, sSortColumn) Because I don't think Gambas will be clever enough to guess which substitution is a value, a table or a column only by analyzing the syntax. SQL syntax is too complex. Regards, -- Beno?t Minisini. From bagoneo at libero.it Sun Sep 4 18:26:42 2022 From: bagoneo at libero.it (gian) Date: Sun, 4 Sep 2022 18:26:42 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> Message-ID: <866ba3fd-cbc0-22f1-b5a6-02ac2b7af20c@libero.it> Il 04/09/22 18:15, Benoit Minisini ha scritto: > Le 04/09/2022 ? 17:06, gian via User a ?crit?: >> >> Hi Benoit, >> >> I get it, you thought "why don't you try it and stop bothering". >> >> I tried it and it works with the three databases I'm interested in (to >> be honest I'm only interested in SQLite and PostgreSQL but I tried >> MySQL as well), as you can see from the console response: >> >> The Database is open = True >> 2022-09-04 15:59:40.284 gb.db.sqlite3: 0x55d0b05a6088: SELECT * FROM >> "tuser" ORDER BY "uskey" DESC >> 2022-09-04 15:59:41.403 gb.db.sqlite3: 0x55d0b05a6088: SELECT * FROM >> "tuser" ORDER BY "uskey" ASC >> The Database is open = False >> >> The Database is open = True >> 2022-09-04 16:34:30.268 gb.db.postgresql: 0x5636531c4220: SELECT * >> FROM "tuser" ORDER BY "usnam" ASC >> 2022-09-04 16:34:31.341 gb.db.postgresql: 0x5636531c4220: SELECT * >> FROM "tuser" ORDER BY "usnam" DESC >> The Database is open = False >> >> The Database is open = True >> 2022-09-04 15:56:03.732 gb.db.mysql: 0x55aa5d13fe20: SELECT * FROM >> `tuser` ORDER BY `ussur` ASC >> 2022-09-04 15:56:04.787 gb.db.mysql: 0x55aa5d13fe20: SELECT * FROM >> `tuser` ORDER BY `ussur` DESC >> The Database is open = False >> >> @Lee, >> >> what do you think, is it possible to complete the Sorted wiki with >> this new knowledge? >> >> :-) >> >> Regards >> Gianluigi >> > > Yes, the problem of quoting should have been explain explicitely in the > methods that build SQL requests. > > I'm currently thinking, maybe I could add new substitution syntaxes to > tell Gambas if we want to substitute a value, a column name or a table > name. > > Something like that: > > DB.Exec("SELECT * FROM [&1] WHERE column = &2 SORT BY '&3'", sTableName, > sValue, sSortColumn) > > Because I don't think Gambas will be clever enough to guess which > substitution is a value, a table or a column only by analyzing the > syntax. SQL syntax is too complex. > > Regards, > Hi Benoit, It seems to me that what is already there is sufficient. It would serve to be able to understand it by reading the wiki, if you hadn't explained it I would never have understood it. Regards Gianluigi From t.lee.davidson at gmail.com Sun Sep 4 19:13:15 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sun, 4 Sep 2022 13:13:15 -0400 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> Message-ID: On 9/4/22 12:15, Benoit Minisini wrote: > I'm currently thinking, maybe I could add new substitution syntaxes to > tell?Gambas?if?we?want?to?substitute?a?value,?a?column?name?or?a?table?name. > > Something?like?that: > > DB.Exec("SELECT * FROM [&1] WHERE column = &2 SORT BY '&3'", sTableName, sValue,?sSortColumn) That would make for cleaner looking SQL query building as opposed to using string concatenation with the ampersand. I agree with Gianluigi that what we already have is sufficient, but it would be a nice enhancement. If you decide to add that enhancement, may I suggest the use of the back-tick (`) to mark column names since the single-quote is sometimes used for data values? Ie.: DB.Exec("SELECT * FROM [&1] WHERE column = &2 SORT BY `&3`", sTableName, sValue, sSortColumn) -- Lee From t.lee.davidson at gmail.com Sun Sep 4 19:28:20 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sun, 4 Sep 2022 13:28:20 -0400 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> Message-ID: <147d1e2c-8bb9-6269-bfa8-c82720214a1e@gmail.com> On 9/4/22 11:06, gian via User wrote: > @Lee, > > what do you think, is it possible to complete the Sorted wiki with this new?knowledge? I'm not sure what you mean, Gianluigi. If you're referring to the Wiki page for GridView.Sorted, then I have to say that I do not think it would be an appropriate addition to that page since your code for this current topic is custom, database-related code. It would seem more appropriate to make a How-To for the Wiki, or publish an example to the Farm. Or, perhaps you meant something else entirely and it totally escaped me. -- Lee From bagoneo at libero.it Sun Sep 4 22:27:46 2022 From: bagoneo at libero.it (gian) Date: Sun, 4 Sep 2022 22:27:46 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <147d1e2c-8bb9-6269-bfa8-c82720214a1e@gmail.com> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <147d1e2c-8bb9-6269-bfa8-c82720214a1e@gmail.com> Message-ID: Il 04/09/22 19:28, T Lee Davidson ha scritto: > On 9/4/22 11:06, gian via User wrote: >> @Lee, >> >> what do you think, is it possible to complete the Sorted wiki with >> this new?knowledge? > > I'm not sure what you mean, Gianluigi. > > If you're referring to the Wiki page for GridView.Sorted, then I have to > say that I do not think it would be an appropriate addition to that page > since your code for this current topic is custom, database-related code. > It would seem more appropriate to make a How-To for the Wiki, or publish > an example to the Farm. > > Or, perhaps you meant something else entirely and it totally escaped me. > > Hi Lee, unlike me, you always understand at the first one and you understood exactly what I meant. :-) A How-To is perhaps easier to find, how would you do it? Regards Gianluigi From bagoneo at libero.it Sun Sep 4 22:50:52 2022 From: bagoneo at libero.it (gian) Date: Sun, 4 Sep 2022 22:50:52 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <147d1e2c-8bb9-6269-bfa8-c82720214a1e@gmail.com> Message-ID: <606174cf-a630-b7d5-0d0b-4fe641ed675d@libero.it> Il 04/09/22 22:27, gian via User ha scritto: > Il 04/09/22 19:28, T Lee Davidson ha scritto: >> On 9/4/22 11:06, gian via User wrote: >>> @Lee, >>> >>> what do you think, is it possible to complete the Sorted wiki with >>> this new?knowledge? >> >> I'm not sure what you mean, Gianluigi. >> >> If you're referring to the Wiki page for GridView.Sorted, then I have >> to say that I do not think it would be an appropriate addition to that >> page since your code for this current topic is custom, >> database-related code. It would seem more appropriate to make a How-To >> for the Wiki, or publish an example to the Farm. >> >> Or, perhaps you meant something else entirely and it totally escaped me. >> >> > > Hi Lee, > > unlike me, you always understand at the first one and you understood > exactly what I meant. :-) > > A How-To is perhaps easier to find, how would you do it? > > Regards > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- I forgot, just for full disclosure, the routine with DB.Find that sorts by column number also works fine on all databases. Good night (it's nighttime here) Gianluigi From bagoneo at libero.it Mon Sep 5 12:25:57 2022 From: bagoneo at libero.it (gian) Date: Mon, 5 Sep 2022 12:25:57 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> Message-ID: <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> Il 04/09/22 19:13, T Lee Davidson ha scritto: > On 9/4/22 12:15, Benoit Minisini wrote: >> I'm currently thinking, maybe I could add new substitution syntaxes to >> tell?Gambas?if?we?want?to?substitute?a?value,?a?column?name?or?a?table?name. >> >> >> Something?like?that: >> >> DB.Exec("SELECT * FROM [&1] WHERE column = &2 SORT BY '&3'", >> sTableName, sValue,?sSortColumn) > > That would make for cleaner looking SQL query building as opposed to > using string concatenation with the ampersand. I agree with Gianluigi > that what we already have is sufficient, but it would be a nice > enhancement. > > If you decide to add that enhancement, may I suggest the use of the > back-tick (`) to mark column names since the single-quote is sometimes > used for data values? Ie.: > DB.Exec("SELECT * FROM [&1] WHERE column = &2 SORT BY `&3`", sTableName, > sValue, sSortColumn) > > Hi Benoit, I tried the last master with MySQL and if I write the code like this it works, but I always have to use a concatenation string for ASC and DESC. I read the wiki several times but I didn't understand how I could add sSort with the substitution method. '------------------------------------------------------- Public Sub GridView1_Sort() Dim aArg As String[] = ["uskey", "usnam", "ussur"] Dim sTable, sColumn, sSQL As String Dim sSort As String = " ASC" db.Debug = True sTable = "tuser" sColumn = aArg[$iCurrentColumn] sSQL = "SELECT * FROM [&1] ORDER BY `&2`" ' or ' sSQL = "SELECT * FROM [&1] ORDER BY '&2'" If Not GridView1.Columns.Ascending Then sSort = " DESC" $hResult = $hConn.Exec(sSQL & sSort, sTable, sColumn) GridView1.Rows.Count = $hResult.Count GridView1.Columns.Width = -1 Catch Print Error.Text End '------------------------------------------------------- Regards Gianluigi From bagoneo at libero.it Mon Sep 5 13:56:00 2022 From: bagoneo at libero.it (gian) Date: Mon, 5 Sep 2022 13:56:00 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> Message-ID: Il 05/09/22 12:25, gian via User ha scritto: > Il 04/09/22 19:13, T Lee Davidson ha scritto: >> On 9/4/22 12:15, Benoit Minisini wrote: >>> I'm currently thinking, maybe I could add new substitution syntaxes >>> to >>> tell?Gambas?if?we?want?to?substitute?a?value,?a?column?name?or?a?table?name. >>> >>> >>> Something?like?that: >>> >>> DB.Exec("SELECT * FROM [&1] WHERE column = &2 SORT BY '&3'", >>> sTableName, sValue,?sSortColumn) >> >> That would make for cleaner looking SQL query building as opposed to >> using string concatenation with the ampersand. I agree with Gianluigi >> that what we already have is sufficient, but it would be a nice >> enhancement. >> >> If you decide to add that enhancement, may I suggest the use of the >> back-tick (`) to mark column names since the single-quote is sometimes >> used for data values? Ie.: >> DB.Exec("SELECT * FROM [&1] WHERE column = &2 SORT BY `&3`", >> sTableName, sValue, sSortColumn) >> >> > > Hi Benoit, > > I tried the last master with MySQL and if I write the code like this it > works, but I always have to use a concatenation string for ASC and DESC. > I read the wiki several times but I didn't understand how I could add > sSort with the substitution method. > '------------------------------------------------------- > Public Sub GridView1_Sort() > > ? Dim aArg As String[] = ["uskey", "usnam", "ussur"] > ? Dim sTable, sColumn, sSQL As String > ? Dim sSort As String = " ASC" > > ? db.Debug = True > ? sTable = "tuser" > ? sColumn = aArg[$iCurrentColumn] > ? sSQL = "SELECT * FROM [&1] ORDER BY `&2`" > ? ' or > ? ' sSQL = "SELECT * FROM [&1] ORDER BY '&2'" > ? If Not GridView1.Columns.Ascending Then sSort = " DESC" > ? $hResult = $hConn.Exec(sSQL & sSort, sTable, sColumn) > ? GridView1.Rows.Count = $hResult.Count > ? GridView1.Columns.Width = -1 > > Catch > ? Print Error.Text > > End > '------------------------------------------------------- > > Regards > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Benoit, Right, the dumb questions must be answered on their own: Public Sub GridView1_Sort() Dim aArg As String[] = ["uskey", "usnam", "ussur"] Dim sTable, sColumn As String Dim sSort As String = "SELECT * FROM [&1] ORDER BY '&2' ASC" db.Debug = True sTable = "tuser" sColumn = aArg[$iCurrentColumn] If Not GridView1.Columns.Ascending Then sSort = "SELECT * FROM [&1] ORDER BY '&2' DESC" $hResult = $hConn.Exec(sSort, sTable, sColumn) GridView1.Rows.Count = $hResult.Count GridView1.Columns.Width = -1 Catch Print Error.Text End Sorry :-( Gianluigi From bagoneo at libero.it Mon Sep 5 14:43:07 2022 From: bagoneo at libero.it (gian) Date: Mon, 5 Sep 2022 14:43:07 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> Message-ID: Hi, I avoid saying to whom the question is addressed so as not to appear like a stalker. I have noticed that if the last column is sorted ascending and I have to sort another column, it immediately sorts in ascending mode, conversely if the previous column was sorted descending, the new column is first sorted descending and then is correctly sorted ascending. In the hope that I have explained myself, I ask if this is correct or is it a malfunction? Thank you Gianluigi From bagoneo at libero.it Mon Sep 5 16:19:49 2022 From: bagoneo at libero.it (gian) Date: Mon, 5 Sep 2022 16:19:49 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> Message-ID: <9f551d2e-87f1-f185-2fec-9d4a536d6604@libero.it> Hi Benoit, here: https://gitlab.com/gambas/gambas/-/commit/f3cfc513747c22342b627a09a86ba2e39244e316 you write to use "`&1`" to quote a column name while here: http://gambaswiki.org/wiki/doc/db-quoting write to use "'&1'" to quote column name I have tested and they both work, did you do this for ease of writing? Thank you and regards Gianluigi From benoit.minisini at gambas-basic.org Mon Sep 5 16:25:13 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 5 Sep 2022 16:25:13 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <9f551d2e-87f1-f185-2fec-9d4a536d6604@libero.it> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> <9f551d2e-87f1-f185-2fec-9d4a536d6604@libero.it> Message-ID: <44911927-f359-a36d-e98a-1bd4ccc78543@gambas-basic.org> Le 05/09/2022 ? 16:19, gian via User a ?crit?: > Hi Benoit, > > here: > https://gitlab.com/gambas/gambas/-/commit/f3cfc513747c22342b627a09a86ba2e39244e316 > > > you write to use "`&1`" to quote a column name > > while here: > http://gambaswiki.org/wiki/doc/db-quoting > > write to use "'&1'" to quote column name > > I have tested and they both work, did you do this for ease of writing? > > Thank you and regards > > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Both are available. -- Beno?t Minisini. From bagoneo at libero.it Mon Sep 5 16:47:12 2022 From: bagoneo at libero.it (gian) Date: Mon, 5 Sep 2022 16:47:12 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: <44911927-f359-a36d-e98a-1bd4ccc78543@gambas-basic.org> References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> <9f551d2e-87f1-f185-2fec-9d4a536d6604@libero.it> <44911927-f359-a36d-e98a-1bd4ccc78543@gambas-basic.org> Message-ID: Il 05/09/22 16:25, Benoit Minisini ha scritto: > Both are available. > > -- > Beno?t Minisini. ? :-) Thank you Gianluigi From t.lee.davidson at gmail.com Mon Sep 5 18:16:24 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Mon, 5 Sep 2022 12:16:24 -0400 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> Message-ID: On 9/5/22 08:43, gian via User wrote: > Hi, > > I avoid saying to whom the question is addressed so as not to appear like a stalker. > > I have noticed that if the last column is sorted ascending and I have to sort another column, it immediately sorts in ascending > mode, conversely if the previous column was sorted descending, the new column is first sorted descending and then is correctly > sorted ascending. > > In the hope that I have explained myself, I ask if this is correct or is it a malfunction? > > Thank you > > Gianluigi Gridview.Columns.Ascending is a property of Columns, so it would have to behave as a toggle for *all* columns. If you want the default sort order for a click on a different column to be ascending, you can modify your Column click event handler thus: Public Sub GridView1_ColumnClick(Column As Integer) If $iCurrentColumn <> Column Then GridView1.Columns.Ascending = True $iCurrentColumn = Column Endif End -- Lee From bagoneo at libero.it Mon Sep 5 22:49:16 2022 From: bagoneo at libero.it (gian) Date: Mon, 5 Sep 2022 22:49:16 +0200 Subject: [Gambas-user] Query for sorting not work In-Reply-To: References: <8080cf7d-8d43-dd21-57b6-2e57f2f863dc@gmail.com> <726caf5f-6cab-ff19-b8fd-50cf7858c946@libero.it> <184beb3a-8545-1536-4fcb-e06ea01a972d@libero.it> <80c63828-9f8b-81d9-1880-5754cec32296@libero.it> <308ff639-ba49-e3aa-036d-dcb41a94c854@gambas-basic.org> <4c503635-ea4b-b2bf-85c2-be55f1efa64e@libero.it> Message-ID: <68583603-f330-5564-3976-9a713bb5bedb@libero.it> Il 05/09/22 18:16, T Lee Davidson ha scritto: > Gridview.Columns.Ascending is a property of Columns, so it would have to > behave as a toggle for *all* columns. If you want the default sort order > for a click on a different column to be ascending, you can modify your > Column click event handler thus: > > Public Sub GridView1_ColumnClick(Column As Integer) > > ? If $iCurrentColumn <> Column Then > ??? GridView1.Columns.Ascending = True > ??? $iCurrentColumn = Column > ? Endif > > End Hi Lee, It doesn't change anything, it always makes two steps, two ascending instead of one descending and one ascending. But I probably didn't explain well what I meant. It is not important, thank you anyway Regards Gianluigi From angelnunez123 at gmail.com Tue Sep 6 10:33:16 2022 From: angelnunez123 at gmail.com (=?UTF-8?Q?Angel_Nu=c3=b1ez?=) Date: Tue, 6 Sep 2022 10:33:16 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) Message-ID: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> Hi List, At the end of the program when the shrimp profile box is blocked, it is shown in the status bar loading profiling file... There is no text by console that any error informed. sorry for my English. Angel My system: [System] Gambas=3.17.3 OperatingSystem=Linux Kernel=5.10.0-17-amd64 Architecture=x86_64 Distribution=debian 11.4 Desktop=MATE Font=DejaVu Sans Mono,11 Scale=8 Theme=traditionalgreen Language=es_ES.UTF-8 Memory=15980M [Libraries] Cairo=libcairo.so.2.11600.0 Curl=libcurl.so.4.7.0 DBus=libdbus-1.so.3.19.13 GDK2=libgdk-x11-2.0.so.0.2400.33 GDK3=libgdk-3.so.0.2404.20 GStreamer=libgstreamer-1.0.so.0.1804.0 GTK+2=libgtk-x11-2.0.so.0.2400.33 GTK+3=libgtk-3.so.0.2404.20 OpenGL=libGL.so.1.7.0 Poppler=libpoppler.so.102.0.0 QT5=libQt5Core.so.5.15.2 SDL=libSDL-1.2.so.0.11.4 SQLite=libsqlite3.so.0.8.6 [Environment] CLUTTER_BACKEND=x11 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus DESKTOP_SESSION=mate DISPLAY=:0 GB_GUI=gb.gtk3 GDMSESSION=mate GIO_LAUNCHED_DESKTOP_FILE_PID=3644097 GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1 GTK_MODULES=gail:atk-bridge:canberra-gtk-module GTK_OVERLAY_SCROLLING=0 HOME= LANG=es_ES.UTF-8 LC_ALL=es_ES.UTF-8 LOGNAME= MATE_DESKTOP_SESSION_ID=this-is-deprecated PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD= QT_ACCESSIBILITY=1 QT_AUTO_SCREEN_SCALE_FACTOR=0 QT_LOGGING_RULES=*.debug=false QT_SCALE_FACTOR=1 SESSION_MANAGER=local/:@/tmp/.ICE-unix/3083,unix/:/tmp/.ICE-unix/3083 SHELL=/bin/bash SSH_AGENT_PID=3130 SSH_AUTH_SOCK=/run/user/1000/keyring/ssh TZ=:/etc/localtime USER= XAUTHORITY=/.Xauthority XDG_CURRENT_DESKTOP=MATE XDG_DATA_DIRS=/usr/share/mate:/usr/local/share/:/usr/share/ XDG_GREETER_DATA_DIR=/var/lib/lightdm/data/ XDG_RUNTIME_DIR=/run/user/1000 XDG_SEAT=seat0 XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0 XDG_SESSION_CLASS=user XDG_SESSION_DESKTOP=mate XDG_SESSION_ID=2 XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0 XDG_SESSION_TYPE=x11 XDG_VTNR=7 -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Tue Sep 6 10:49:29 2022 From: bagoneo at libero.it (gian) Date: Tue, 6 Sep 2022 10:49:29 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> Message-ID: <9a5f49c2-59b8-7dfb-fcbb-7d44bf0991ca@libero.it> Il 06/09/22 10:33, Angel Nu?ez ha scritto: > Hi List, > > At the end of the program when the shrimp profile box is blocked, it is > shown in the status bar loading profiling file... > > There is no text by console that any error informed. > > sorry for my English. > > Angel Hi Angel, The malfunction has been reported. It happens only with the IDE in GTK, if you run the IDE with QT libraries (right click "Run with QT 5") profiling works. Regards Gianluigi From benoit.minisini at gambas-basic.org Tue Sep 6 11:16:22 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 6 Sep 2022 11:16:22 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> Message-ID: <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> Le 06/09/2022 ? 10:33, Angel Nu?ez a ?crit?: > Hi List, > > At the end of the program when the shrimp profile box is blocked, it is > shown in the status bar loading profiling file... > > There is no text by console that any error informed. > > sorry for my English. > > Angel > Can you send me your project so that I can use it to debug? -- Beno?t Minisini. From bagoneo at libero.it Tue Sep 6 13:05:14 2022 From: bagoneo at libero.it (gian) Date: Tue, 6 Sep 2022 13:05:14 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> Message-ID: Il 06/09/22 11:16, Benoit Minisini ha scritto: > Can you send me your project so that I can use it to debug? > > -- > Beno?t Minisini. Hi Benoit, I am afraid that with Gnome profiling with the IDE in GTK does not work with any project. Why don't you send me a project that works for you and tell me what to do? Regards Gianluigi From benoit.minisini at gambas-basic.org Tue Sep 6 13:15:49 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 6 Sep 2022 13:15:49 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> Message-ID: <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> Le 06/09/2022 ? 13:05, gian via User a ?crit?: > Il 06/09/22 11:16, Benoit Minisini ha scritto: >> Can you send me your project so that I can use it to debug? >> >> -- >> Beno?t Minisini. > > > Hi Benoit, > > I am afraid that with Gnome profiling with the IDE in GTK does not work > with any project. > Why don't you send me a project that works for you and tell me what to do? > > Regards > Gianluigi > I have no problem with profiling the IDE with GTK on my computer. -- Beno?t Minisini. From bagoneo at libero.it Tue Sep 6 13:21:03 2022 From: bagoneo at libero.it (gian) Date: Tue, 6 Sep 2022 13:21:03 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> Message-ID: <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> Il 06/09/22 13:15, Benoit Minisini ha scritto: > Le 06/09/2022 ? 13:05, gian via User a ?crit?: >> Il 06/09/22 11:16, Benoit Minisini ha scritto: >>> Can you send me your project so that I can use it to debug? >>> >>> -- >>> Beno?t Minisini. >> >> >> Hi Benoit, >> >> I am afraid that with Gnome profiling with the IDE in GTK does not >> work with any project. >> Why don't you send me a project that works for you and tell me what to >> do? >> >> Regards >> Gianluigi >> > > I have no problem with profiling the IDE with GTK on my computer. > I understood that, send me a little project that works for you and if it doesn't work for me, tell me what to do. Regards Gianluigi From angelnunez123 at gmail.com Tue Sep 6 13:31:48 2022 From: angelnunez123 at gmail.com (=?UTF-8?Q?Angel_Nu=c3=b1ez?=) Date: Tue, 6 Sep 2022 13:31:48 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <9a5f49c2-59b8-7dfb-fcbb-7d44bf0991ca@libero.it> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <9a5f49c2-59b8-7dfb-fcbb-7d44bf0991ca@libero.it> Message-ID: Hi Gianluigi It doesn't work neither with GTK nor with QT El 6/9/22 a las 10:49, gian via User escribi?: > Il 06/09/22 10:33, Angel Nu?ez ha scritto: >> Hi List, >> >> At the end of the program when the shrimp profile box is blocked, it >> is shown in the status bar loading profiling file... >> >> There is no text by console that any error informed. >> >> sorry for my English. >> >> Angel > > Hi Angel, > > The malfunction has been reported. > It happens only with the IDE in GTK, if you run the IDE with QT > libraries (right click "Run with QT 5") profiling works. > > Regards > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- From angelnunez123 at gmail.com Tue Sep 6 13:35:01 2022 From: angelnunez123 at gmail.com (=?UTF-8?Q?Angel_Nu=c3=b1ez?=) Date: Tue, 6 Sep 2022 13:35:01 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> Message-ID: <582c783f-967b-1488-1bd8-ab7f0a23f032@gmail.com> Hi Benoit This is the first time I send a message. I am sending a compiled project as an attachment. I don't know if I'm doing it right. El 6/9/22 a las 11:16, Benoit Minisini escribi?: > Le 06/09/2022 ? 10:33, Angel Nu?ez a ?crit?: >> Hi List, >> >> At the end of the program when the shrimp profile box is blocked, it >> is shown in the status bar loading profiling file... >> >> There is no text by console that any error informed. >> >> sorry for my English. >> >> Angel >> > > Can you send me your project so that I can use it to debug? > -------------- next part -------------- A non-text attachment was scrubbed... Name: pp1.tar.gz Type: application/gzip Size: 14860 bytes Desc: not available URL: From bagoneo at libero.it Tue Sep 6 13:34:03 2022 From: bagoneo at libero.it (gian) Date: Tue, 6 Sep 2022 13:34:03 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> Message-ID: <4757072c-6a8a-9b30-d3da-c839950456b1@libero.it> Il 06/09/22 13:21, gian via User ha scritto: > Il 06/09/22 13:15, Benoit Minisini ha scritto: >> Le 06/09/2022 ? 13:05, gian via User a ?crit?: >>> Il 06/09/22 11:16, Benoit Minisini ha scritto: >>>> Can you send me your project so that I can use it to debug? >>>> >>>> -- >>>> Beno?t Minisini. >>> >>> >>> Hi Benoit, >>> >>> I am afraid that with Gnome profiling with the IDE in GTK does not >>> work with any project. >>> Why don't you send me a project that works for you and tell me what >>> to do? >>> >>> Regards >>> Gianluigi >>> >> >> I have no problem with profiling the IDE with GTK on my computer. >> > > I understood that, send me a little project that works for you and if it > doesn't work for me, tell me what to do. > > Regards > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- To be clearer, in the IDE with GTK, if I create a new graphics project with no code and put it under profiling upon closing the window the profiling goes into an infinite loop and you need to force exit the IDE. Regards Gianluigi From bagoneo at libero.it Tue Sep 6 13:38:47 2022 From: bagoneo at libero.it (gian) Date: Tue, 6 Sep 2022 13:38:47 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <9a5f49c2-59b8-7dfb-fcbb-7d44bf0991ca@libero.it> Message-ID: <0de7979a-5658-47f4-09bd-10deafeeb3b4@libero.it> Il 06/09/22 13:31, Angel Nu?ez ha scritto: > Hi Gianluigi > > It doesn't work neither with GTK nor with QT Hi Angel, not the program but the IDE must run under QT. Open the terminal to type the command: GB_GUI=gb.qt5 gambas3 to start the IDE with the QT Regards Gianluigi From bsteers4 at gmail.com Tue Sep 6 13:41:04 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 6 Sep 2022 12:41:04 +0100 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> Message-ID: On Tue, 6 Sept 2022 at 12:23, gian via User wrote: > Il 06/09/22 13:15, Benoit Minisini ha scritto: > > Le 06/09/2022 ? 13:05, gian via User a ?crit : > >> Il 06/09/22 11:16, Benoit Minisini ha scritto: > >>> Can you send me your project so that I can use it to debug? > >>> > >>> -- > >>> Beno?t Minisini. > >> > >> > >> Hi Benoit, > >> > >> I am afraid that with Gnome profiling with the IDE in GTK does not > >> work with any project. > >> Why don't you send me a project that works for you and tell me what to > >> do? > >> > >> Regards > >> Gianluigi > >> > > > > I have no problem with profiling the IDE with GTK on my computer. > > > > I understood that, send me a little project that works for you and if it > doesn't work for me, tell me what to do. > But Gian if you have problems with any gtk project and Ben has problems with none then what good will sending you a project do? My guess it will work on Bens but not on yours. Wasn't a profiler bug recently fixed? is the fix not in stable version yet as Angel is on 3.17.3 stable ? Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Tue Sep 6 13:49:09 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 6 Sep 2022 12:49:09 +0100 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> Message-ID: On Tue, 6 Sept 2022 at 12:41, Bruce Steers wrote: > > > On Tue, 6 Sept 2022 at 12:23, gian via User > wrote: > >> Il 06/09/22 13:15, Benoit Minisini ha scritto: >> > Le 06/09/2022 ? 13:05, gian via User a ?crit : >> >> Il 06/09/22 11:16, Benoit Minisini ha scritto: >> >>> Can you send me your project so that I can use it to debug? >> >>> >> >>> -- >> >>> Beno?t Minisini. >> >> >> >> >> >> Hi Benoit, >> >> >> >> I am afraid that with Gnome profiling with the IDE in GTK does not >> >> work with any project. >> >> Why don't you send me a project that works for you and tell me what to >> >> do? >> >> >> >> Regards >> >> Gianluigi >> >> >> > >> > I have no problem with profiling the IDE with GTK on my computer. >> > >> >> I understood that, send me a little project that works for you and if it >> doesn't work for me, tell me what to do. >> > > But Gian if you have problems with any gtk project and Ben has problems > with none then what good will sending you a project do? > My guess it will work on Bens but not on yours. > > > Wasn't a profiler bug recently fixed? is the fix not in stable version > yet as Angel is on 3.17.3 stable ? > The bug is not fixed for me on 3.17.90 running IDE with QT the profiler works okay , gtk just freezes IDE BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From angelnunez123 at gmail.com Tue Sep 6 14:57:49 2022 From: angelnunez123 at gmail.com (Angel) Date: Tue, 6 Sep 2022 14:57:49 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <0de7979a-5658-47f4-09bd-10deafeeb3b4@libero.it> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <9a5f49c2-59b8-7dfb-fcbb-7d44bf0991ca@libero.it> <0de7979a-5658-47f4-09bd-10deafeeb3b4@libero.it> Message-ID: Starting gambas with GB_GUI=gb.qt5 works fine. Regards Angel El 6/9/22 a las 13:38, gian via User escribi?: > Il 06/09/22 13:31, Angel Nu?ez ha scritto: >> Hi Gianluigi >> >> It doesn't work neither with GTK nor with QT > > Hi Angel, > > not the program but the IDE must run under QT. > > Open the terminal to type the command: > > GB_GUI=gb.qt5 gambas3 > > to start the IDE with the QT > > Regards > Gianluigi > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- From bagoneo at libero.it Tue Sep 6 15:28:20 2022 From: bagoneo at libero.it (gian) Date: Tue, 6 Sep 2022 15:28:20 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> Message-ID: <08856960-2270-1424-22e0-442b51d171fd@libero.it> Il 06/09/22 13:49, Bruce Steers ha scritto: > > > On Tue, 6 Sept 2022 at 12:41, Bruce Steers > wrote: > > > > On Tue, 6 Sept 2022 at 12:23, gian via User > > > wrote: > > Il 06/09/22 13:15, Benoit Minisini ha scritto: > > Le 06/09/2022 ? 13:05, gian via User a ?crit?: > >> Il 06/09/22 11:16, Benoit Minisini ha scritto: > >>> Can you send me your project so that I can use it to debug? > >>> > >>> -- > >>> Beno?t Minisini. > >> > >> > >> Hi Benoit, > >> > >> I am afraid that with Gnome profiling with the IDE in GTK > does not > >> work with any project. > >> Why don't you send me a project that works for you and tell > me what to > >> do? > >> > >> Regards > >> Gianluigi > >> > > > > I have no problem with profiling the IDE with GTK on my computer. > > > > I understood that, send me a little project that works for you > and if it > doesn't work for me, tell me what to do. > > > But Gian if you have problems with any gtk project and Ben has > problems with none then what good will sending you a project do? > My guess it will work on Bens but not on yours. > > > Wasn't a profiler bug recently fixed?? is the fix not in stable > version yet as Angel is on 3.17.3 stable ? > > > > The bug is not fixed for me on 3.17.90 > running IDE with QT the profiler works okay , > gtk just freezes IDE > > BruceS > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Bruce, To be precise, all desktops based on GTK libraries experience the same IDE malfunction with profiling. The malfunction does not happen only if the IDE is launched with the QT libraries. This happens with both stable and master versions. You can wait as long as you want, nothing happens, and eventually you have to force close to exit. Regards Gianluigi From bsteers4 at gmail.com Tue Sep 6 17:32:37 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 6 Sep 2022 16:32:37 +0100 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <08856960-2270-1424-22e0-442b51d171fd@libero.it> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> <08856960-2270-1424-22e0-442b51d171fd@libero.it> Message-ID: On Tue, 6 Sept 2022 at 14:30, gian via User wrote: > Il 06/09/22 13:49, Bruce Steers ha scritto: > > > > > > On Tue, 6 Sept 2022 at 12:41, Bruce Steers > > wrote: > > > > > > > > On Tue, 6 Sept 2022 at 12:23, gian via User > > > > > wrote: > > > > Il 06/09/22 13:15, Benoit Minisini ha scritto: > > > Le 06/09/2022 ? 13:05, gian via User a ?crit : > > >> Il 06/09/22 11:16, Benoit Minisini ha scritto: > > >>> Can you send me your project so that I can use it to debug? > > >>> > > >>> -- > > >>> Beno?t Minisini. > > >> > > >> > > >> Hi Benoit, > > >> > > >> I am afraid that with Gnome profiling with the IDE in GTK > > does not > > >> work with any project. > > >> Why don't you send me a project that works for you and tell > > me what to > > >> do? > > >> > > >> Regards > > >> Gianluigi > > >> > > > > > > I have no problem with profiling the IDE with GTK on my > computer. > > > > > > > I understood that, send me a little project that works for you > > and if it > > doesn't work for me, tell me what to do. > > > > > > But Gian if you have problems with any gtk project and Ben has > > problems with none then what good will sending you a project do? > > My guess it will work on Bens but not on yours. > > > > > > Wasn't a profiler bug recently fixed? is the fix not in stable > > version yet as Angel is on 3.17.3 stable ? > > > > > > > > The bug is not fixed for me on 3.17.90 > > running IDE with QT the profiler works okay , > > gtk just freezes IDE > > > > BruceS > > > > > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > Hi Bruce, > > To be precise, all desktops based on GTK libraries experience the same > IDE malfunction with profiling. > The malfunction does not happen only if the IDE is launched with the QT > libraries. > > This happens with both stable and master versions. > > You can wait as long as you want, nothing happens, and eventually you > have to force close to exit. > Yes ,seems to be a problem with the profiler opening/initializing. Looks like the application closes okay but the IDE then hangs trying to open the profile window after. I thought the bug had been fixed but i must have been mistaken. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From angelnunez123 at gmail.com Tue Sep 6 20:22:29 2022 From: angelnunez123 at gmail.com (Angel) Date: Tue, 6 Sep 2022 20:22:29 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> <08856960-2270-1424-22e0-442b51d171fd@libero.it> Message-ID: <6ce91d03-e740-eae4-8409-ce1134cec509@gmail.com> In the meantime, if we want to use the profiler we have to start the IDE gambas3 with GB_GUI=gb.qt5 . I didn't know that the ide could start with Qt or GTK libraries, thanks to all for the help. Regards Angel El 6/9/22 a las 17:32, Bruce Steers escribi?: > > > On Tue, 6 Sept 2022 at 14:30, gian via User > wrote: > > Il 06/09/22 13:49, Bruce Steers ha scritto: > > > > > > On Tue, 6 Sept 2022 at 12:41, Bruce Steers > > wrote: > > > > > > > >? ? ?On Tue, 6 Sept 2022 at 12:23, gian via User > >? ? ? > > >? ? ?wrote: > > > >? ? ? ? ?Il 06/09/22 13:15, Benoit Minisini ha scritto: > >? ? ? ? ? > Le 06/09/2022 ? 13:05, gian via User a ?crit?: > >? ? ? ? ? >> Il 06/09/22 11:16, Benoit Minisini ha scritto: > >? ? ? ? ? >>> Can you send me your project so that I can use it > to debug? > >? ? ? ? ? >>> > >? ? ? ? ? >>> -- > >? ? ? ? ? >>> Beno?t Minisini. > >? ? ? ? ? >> > >? ? ? ? ? >> > >? ? ? ? ? >> Hi Benoit, > >? ? ? ? ? >> > >? ? ? ? ? >> I am afraid that with Gnome profiling with the IDE > in GTK > >? ? ? ? ?does not > >? ? ? ? ? >> work with any project. > >? ? ? ? ? >> Why don't you send me a project that works for you > and tell > >? ? ? ? ?me what to > >? ? ? ? ? >> do? > >? ? ? ? ? >> > >? ? ? ? ? >> Regards > >? ? ? ? ? >> Gianluigi > >? ? ? ? ? >> > >? ? ? ? ? > > >? ? ? ? ? > I have no problem with profiling the IDE with GTK on > my computer. > >? ? ? ? ? > > > > >? ? ? ? ?I understood that, send me a little project that works > for you > >? ? ? ? ?and if it > >? ? ? ? ?doesn't work for me, tell me what to do. > > > > > >? ? ?But Gian if you have problems with any gtk project and Ben has > >? ? ?problems with none then what good will sending you a project do? > >? ? ?My guess it will work on Bens but not on yours. > > > > > >? ? ?Wasn't a profiler bug recently fixed?? is the fix not in stable > >? ? ?version yet as Angel is on 3.17.3 stable ? > > > > > > > > The bug is not fixed for me on 3.17.90 > > running IDE with QT the profiler works okay , > > gtk just freezes IDE > > > > BruceS > > > > > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > Hi Bruce, > > To be precise, all desktops based on GTK libraries experience the > same > IDE malfunction with profiling. > The malfunction does not happen only if the IDE is launched with > the QT > libraries. > > This happens with both stable and master versions. > > You can wait as long as you want, nothing happens, and eventually you > have to force close to exit. > > > Yes? ,seems to be a problem with the profiler opening/initializing. > Looks like the application closes okay but the IDE then hangs trying > to open the profile window after. > > I thought the bug had been fixed but i must have been mistaken. > > Respects > BruceS > > ----[http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Tue Sep 6 20:52:22 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 6 Sep 2022 19:52:22 +0100 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <6ce91d03-e740-eae4-8409-ce1134cec509@gmail.com> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> <08856960-2270-1424-22e0-442b51d171fd@libero.it> <6ce91d03-e740-eae4-8409-ce1134cec509@gmail.com> Message-ID: On Tue, 6 Sep 2022, 19:23 Angel, wrote: > In the meantime, if we want to use the profiler we have to start the IDE > gambas3 with GB_GUI=gb.qt5 . > I didn't know that the ide could start with Qt or GTK libraries, thanks to > all for the help. > > Regards > Angel > > Yes or as Gian suggested if you have a gambas panel icon from the system menu you can right click it and select the "run with qt5" action from there. Or you could just make a desktop launcher icon and add the GB_GUI=GB.qt5 prefix Did you know ANY application that uses gb.gui can be used with gtk or qt by setting the env variable that same way ? Well wishes -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Tue Sep 6 22:40:47 2022 From: mbelmonte at belmotek.net (Martin) Date: Tue, 6 Sep 2022 22:40:47 +0200 Subject: [Gambas-user] Implement DGNLib in gambas Message-ID: <1dd17411-a917-af5f-f55f-63974b746434@belmotek.net> Hello friends, I need to implement the reading of binary files with the DGNLib library to extract information. If anyone can take a look and give me some guidance on how to get started it would be a great help. DGN is a CAD file format, it is well documented and the library doesn't seem too big, I think. http://dgnlib.maptools.org/libhtml/dgnlib_8h-source.html Thanks. Mart?n. From bagoneo at libero.it Tue Sep 6 23:29:38 2022 From: bagoneo at libero.it (gian) Date: Tue, 6 Sep 2022 23:29:38 +0200 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> <08856960-2270-1424-22e0-442b51d171fd@libero.it> <6ce91d03-e740-eae4-8409-ce1134cec509@gmail.com> Message-ID: <92f13f2a-7a26-8ef1-ff86-37a14b27f6ea@libero.it> Il 06/09/22 20:52, Bruce Steers ha scritto: > > > On Tue, 6 Sep 2022, 19:23 Angel, > wrote: > > In the meantime, if we want to use the profiler we have to start the > IDE gambas3 with GB_GUI=gb.qt5 . > I didn't know that the ide could start with Qt or GTK libraries, > thanks to all for the help. > > Regards > Angel > > > Yes or as Gian suggested if you have a gambas panel icon from the system > menu you can right click it and select the "run with qt5" action from there. > > Or you could just make a desktop launcher icon and add the GB_GUI=GB.qt5 > prefix > > Did you know ANY application that uses gb.gui can be used with gtk or qt > by setting the env variable that same way ? > > Well wishes > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Gambas3 is very cool ? See attached image Regards Gianluigi -------------- next part -------------- A non-text attachment was scrubbed... Name: run-gambas.jpg Type: image/jpeg Size: 14793 bytes Desc: not available URL: From adamnt42 at gmail.com Wed Sep 7 01:54:00 2022 From: adamnt42 at gmail.com (bb) Date: Wed, 07 Sep 2022 09:24:00 +0930 Subject: [Gambas-user] Implement DGNLib in gambas In-Reply-To: <1dd17411-a917-af5f-f55f-63974b746434@belmotek.net> References: <1dd17411-a917-af5f-f55f-63974b746434@belmotek.net> Message-ID: <28fc4ec6d265573331009ec5c0b0c9dcafb169ba.camel@gmail.com> On Tue, 2022-09-06 at 22:40 +0200, Martin wrote: > Hello friends, > I need to implement the reading of binary files with the DGNLib > library > to extract information. > If anyone can take a look and give me some guidance on how to get > started it would be a great help. > DGN is a CAD file format, it is well documented and the library > doesn't > seem too big, I think. > > http://dgnlib.maptools.org/libhtml/dgnlib_8h-source.html > > Thanks. > Mart?n. > > ----[ http://gambaswiki.org/wiki/doc/netiquette?]---- That api file looks very old, 2003. DGN changed a lot since then, also the format changed and went closed at version 8. So the first thing I'd look at would be your data file source and version. It could be a big waste of time otherwise. b From mbelmonte at belmotek.net Wed Sep 7 09:23:40 2022 From: mbelmonte at belmotek.net (Martin) Date: Wed, 7 Sep 2022 09:23:40 +0200 Subject: [Gambas-user] Implement DGNLib in gambas In-Reply-To: <28fc4ec6d265573331009ec5c0b0c9dcafb169ba.camel@gmail.com> References: <1dd17411-a917-af5f-f55f-63974b746434@belmotek.net> <28fc4ec6d265573331009ec5c0b0c9dcafb169ba.camel@gmail.com> Message-ID: El 7/9/22 a las 1:54, bb escribi?: > That api file looks very old, 2003. DGN changed a lot since then, also > the format changed and went closed at version 8. Yes, it is a library from 2005 to be more precise. In my particular case I want to work with DGN files from that era, but there is another library called gdal, which is available in the repos of most linux distributions, and supports many vector formats, including DGNv7 and DGNv8. It might be the optimal choice. But I'm still in the same stalemate, I don't know how to deal with the arc reading through extern or by creating a component. https://gdal.org/ From bsteers4 at gmail.com Thu Sep 8 07:37:32 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 8 Sep 2022 06:37:32 +0100 Subject: [Gambas-user] The profile failure (blocks gambas3) In-Reply-To: <6ce91d03-e740-eae4-8409-ce1134cec509@gmail.com> References: <8fcb88db-263b-3f4d-60e0-106090b279ad@gmail.com> <4eb75b0d-2342-22f0-bbca-c0ef59255092@gambas-basic.org> <1aca1552-5372-abc7-1435-b5bef115e44e@gambas-basic.org> <6ed87379-a09b-402b-d0fb-dd3b4822217a@libero.it> <08856960-2270-1424-22e0-442b51d171fd@libero.it> <6ce91d03-e740-eae4-8409-ce1134cec509@gmail.com> Message-ID: On Tue, 6 Sept 2022 at 19:23, Angel wrote: > In the meantime, if we want to use the profiler we have to start the IDE > gambas3 with GB_GUI=gb.qt5 . > I didn't know that the ide could start with Qt or GTK libraries, thanks to > all for the help. > > Regards > Angel > El 6/9/22 a las 17:32, Bruce Steers escribi?: > Seems to be fixed with the latest commit. :) Many thanks Benoit :) BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Fri Sep 9 12:18:10 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Fri, 9 Sep 2022 11:18:10 +0100 Subject: [Gambas-user] UnCompress question Message-ID: So i'm looking at using gb.compress Documentation says all about using UnCompress like a standard file handle so I guess... 1. Open an archive file using Uncompress 2. Open another file handle.. 3. Read from uncompress and write data to std file handle. That all makes sense if my file only contains one file But how do you go about writing/unpacking multiple archive file contents out to a directory? Or can gb.compress component not be used that way? I had a look around the IDE code to see if i could find native uncompression methods but only found Shell commands. Many thanks for any advice BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Fri Sep 9 14:55:19 2022 From: bagoneo at libero.it (gian) Date: Fri, 9 Sep 2022 14:55:19 +0200 Subject: [Gambas-user] UnCompress question In-Reply-To: References: Message-ID: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> Il 09/09/22 12:18, Bruce Steers ha scritto: > > So i'm looking at using gb.compress > > Documentation says all about using UnCompress like a standard file > handle so I guess... > > 1. Open an archive file using Uncompress > 2. Open another file handle.. > 3. Read from uncompress and write data to std file handle. > > That all makes sense if my file only contains one file > > But how do you go about writing/unpacking multiple archive file contents > out to a directory? > > Or can gb.compress component not be used that way? > I had a look around the IDE code to see if i could find native > uncompression methods but only found Shell commands. > > Many thanks for any advice > BruceS > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi, I don't know if I understand the question but do you mean something like this? '---------------------------------------- Private $sPath As String = "/tmp/Foo" Public Sub Main() Dim hCompress As New Compress If Not Exist($sPath) Then Mkdir $sPath For i As Integer = 1 To 9 hCompress.Type = "zlib" hCompress.Open($sPath &/ "foo" & i & ".txt.gz") Write #hCompress, "Hello World !" Close #hCompress Next Decomprimi End Private Sub Decomprimi() Dim hUncompress As New Uncompress For Each sfile As String In Dir($sPath, "*.gz") hUncompress.Type = "zlib" hUncompress.File($sPath &/ sfile, $sPath &/ Left(sfile, -3)) Next End '---------------------------------------- Regards Gianluigi From bsteers4 at gmail.com Fri Sep 9 15:16:18 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Fri, 9 Sep 2022 14:16:18 +0100 Subject: [Gambas-user] UnCompress question In-Reply-To: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> Message-ID: No that would be multiple archives all with one txt file in each. I mean for example a gambas source archive that contains all the project files and folders. or if in your example the single archive contained all the the text files inside. How to unpack multiple files/folders out of a single archive. I can only seem to turn a tar.gz into a single tar file. I cannot seem to open a directory to write archive contents to only a file. TIA BruceS On Fri, 9 Sept 2022 at 13:57, gian via User wrote: > Il 09/09/22 12:18, Bruce Steers ha scritto: > > > > So i'm looking at using gb.compress > > > > Documentation says all about using UnCompress like a standard file > > handle so I guess... > > > > 1. Open an archive file using Uncompress > > 2. Open another file handle.. > > 3. Read from uncompress and write data to std file handle. > > > > That all makes sense if my file only contains one file > > > > But how do you go about writing/unpacking multiple archive file contents > > out to a directory? > > > > Or can gb.compress component not be used that way? > > I had a look around the IDE code to see if i could find native > > uncompression methods but only found Shell commands. > > > > Many thanks for any advice > > BruceS > > > > > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > Hi, > > I don't know if I understand the question but do you mean something like > this? > > '---------------------------------------- > Private $sPath As String = "/tmp/Foo" > > Public Sub Main() > > Dim hCompress As New Compress > > If Not Exist($sPath) Then Mkdir $sPath > For i As Integer = 1 To 9 > hCompress.Type = "zlib" > hCompress.Open($sPath &/ "foo" & i & ".txt.gz") > Write #hCompress, "Hello World !" > Close #hCompress > Next > > Decomprimi > > End > > Private Sub Decomprimi() > > Dim hUncompress As New Uncompress > > For Each sfile As String In Dir($sPath, "*.gz") > hUncompress.Type = "zlib" > hUncompress.File($sPath &/ sfile, $sPath &/ Left(sfile, -3)) > Next > > End > '---------------------------------------- > > Regards > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Fri Sep 9 15:39:17 2022 From: bagoneo at libero.it (gian) Date: Fri, 9 Sep 2022 15:39:17 +0200 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> Message-ID: <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> Il 09/09/22 15:16, Bruce Steers ha scritto: > No that would be multiple archives all with one txt file in each. > > I mean for example a gambas source archive that contains all the project > files and folders.? or if in your example the single archive contained > all the the text files inside. > > How to unpack multiple files/folders out of a single archive. > > I can only seem to turn a tar.gz into a single tar file. > I cannot seem to open a directory to write archive contents to only a file. > > TIA > BruceS I'm afraid you will have to use Shell or Exec :-/ Regards Gianluigi From bsteers4 at gmail.com Sat Sep 10 10:23:21 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 10 Sep 2022 09:23:21 +0100 Subject: [Gambas-user] UnCompress question In-Reply-To: <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> Message-ID: On Fri, 9 Sept 2022 at 14:41, gian via User wrote: > Il 09/09/22 15:16, Bruce Steers ha scritto: > > No that would be multiple archives all with one txt file in each. > > > > I mean for example a gambas source archive that contains all the project > > files and folders. or if in your example the single archive contained > > all the the text files inside. > > > > How to unpack multiple files/folders out of a single archive. > > > > I can only seem to turn a tar.gz into a single tar file. > > I cannot seem to open a directory to write archive contents to only a > file. > > > > TIA > > BruceS > > I'm afraid you will have to use Shell or Exec :-/ > > Regards > Gianluigi > So gb.compress is limited to only blind single file archives, no archive contents listing, no accessing / unpacking multiple files inside the archive? and unpacked filename must be already known/assumed as there's no way to read archive contents? seems like a lot of library for very little functionality. Could do with Uncompress.Dir() to list archive contents and then a way to extract single internal files like Uncompress.Extract(Path, Dest) sadly the component is written in C not gambas so it's beyond my tweaking. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Sat Sep 10 11:18:51 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 10 Sep 2022 11:18:51 +0200 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> Message-ID: <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> Le 10/09/2022 ? 10:23, Bruce Steers a ?crit?: > > So gb.compress is limited to only blind single file archives, no archive > contents listing, no accessing / unpacking multiple files inside the > archive? > and unpacked filename must be already known/assumed as there's no way to > read archive contents? > > seems like a lot of library for very little functionality. > > Could do with Uncompress.Dir() to list archive contents > and then a way to extract single internal files like > Uncompress.Extract(Path, Dest) > > sadly the component is written in C not gambas so it's beyond my tweaking. > > Respects > BruceS > > Yes. 'gb.compress' is for compressing, not archiving. If you want to create compressed archives, use the command-line tools. Regards, -- Beno?t Minisini. From gambas.fr at gmail.com Sat Sep 10 11:50:52 2022 From: gambas.fr at gmail.com (Fabien Bodard) Date: Sat, 10 Sep 2022 11:50:52 +0200 Subject: [Gambas-user] Implement DGNLib in gambas In-Reply-To: References: <1dd17411-a917-af5f-f55f-63974b746434@belmotek.net> <28fc4ec6d265573331009ec5c0b0c9dcafb169ba.camel@gmail.com> Message-ID: Hi Martin What are tout exactly trying to achieve ? Le mer. 7 sept. 2022 ? 09:23, Martin a ?crit : > El 7/9/22 a las 1:54, bb escribi?: > > That api file looks very old, 2003. DGN changed a lot since then, also > > the format changed and went closed at version 8. > > Yes, it is a library from 2005 to be more precise. > In my particular case I want to work with DGN files from that era, but > there is another library called gdal, which is available in the repos of > most linux distributions, and supports many vector formats, including > DGNv7 and DGNv8. It might be the optimal choice. > But I'm still in the same stalemate, I don't know how to deal with the > arc reading through extern or by creating a component. > > https://gdal.org/ > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gambas.fr at gmail.com Sat Sep 10 11:55:20 2022 From: gambas.fr at gmail.com (Fabien Bodard) Date: Sat, 10 Sep 2022 11:55:20 +0200 Subject: [Gambas-user] Implement DGNLib in gambas In-Reply-To: References: <1dd17411-a917-af5f-f55f-63974b746434@belmotek.net> <28fc4ec6d265573331009ec5c0b0c9dcafb169ba.camel@gmail.com> Message-ID: Also you don't need a lib to read binary files.. Just a little bit of knowledge about the file structure. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gambas.fr at gmail.com Sat Sep 10 12:15:08 2022 From: gambas.fr at gmail.com (Fabien Bodard) Date: Sat, 10 Sep 2022 12:15:08 +0200 Subject: [Gambas-user] 50 shades of gray :-D Message-ID: this a theme.. not finished yet ... to be accorded with the gambas mono icon style -- Fabien Bodard -------------- next part -------------- A non-text attachment was scrubbed... Name: Capture d??cran du 2022-09-10 12-12-48.png Type: image/png Size: 157536 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fabien.gambas.theme Type: application/x-theme Size: 925 bytes Desc: not available URL: From bsteers4 at gmail.com Sat Sep 10 14:25:01 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 10 Sep 2022 13:25:01 +0100 Subject: [Gambas-user] UnCompress question In-Reply-To: <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> Message-ID: On Sat, 10 Sept 2022 at 10:30, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 10/09/2022 ? 10:23, Bruce Steers a ?crit : > > > > So gb.compress is limited to only blind single file archives, no archive > > contents listing, no accessing / unpacking multiple files inside the > > archive? > > and unpacked filename must be already known/assumed as there's no way to > > read archive contents? > > > > seems like a lot of library for very little functionality. > > > > Could do with Uncompress.Dir() to list archive contents > > and then a way to extract single internal files like > > Uncompress.Extract(Path, Dest) > > > > sadly the component is written in C not gambas so it's beyond my > tweaking. > > > > Respects > > BruceS > > > > > > Yes. 'gb.compress' is for compressing, not archiving. > > If you want to create compressed archives, use the command-line tools. > > Regards, > > -- > Beno?t Minisini. > Ahh , very well I see there's /main/gbc/gbc_archive.c but it looks internal/private is there too much to do to update Uncompress to support listing and extracting items or can gbc_archive be modified to extract items and work publicly? I assume gambas itself (gbc) can unarchive because a gambas exe is an archive (or am i wrong about that and it works differently?) Note: not interested in adding/making archives just extracting. Reason: I'm adding an update class to my progs that uses gitlab, It checks version in .project file and downloads the archive if newer, then extracts contents to update/compile source. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From adamnt42 at gmail.com Sat Sep 10 15:24:27 2022 From: adamnt42 at gmail.com (bb) Date: Sat, 10 Sep 2022 22:54:27 +0930 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> Message-ID: <2d865b1399087667d55a05bffc75a9a9b4ebe899.camel@gmail.com> Well, this thread has got me completely de-pressed (see what I did there ?? ??). I thought that finally the discussion would resolve why I could never work out how to write a monthly job to "archive" all my log files into one file. C'est l vie. b From benoit.minisini at gambas-basic.org Sat Sep 10 16:11:57 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 10 Sep 2022 16:11:57 +0200 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> Message-ID: <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> Le 10/09/2022 ? 14:25, Bruce Steers a ?crit?: > Yes. 'gb.compress' is for compressing, not archiving. > > If you want to create compressed archives, use the command-line tools. > > Regards, > > -- > Beno?t Minisini. > > > Ahh , very well > I see there's /main/gbc/gbc_archive.c but it looks internal/private is > there too much to do to update Uncompress to support listing and > extracting items or can gbc_archive be modified to extract items and > work publicly? > > I assume gambas itself (gbc) can unarchive because a gambas exe is an > archive (or am i wrong about that and it works differently?) > > Note: not interested in adding/making archives just extracting. > > Reason: I'm adding an update class to my progs that uses gitlab, > It checks version in .project file and downloads the archive if newer, > then extracts contents to update/compile source. > > Respects > BruceS > I really don't see the problem with using SHELL or EXEC with 'zip', 'tar', and so on. -- Beno?t Minisini. From bsteers4 at gmail.com Sun Sep 11 16:35:53 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 11 Sep 2022 15:35:53 +0100 Subject: [Gambas-user] UnCompress question In-Reply-To: <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> Message-ID: On Sat, 10 Sept 2022 at 15:12, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 10/09/2022 ? 14:25, Bruce Steers a ?crit : > > Yes. 'gb.compress' is for compressing, not archiving. > > > > If you want to create compressed archives, use the command-line > tools. > > > > Regards, > > > > -- > > Beno?t Minisini. > > > > > > Ahh , very well > > I see there's /main/gbc/gbc_archive.c but it looks internal/private is > > there too much to do to update Uncompress to support listing and > > extracting items or can gbc_archive be modified to extract items and > > work publicly? > > > > I assume gambas itself (gbc) can unarchive because a gambas exe is an > > archive (or am i wrong about that and it works differently?) > > > > Note: not interested in adding/making archives just extracting. > > > > Reason: I'm adding an update class to my progs that uses gitlab, > > It checks version in .project file and downloads the archive if newer, > > then extracts contents to update/compile source. > > > > Respects > > BruceS > > > > I really don't see the problem with using SHELL or EXEC with 'zip', > 'tar', and so on. > aah fair enough. Shell or Exec it is then :) Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Sun Sep 11 19:58:59 2022 From: mbelmonte at belmotek.net (Martin) Date: Sun, 11 Sep 2022 19:58:59 +0200 Subject: [Gambas-user] Implement DGNLib in gambas In-Reply-To: References: <1dd17411-a917-af5f-f55f-63974b746434@belmotek.net> <28fc4ec6d265573331009ec5c0b0c9dcafb169ba.camel@gmail.com> Message-ID: El 10/9/22 a las 11:50, Fabien Bodard escribi?: > What are tout exactly trying to achieve ? Hi Fabien. The idea behind this topic is to be able to import and export DGN v7 files [1]. The CAD programs GambasCAD (from tercoide) and GauchoSketch (mine) currently import DWG and for that they use an external C program (from the LibreDWG project) through Shell that extracts the data from a DWG file and with that information, after sorting it, draws the plan. At the moment I am adding the feature to import DGN files with more or less the same method. As the dgnlib library is smaller, is perfectly documented and also allows to write DGN files I would like to be able to use directly the library with extern in gambas and skip the TXT generation step and try to write DGN files. [1] v7 because the library does not open version 8 and there is no free licensed library available for v8. Regards. Mart?n Belmonte. From bsteers4 at gmail.com Mon Sep 12 11:37:03 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 12 Sep 2022 10:37:03 +0100 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> Message-ID: On Sun, 11 Sept 2022 at 15:35, Bruce Steers wrote: > > > > On Sat, 10 Sept 2022 at 15:12, Benoit Minisini < > benoit.minisini at gambas-basic.org> wrote: > >> Le 10/09/2022 ? 14:25, Bruce Steers a ?crit : >> > Yes. 'gb.compress' is for compressing, not archiving. >> > >> > If you want to create compressed archives, use the command-line >> tools. >> > >> > Regards, >> > >> > -- >> > Beno?t Minisini. >> > >> > >> > Ahh , very well >> > I see there's /main/gbc/gbc_archive.c but it looks internal/private is >> > there too much to do to update Uncompress to support listing and >> > extracting items or can gbc_archive be modified to extract items and >> > work publicly? >> > >> > I assume gambas itself (gbc) can unarchive because a gambas exe is an >> > archive (or am i wrong about that and it works differently?) >> > >> > Note: not interested in adding/making archives just extracting. >> > >> > Reason: I'm adding an update class to my progs that uses gitlab, >> > It checks version in .project file and downloads the archive if newer, >> > then extracts contents to update/compile source. >> > >> > Respects >> > BruceS >> > >> >> I really don't see the problem with using SHELL or EXEC with 'zip', >> 'tar', and so on. >> > > aah fair enough. Shell or Exec it is then :) > Respects > BruceS > Maybe we (i could have a go) could expand Shell in gb.util a bit to be more than MkDir, RmDir, Move? (btw. i am considering Shell.class to be where we would put some functions that are just for Shell/Exec use) Things i think (have previously thought) would be useful Shell commands for everyone to have in gambas... Shell.ArchiveList(ArchivePath) As String[] ' could auto-handle various filetypes. Shell.ArchiveExtract(ArchivePath, DestFolder, Optional FileList As String[]) Shell.ArchiveAdd(ArchivePath, FileList As String[]) Shell.PackageInstall(PkgName) ' basic installer that will handle most installers and be fine for simple package names, returning error code if any. Eg. Shell.PackageInstall("git") Some multi-platform compatible functions like this just some food for thought :) Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Mon Sep 12 11:54:53 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 12 Sep 2022 11:54:53 +0200 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> Message-ID: Le 12/09/2022 ? 11:37, Bruce Steers a ?crit?: > > > On Sun, 11 Sept 2022 at 15:35, Bruce Steers > wrote: > > > > > On Sat, 10 Sept 2022 at 15:12, Benoit Minisini > > wrote: > > Le 10/09/2022 ? 14:25, Bruce Steers a ?crit?: > >? ? ?Yes. 'gb.compress' is for compressing, not archiving. > > > >? ? ?If you want to create compressed archives, use the > command-line tools. > > > >? ? ?Regards, > > > >? ? ?-- > >? ? ?Beno?t Minisini. > > > > > > Ahh , very well > > I see there's /main/gbc/gbc_archive.c but it looks > internal/private is > > there too much to do to update Uncompress to support listing and > > extracting items or can gbc_archive be modified to extract > items and > > work publicly? > > > > I assume gambas itself (gbc) can unarchive because a gambas > exe is an > > archive (or am i wrong about that and it works differently?) > > > > Note: not interested in adding/making archives just extracting. > > > > Reason: I'm adding an update class to my progs that uses gitlab, > > It checks version in .project file and downloads the archive > if newer, > > then extracts contents to update/compile source. > > > > Respects > > BruceS > > > > I really don't see the problem with using SHELL or EXEC with 'zip', > 'tar', and so on. > > > aah fair enough.? Shell or Exec it is then :) > Respects > BruceS > > > > Maybe we (i could have a go) could expand Shell in gb.util a bit to be > more than MkDir, RmDir, Move? > (btw. i am considering Shell.class to be where we would put some > functions that are just for Shell/Exec use) > > Things i think (have previously thought) would be useful Shell commands > for everyone to have in gambas... > > Shell.ArchiveList(ArchivePath) As String[] '? could auto-handle various > filetypes. > Shell.ArchiveExtract(ArchivePath, DestFolder, Optional FileList As String[]) > Shell.ArchiveAdd(ArchivePath, FileList As String[]) > > Shell.PackageInstall(PkgName) ' basic installer that will handle most > installers and be fine for simple package names, returning error code if > any. > Eg.? Shell.PackageInstall("git") > > Some multi-platform compatible functions like this > > just some food for thought :) > Respects > BruceS > Not in 'gb.util', which cannot depend on any external library, and should not depend on external tools. 'gb.util' is only for adding less common small functions and features to the language. A common interface to the underlying various archive tools should have its own component. Installing package is something entirely system et distribution specific, so it should have its own component too. Moreover, this feature seems to have already been standardized with 'PackageKit', so maybe one should look at it first. Regards, -- Beno?t Minisini. From adamnt42 at gmail.com Mon Sep 12 12:00:19 2022 From: adamnt42 at gmail.com (bb) Date: Mon, 12 Sep 2022 19:30:19 +0930 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> Message-ID: <255c2d2f0dd7338ae46b131d528d6d4225f37004.camel@gmail.com> On Mon, 2022-09-12 at 10:37 +0100, Bruce Steers wrote: > Shell.ArchiveAdd(ArchivePath, FileList As String[] would imply that Shell.ArchiveCreate(ArchivePath) is also needed! b -------------- next part -------------- An HTML attachment was scrubbed... URL: From adamnt42 at gmail.com Mon Sep 12 12:00:19 2022 From: adamnt42 at gmail.com (bb) Date: Mon, 12 Sep 2022 19:30:19 +0930 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> Message-ID: <255c2d2f0dd7338ae46b131d528d6d4225f37004.camel@gmail.com> On Mon, 2022-09-12 at 10:37 +0100, Bruce Steers wrote: > Shell.ArchiveAdd(ArchivePath, FileList As String[] would imply that Shell.ArchiveCreate(ArchivePath) is also needed! b -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Tue Sep 13 12:14:45 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 13 Sep 2022 11:14:45 +0100 Subject: [Gambas-user] UnCompress question In-Reply-To: References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> Message-ID: On Mon, 12 Sept 2022 at 10:55, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 12/09/2022 ? 11:37, Bruce Steers a ?crit : > > > > > > On Sun, 11 Sept 2022 at 15:35, Bruce Steers > > wrote: > > > > > > > > > > On Sat, 10 Sept 2022 at 15:12, Benoit Minisini > > > > wrote: > > > > Le 10/09/2022 ? 14:25, Bruce Steers a ?crit : > > > Yes. 'gb.compress' is for compressing, not archiving. > > > > > > If you want to create compressed archives, use the > > command-line tools. > > > > > > Regards, > > > > > > -- > > > Beno?t Minisini. > > > > > > > > > Ahh , very well > > > I see there's /main/gbc/gbc_archive.c but it looks > > internal/private is > > > there too much to do to update Uncompress to support listing > and > > > extracting items or can gbc_archive be modified to extract > > items and > > > work publicly? > > > > > > I assume gambas itself (gbc) can unarchive because a gambas > > exe is an > > > archive (or am i wrong about that and it works differently?) > > > > > > Note: not interested in adding/making archives just > extracting. > > > > > > Reason: I'm adding an update class to my progs that uses > gitlab, > > > It checks version in .project file and downloads the archive > > if newer, > > > then extracts contents to update/compile source. > > > > > > Respects > > > BruceS > > > > > > > I really don't see the problem with using SHELL or EXEC with > 'zip', > > 'tar', and so on. > > > > > > aah fair enough. Shell or Exec it is then :) > > Respects > > BruceS > > > > > > > > Maybe we (i could have a go) could expand Shell in gb.util a bit to be > > more than MkDir, RmDir, Move? > > (btw. i am considering Shell.class to be where we would put some > > functions that are just for Shell/Exec use) > > > > Things i think (have previously thought) would be useful Shell commands > > for everyone to have in gambas... > > > > Shell.ArchiveList(ArchivePath) As String[] ' could auto-handle various > > filetypes. > > Shell.ArchiveExtract(ArchivePath, DestFolder, Optional FileList As > String[]) > > Shell.ArchiveAdd(ArchivePath, FileList As String[]) > > > > Shell.PackageInstall(PkgName) ' basic installer that will handle most > > installers and be fine for simple package names, returning error code if > > any. > > Eg. Shell.PackageInstall("git") > > > > Some multi-platform compatible functions like this > > > > just some food for thought :) > > Respects > > BruceS > > > > Not in 'gb.util', which cannot depend on any external library, and > should not depend on external tools. 'gb.util' is only for adding less > common small functions and features to the language. > > A common interface to the underlying various archive tools should have > its own component. > > Installing package is something entirely system et distribution > specific, so it should have its own component too. > > Moreover, this feature seems to have already been standardized with > 'PackageKit', so maybe one should look at it first. > > Regards, > > -- > Beno?t Minisini. > Aah yes, my understanding of the purpose of gb.util was incorrect. so components like gb.archiver and gb.packager Looking at PackageKit the main page mentions it's lack of functionality in a few areas , like dependencies for example. Quote: https://www.freedesktop.org/software/PackageKit/pk-faq.html How does PackageKit handle dependencies? PackageKit does not do dependency resolution. This problem has already been solved by the backend systems and we don't really want to re-invent the wheel. PackageKit does not have the fine-grained API to do everything. For instance, synaptic should still use libapt as can do much more than can be provided by PackageKit. So possibly using the backends is the way to go? backends and functionality are listed here.. https://www.freedesktop.org/software/PackageKit/pk-matrix.html only aptcc alpm entropy poldek portage slapt dnf zypp Maybe gambas environment is available to other pkg installers too? I'll look into it and see if i can make something simple (non bloated) As for archiving i think yes a simple Archiver class/component that's a common interface to support various popular archive types automatically could also be useful to many. Cheers Ben Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Tue Sep 13 12:28:08 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 13 Sep 2022 11:28:08 +0100 Subject: [Gambas-user] UnCompress question In-Reply-To: <255c2d2f0dd7338ae46b131d528d6d4225f37004.camel@gmail.com> References: <7c2ef744-a5af-ff6b-111d-5759f1ed9feb@libero.it> <97c1ad6a-0dea-506f-885d-6b112f7b40bc@libero.it> <81b0fcba-839a-2ff4-93ca-2269e3b84d4b@gambas-basic.org> <616c55a1-da76-e072-242b-6f38a5221518@gambas-basic.org> <255c2d2f0dd7338ae46b131d528d6d4225f37004.camel@gmail.com> Message-ID: On Mon, 12 Sept 2022 at 11:06, bb wrote: > On Mon, 2022-09-12 at 10:37 +0100, Bruce Steers wrote: > > Shell.ArchiveAdd(ArchivePath, FileList As String[] > > would imply that Shell.ArchiveCreate(ArchivePath) is also needed! > b > I was thinking of keeping it simple, maybe auto-handle a Create if needed. I think the intention of a common basic interface should be to simplify all operations as much as possible. I think only a few basic commands are required to be able to... * extract a whole archive. * extract specific files either via list or pattern matching * list contents (with pattern matching) * add files to an archive (create new archive if needed) * remove files from an archive other optional features could be... * Test archive. * any other more used features i have never used so am oblivious to. initially i am building for just handling zip and tar (will probably add rar too) and currently only by extension not mimetype. Suggestions for other formats to support are welcomed. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From gambas.fr at gmail.com Tue Sep 13 12:50:39 2022 From: gambas.fr at gmail.com (Fabien Bodard) Date: Tue, 13 Sep 2022 12:50:39 +0200 Subject: [Gambas-user] Implement DGNLib in gambas In-Reply-To: References: <1dd17411-a917-af5f-f55f-63974b746434@belmotek.net> <28fc4ec6d265573331009ec5c0b0c9dcafb169ba.camel@gmail.com> Message-ID: So you have to look to implement the lib via extern call. -------------- next part -------------- An HTML attachment was scrubbed... URL: From hans at gambas-buch.de Fri Sep 16 16:28:19 2022 From: hans at gambas-buch.de (Hans Lehmann) Date: Fri, 16 Sep 2022 16:28:19 +0200 Subject: [Gambas-user] Fehler Message-ID: <0ee2b638-7b02-af3b-ce68-299eed1214f4@gambas-buch.de> Hello, the DataView control - and therefore also DataBrowser - contains a gross error in my opinion. This is how the error can be triggered: * The property DataBrowser1.View.Sorted is set to True. * A selected field is sorted. The sort order is freely selectable. If you change the field value for the field 'Flowername' for the first time (!) for example from 'Ranunkel' to 'Manunkel' and save the changed record, the changed value will be displayed correctly in the Databrowser. If you change the field value for the field `Flowername` a second time (!) for example from `Selaginella` to `Telaginella` and save the changed record again, then two identical records will be displayed in the databrowser: With best regards Hans -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: b1.png Type: image/png Size: 102057 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: b2.png Type: image/png Size: 102228 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: b3.png Type: image/png Size: 115453 bytes Desc: not available URL: From claus.dietrich at freenet.de Sat Sep 17 10:17:38 2022 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Sat, 17 Sep 2022 10:17:38 +0200 Subject: [Gambas-user] Fehler Message-ID: An HTML attachment was scrubbed... URL: From claus.dietrich at freenet.de Sat Sep 17 13:49:48 2022 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Sat, 17 Sep 2022 13:49:48 +0200 Subject: [Gambas-user] Fehler Message-ID: <0fe02a9c-d659-e308-1409-0b5259024d6a@freenet.de> Correction: The effect that modified data are not stored in the database are related to other peculiar circumstances. So this doesn't belong to the bug. Regards Claus From vuott at tutanota.com Sat Sep 17 18:11:06 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Sat, 17 Sep 2022 18:11:06 +0200 (CEST) Subject: [Gambas-user] "_Download ()" Event of "WebView" Message-ID: Hello, can someone explain to me? (even by inserting an essential code)? how the "_Download ()" Event of "WebView" Class works ? Regards vuott -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Sun Sep 18 00:24:17 2022 From: bagoneo at libero.it (gian) Date: Sun, 18 Sep 2022 00:24:17 +0200 Subject: [Gambas-user] Fehler In-Reply-To: <0ee2b638-7b02-af3b-ce68-299eed1214f4@gambas-buch.de> References: <0ee2b638-7b02-af3b-ce68-299eed1214f4@gambas-buch.de> Message-ID: <1d9ab7ae-2ffb-c589-6cbf-ecfcd50c82bd@libero.it> Il 16/09/22 16:28, Hans Lehmann ha scritto: > Hello, > > the DataView control - and therefore also DataBrowser - contains a gross > error in my opinion. > > This is how the error can be triggered: > > * The property DataBrowser1.View.Sorted is set to True. > * A selected field is sorted. The sort order is freely selectable. > > > > If you change the field value for the field 'Flowername' for the first > time (!) for example from 'Ranunkel' to 'Manunkel' and save the changed > record, the changed value will be displayed correctly in the Databrowser. > > > > If you change the field value for the field `Flowername` a second time > (!) for example from `Selaginella` to `Telaginella` and save the changed > record again, then two identical records will be displayed in the > databrowser: > > > > With best regards > > Hans > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Hans, in this example I can't replicate what you wrote, can you? https://paste.c-net.org/SoftenVenus Greetings Gianluigi From bagoneo at libero.it Sun Sep 18 00:58:50 2022 From: bagoneo at libero.it (gian) Date: Sun, 18 Sep 2022 00:58:50 +0200 Subject: [Gambas-user] Fehler In-Reply-To: <1d9ab7ae-2ffb-c589-6cbf-ecfcd50c82bd@libero.it> References: <0ee2b638-7b02-af3b-ce68-299eed1214f4@gambas-buch.de> <1d9ab7ae-2ffb-c589-6cbf-ecfcd50c82bd@libero.it> Message-ID: <2b10614b-129a-f0fc-f141-c6cb0a894bdd@libero.it> Il 18/09/22 00:24, gian via User ha scritto: > Il 16/09/22 16:28, Hans Lehmann ha scritto: >> Hello, >> >> the DataView control - and therefore also DataBrowser - contains a >> gross error in my opinion. >> >> This is how the error can be triggered: >> >> * The property DataBrowser1.View.Sorted is set to True. >> * A selected field is sorted. The sort order is freely selectable. >> >> >> >> If you change the field value for the field 'Flowername' for the first >> time (!) for example from 'Ranunkel' to 'Manunkel' and save the >> changed record, the changed value will be displayed correctly in the >> Databrowser. >> >> >> >> If you change the field value for the field `Flowername` a second time >> (!) for example from `Selaginella` to `Telaginella` and save the >> changed record again, then two identical records will be displayed in >> the databrowser: >> >> >> >> With best regards >> >> Hans >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Hi Hans, > > in this example I can't replicate what you wrote, can you? > > https://paste.c-net.org/SoftenVenus > > Greetings > > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Correction, it happens to me too: if I change the name from Daisy to Minnie, then sort the names in descending order and rename back to Daisy Lilac also changes to Daisy and the image is replaced as well. Benoit would seem to be a bug, what do you think? Greetings Gianluigi From bagoneo at libero.it Mon Sep 19 18:17:55 2022 From: bagoneo at libero.it (gian) Date: Mon, 19 Sep 2022 18:17:55 +0200 Subject: [Gambas-user] The 3.17 version is missing in Bugtracker Message-ID: <34fd7071-3dd0-b6cd-2e0a-ffcc89b7be56@libero.it> Hi Benoit, we noticed that in the bugtracker you can report bugs up to version 3.16, 3.17 is missing Regards Gianluigi From benoit.minisini at gambas-basic.org Mon Sep 19 19:04:41 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 19 Sep 2022 19:04:41 +0200 Subject: [Gambas-user] The 3.17 version is missing in Bugtracker In-Reply-To: <34fd7071-3dd0-b6cd-2e0a-ffcc89b7be56@libero.it> References: <34fd7071-3dd0-b6cd-2e0a-ffcc89b7be56@libero.it> Message-ID: <5e3402ea-3e7f-feab-44d8-395a0a8f0a83@gambas-basic.org> Le 19/09/2022 ? 18:17, gian via User a ?crit?: > Hi Benoit, > > we noticed that in the bugtracker you can report bugs up to version > 3.16, 3.17 is missing > > Regards > > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Fixed! -- Beno?t Minisini. From bagoneo at libero.it Mon Sep 19 19:14:46 2022 From: bagoneo at libero.it (gian) Date: Mon, 19 Sep 2022 19:14:46 +0200 Subject: [Gambas-user] The 3.17 version is missing in Bugtracker In-Reply-To: <5e3402ea-3e7f-feab-44d8-395a0a8f0a83@gambas-basic.org> References: <34fd7071-3dd0-b6cd-2e0a-ffcc89b7be56@libero.it> <5e3402ea-3e7f-feab-44d8-395a0a8f0a83@gambas-basic.org> Message-ID: <4337ac44-b0bb-0602-ed2c-a6fe34832a88@libero.it> Il 19/09/22 19:04, Benoit Minisini ha scritto: > Le 19/09/2022 ? 18:17, gian via User a ?crit?: >> Hi Benoit, >> >> we noticed that in the bugtracker you can report bugs up to version >> 3.16, 3.17 is missing >> >> Regards >> >> Gianluigi >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Fixed! > ? Thank you ! From benoit.minisini at gambas-basic.org Mon Sep 19 19:52:51 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 19 Sep 2022 19:52:51 +0200 Subject: [Gambas-user] "_Download ()" Event of "WebView" In-Reply-To: References: Message-ID: <7bd2f724-2418-a85c-3b24-256abbee0bb9@gambas-basic.org> Le 17/09/2022 ? 18:11, vuott--- via User a ?crit?: > Hello, > can someone explain to me? (even by inserting an essential code)? how > the "_Download ()" Event of "WebView" Class works ? > > Regards > vuott > You have a "WebBrowser" project in the source code examples that will show you how to use the 'Download' event. Basically, the 'Download' event is raised when the WebView requests a download for a file it cannot directly handle. The 'Download' event receives a 'WebDownload' object that allows to define where the download must be saved, to follow the download progression or to cancel it. If you stop the 'Download' event, or if you don't define the 'Path' property of the WebDownload object, the download is cancelled. Note that the 'Download' event is only implemented in the deprecated webview, not the new one. Regards, -- Beno?t Minisini. From vuott at tutanota.com Mon Sep 19 21:54:01 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Mon, 19 Sep 2022 21:54:01 +0200 (CEST) Subject: [Gambas-user] "_Download ()" Event of "WebView" In-Reply-To: <7bd2f724-2418-a85c-3b24-256abbee0bb9@gambas-basic.org> References: <7bd2f724-2418-a85c-3b24-256abbee0bb9@gambas-basic.org> Message-ID: Ok, thank you regards vuott 19 set 2022, 19:52 da benoit.minisini at gambas-basic.org: > Le 17/09/2022 ? 18:11, vuott--- via User a ?crit?: > >> Hello, >> can someone explain to me? (even by inserting an essential code)? how the "_Download ()" Event of "WebView" Class works ? >> >> Regards >> vuott >> > > You have a "WebBrowser" project in the source code examples that will show you how to use the 'Download' event. > > Basically, the 'Download' event is raised when the WebView requests a download for a file it cannot directly handle. > > The 'Download' event receives a 'WebDownload' object that allows to define where the download must be saved, to follow the download progression or to cancel it. > > If you stop the 'Download' event, or if you don't define the 'Path' property of the WebDownload object, the download is cancelled. > > Note that the 'Download' event is only implemented in the deprecated webview, not the new one. > > Regards, > > -- > Beno?t Minisini. > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Tue Sep 20 22:12:33 2022 From: bagoneo at libero.it (gian) Date: Tue, 20 Sep 2022 22:12:33 +0200 Subject: [Gambas-user] Gambas-it.org communication Message-ID: As of this morning the Italian site is unreachable. I still have no communication about this from the administrator. As soon as I know something I will let them know. The Italian wiki is still active: https://www.gambas-it.org/wiki/index.php/Pagina_principale Regards Gianluigi From bagoneo at libero.it Thu Sep 22 13:57:45 2022 From: bagoneo at libero.it (gian) Date: Thu, 22 Sep 2022 13:57:45 +0200 Subject: [Gambas-user] Drag & Drop ListView selection, does not work Message-ID: <5e224385-4024-f892-f8e9-4ca5fc72f374@libero.it> Hi List, Can someone help me, I wish to select immediately the moved item and instead here the item with key "3" is selected. See attached project Thank you and regards Gianluigi P.S. Benoit, even if I enter a stop event the selection moves to key "3" ! -------------- next part -------------- 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 IxzhCEf4L+HfAFGsS20AeAAA From bagoneo at libero.it Thu Sep 22 14:37:34 2022 From: bagoneo at libero.it (gian) Date: Thu, 22 Sep 2022 14:37:34 +0200 Subject: [Gambas-user] Drag & Drop ListView selection, does not work In-Reply-To: <5e224385-4024-f892-f8e9-4ca5fc72f374@libero.it> References: <5e224385-4024-f892-f8e9-4ca5fc72f374@libero.it> Message-ID: <18866a95-1b3f-c3ea-7fe2-70b29f5c768b@libero.it> Il 22/09/22 13:57, gian via User ha scritto: > Hi List, > > Can someone help me, I wish to select immediately the moved item and > instead here the item with key "3" is selected. > See attached project > > Thank you and regards > > Gianluigi > > P.S. Benoit, even if I enter a stop event the selection moves to key "3" ! > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Sorry, I have done so many tests that I don't understand it anymore :-( I think the correct one (let's say) is this attached. Greetings Gianluigi -------------- next part -------------- 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 eAAA From bagoneo at libero.it Thu Sep 22 14:48:28 2022 From: bagoneo at libero.it (gian) Date: Thu, 22 Sep 2022 14:48:28 +0200 Subject: [Gambas-user] Drag & Drop ListView selection, does not work In-Reply-To: <18866a95-1b3f-c3ea-7fe2-70b29f5c768b@libero.it> References: <5e224385-4024-f892-f8e9-4ca5fc72f374@libero.it> <18866a95-1b3f-c3ea-7fe2-70b29f5c768b@libero.it> Message-ID: <988abe14-6aa2-de8e-0b68-4e7f0f204600@libero.it> Il 22/09/22 14:37, gian via User ha scritto: > Il 22/09/22 13:57, gian via User ha scritto: >> Hi List, >> >> Can someone help me, I wish to select immediately the moved item and >> instead here the item with key "3" is selected. >> See attached project >> >> Thank you and regards >> >> Gianluigi >> >> P.S. Benoit, even if I enter a stop event the selection moves to key >> "3" ! >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Sorry, I have done so many tests that I don't understand it anymore :-( > > I think the correct one (let's say) is this attached. > > Greetings > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- As usual I misunderstood, on the first attempt the selection repositions itself to where the moved item originally was. It does this twice, creating a malfunction I hope I explained myself better. The bottom line is, why is it such a struggle to select an item? Good day Gianluigi From fabien.toniutti at free.fr Fri Sep 23 08:16:25 2022 From: fabien.toniutti at free.fr (fabien.toniutti at free.fr) Date: Fri, 23 Sep 2022 08:16:25 +0200 Subject: [Gambas-user] Help for libmodbus TCP Message-ID: <4bb7dd482cd0094d3f2b3c26f706b83c@free.fr> Hi everyone, I try to use libmodbus tcp ip in gambas but i have some questions. First, i see in libmodbus, source code external methods to extern in gambas. well i write this code : Extern modbus_t(mb As Object) In "libmodbus" Extern modbus_new_tcp(myaddress As String, myport As Integer) In "libmodbus" Extern modbus_connect(mb As Object) In "libmodbus" Extern modbus_read_registers(mb As Object, myaddress As Integer, myregister As Integer, tab_reg As Integer[]) In "libmodbus" Extern modbus_write_registers(mb As Object, myaddress As Integer, myregister As Integer, tab_reg As Integer[]) In "libmodbus" Extern modbus_close(mb As Object) In "libmodbus" Extern modbus_free(mb As Object) In "libmodbus" Public Sub Button1_Click() Dim mb As Modbus_t() '<--------------------------------------------------- error here mb = New Modbus_new_tcp("127.0.0.1", 1502) End but when i execute program, gambas says to me : unknown indetifier Modbus_t() (where is arrow above) Could you explain me how to solve this problem? is already someone used to program modbus tcpip in gambas on the net? i need example. Thanks a lot for your answer. spheris From vuott at tutanota.com Fri Sep 23 08:58:59 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Fri, 23 Sep 2022 08:58:59 +0200 (CEST) Subject: [Gambas-user] Help for libmodbus TCP In-Reply-To: <4bb7dd482cd0094d3f2b3c26f706b83c@free.fr> References: <4bb7dd482cd0094d3f2b3c26f706b83c@free.fr> Message-ID: Hello spheris, 1) Modbus_t() is a Function not a data-type, so you cannot declare it via "Dim". In fact you have already declared it with "Extern". 2) (mb As Object) .... Clanguage doesn't know "Object" data-type ! regards vuott 23 set 2022, 08:16 da fabien.toniutti at free.fr: > Hi everyone, > I try to use libmodbus tcp ip in gambas but i have some questions. > First, i see in libmodbus, source code external methods to extern in gambas. > well i write this code : > > Extern modbus_t(mb As Object) In "libmodbus" > Extern modbus_new_tcp(myaddress As String, myport As Integer) In "libmodbus" > Extern modbus_connect(mb As Object) In "libmodbus" > Extern modbus_read_registers(mb As Object, myaddress As Integer, myregister As Integer, tab_reg As Integer[]) In "libmodbus" > Extern modbus_write_registers(mb As Object, myaddress As Integer, myregister As Integer, tab_reg As Integer[]) In "libmodbus" > Extern modbus_close(mb As Object) In "libmodbus" > Extern modbus_free(mb As Object) In "libmodbus" > > Public Sub Button1_Click() > Dim mb As Modbus_t() '<--------------------------------------------------- error here > mb = New Modbus_new_tcp("127.0.0.1", 1502) > End > > but when i execute program, gambas says to me : unknown indetifier Modbus_t() (where is arrow above) > Could you explain me how to solve this problem? > is already someone used to program modbus tcpip in gambas on the net? i need example. > Thanks a lot for your answer. > spheris > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From adamnt42 at gmail.com Fri Sep 23 09:24:18 2022 From: adamnt42 at gmail.com (bb) Date: Fri, 23 Sep 2022 16:54:18 +0930 Subject: [Gambas-user] Help for libmodbus TCP In-Reply-To: <4bb7dd482cd0094d3f2b3c26f706b83c@free.fr> References: <4bb7dd482cd0094d3f2b3c26f706b83c@free.fr> Message-ID: <32a05936842269b403863ef0e5a833b93a2447a8.camel@gmail.com> On Fri, 2022-09-23 at 08:16 +0200, fabien.toniutti at free.fr wrote: > > Public Sub Button1_Click() > Dim mb As Modbus_t()? > '<--------------------------------------------------- error here > ?? mb = New Modbus_new_tcp("127.0.0.1", 1502) > End > > but when i execute program, gambas says to me : unknown indetifier > Modbus_t() (where is arrow above) > Could you explain me how to solve this problem? > is already someone used to program modbus tcpip in gambas on the net? > i > need example. > Thanks a lot for? your answer. > spheris > > ----[ http://gambaswiki.org/wiki/doc/netiquette?]---- >From the Fine Help: Sometimes an external function returns a pointer, and this pointer will be required in order to invoke subsequent calls to the external library. This case is much like creating a Form, and using its reference to operate on the form itself. In this case, the data behind (pointed by) the pointer is said to be "opaque": we can not see through something opaque, so we don't know, and we don't want to know. This is the simplest case; an example about this is the LDAP library. The first thing to do to interact with LDAP is to open a connection to a server. All the subsequent operations will be made on the connection created by a specific call. Things go like this: LIBRARY "libldap:2" PRIVATE EXTERN ldap_init(host AS String, port AS Integer) AS Pointer PRIVATE ldapconn as Pointer ... ldapconn = ldap_init(host, 389) IF ldapconn = NULL THEN error.Raise("Can not connect to the ldap server") and from the Fine Help for libmodbus: https://www.libmodbus.org/docs/v3.1.7/modbus_new_tcp.html see especially what the function returns.... b From adamnt42 at gmail.com Fri Sep 23 09:26:29 2022 From: adamnt42 at gmail.com (bb) Date: Fri, 23 Sep 2022 16:56:29 +0930 Subject: [Gambas-user] Help for libmodbus TCP In-Reply-To: <32a05936842269b403863ef0e5a833b93a2447a8.camel@gmail.com> References: <4bb7dd482cd0094d3f2b3c26f706b83c@free.fr> <32a05936842269b403863ef0e5a833b93a2447a8.camel@gmail.com> Message-ID: <24d7145f16ea277d0e3a5478f1e2a42086943281.camel@gmail.com> On Fri, 2022-09-23 at 16:54 +0930, bb wrote: > > > From the Fine Help: Sorry missed pasting the link: https://gambaswiki.org/wiki/howto/extern From vuott at tutanota.com Fri Sep 23 16:37:26 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Fri, 23 Sep 2022 16:37:26 +0200 (CEST) Subject: [Gambas-user] Help for libmodbus TCP In-Reply-To: <32a05936842269b403863ef0e5a833b93a2447a8.camel@gmail.com> References: <4bb7dd482cd0094d3f2b3c26f706b83c@free.fr> <32a05936842269b403863ef0e5a833b93a2447a8.camel@gmail.com> Message-ID: Hello? b, thanks for reporting the site. In fact, as you said, the documentation specifies that ? modbus_t context is an opaquestructure containing all necessary information to establish a connection withother Modbus devices ? : https://www.libmodbus.org/docs/v3.1.7/??? (there, in "Context" paragraph). Thanks again vuott 23 set 2022, 09:24 da adamnt42 at gmail.com: > On Fri, 2022-09-23 at 08:16 +0200, fabien.toniutti at free.fr wrote: > >> >> Public Sub Button1_Click() >> Dim mb As Modbus_t()? >> '<--------------------------------------------------- error here >> ?? mb = New Modbus_new_tcp("127.0.0.1", 1502) >> End >> >> but when i execute program, gambas says to me : unknown indetifier >> Modbus_t() (where is arrow above) >> Could you explain me how to solve this problem? >> is already someone used to program modbus tcpip in gambas on the net? >> i >> need example. >> Thanks a lot for? your answer. >> spheris >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette?]---- >> > > From the Fine Help: > Sometimes an external function returns a pointer, and this pointer will > be required in order to invoke subsequent calls to the external > library. This case is much like creating a Form, and using its > reference to operate on the form itself. In this case, the data behind > (pointed by) the pointer is said to be "opaque": we can not see through > something opaque, so we don't know, and we don't want to know. This is > the simplest case; an example about this is the LDAP library. The first > thing to do to interact with LDAP is to open a connection to a server. > All the subsequent operations will be made on the connection created by > a specific call. Things go like this: > > LIBRARY "libldap:2" > PRIVATE EXTERN ldap_init(host AS String, port AS Integer) AS Pointer > PRIVATE ldapconn as Pointer > ... > ldapconn = ldap_init(host, 389) > IF ldapconn = NULL THEN error.Raise("Can not connect to the ldap > server") > > and from the Fine Help for libmodbus: > > https://www.libmodbus.org/docs/v3.1.7/modbus_new_tcp.html > > see especially what the function returns.... > > b > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Fri Sep 23 21:27:20 2022 From: mbelmonte at belmotek.net (Martin) Date: Fri, 23 Sep 2022 21:27:20 +0200 Subject: [Gambas-user] How to determine whether a program uses GTK or QT? Message-ID: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> Hello. Can anyone tell me how to know at runtime which component a program uses? I'm looking for a similar way to know if the desktop theme is dark or not. Ex: If Application.DarkTheme Then Print "Hi Anakin" Else Print "Hi Obi-Wan" Endif Note: There are some calls (I don't know if it's the right term) to OpenGL that don't work in GTK3 while in QT5 they do. So I want to get around what doesn't work when the program runs using the GTK3 component. Thanks. From benoit.minisini at gambas-basic.org Fri Sep 23 21:49:13 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 23 Sep 2022 21:49:13 +0200 Subject: [Gambas-user] How to determine whether a program uses GTK or QT? In-Reply-To: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> References: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> Message-ID: <563b357c-1f67-84a3-544b-8ede2724e2ab@gambas-basic.org> Le 23/09/2022 ? 21:27, Martin a ?crit?: > Hello. > Can anyone tell me how to know at runtime which component a program uses? > I'm looking for a similar way to know if the desktop theme is dark or not. > Ex: > If Application.DarkTheme Then > ? Print "Hi Anakin" > Else > ? Print "Hi Obi-Wan" > Endif > > Note: There are some calls (I don't know if it's the right term) to > OpenGL that don't work in GTK3 while in QT5 they do. So I want to get > around what doesn't work when the program runs using the GTK3 component. > > Thanks. > You can use: If Component.IsLoaded("gb.gtk3") Then And so on... I'd like to know which OpenGL methods do not work in GTK+3 (or the contrary). Please report! Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Fri Sep 23 21:50:36 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 23 Sep 2022 21:50:36 +0200 Subject: [Gambas-user] How to determine whether a program uses GTK or QT? In-Reply-To: <563b357c-1f67-84a3-544b-8ede2724e2ab@gambas-basic.org> References: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> <563b357c-1f67-84a3-544b-8ede2724e2ab@gambas-basic.org> Message-ID: Le 23/09/2022 ? 21:49, Benoit Minisini a ?crit?: > Le 23/09/2022 ? 21:27, Martin a ?crit?: >> Hello. >> Can anyone tell me how to know at runtime which component a program uses? >> I'm looking for a similar way to know if the desktop theme is dark or >> not. >> Ex: >> If Application.DarkTheme Then >> ?? Print "Hi Anakin" >> Else >> ?? Print "Hi Obi-Wan" >> Endif >> >> Note: There are some calls (I don't know if it's the right term) to >> OpenGL that don't work in GTK3 while in QT5 they do. So I want to get >> around what doesn't work when the program runs using the GTK3 component. >> >> Thanks. >> > > You can use: > > If Component.IsLoaded("gb.gtk3") Then > > And so on... > > I'd like to know which OpenGL methods do not work in GTK+3 (or the > contrary). Please report! > > Regards, > To get the list of components used by a running project, you have to browse the 'Components' class. Look at the documentation on the wiki. REgards, -- Beno?t Minisini. From bagoneo at libero.it Fri Sep 23 22:58:38 2022 From: bagoneo at libero.it (gian) Date: Fri, 23 Sep 2022 22:58:38 +0200 Subject: [Gambas-user] Drag & Drop ListView selection, does not work In-Reply-To: <988abe14-6aa2-de8e-0b68-4e7f0f204600@libero.it> References: <5e224385-4024-f892-f8e9-4ca5fc72f374@libero.it> <18866a95-1b3f-c3ea-7fe2-70b29f5c768b@libero.it> <988abe14-6aa2-de8e-0b68-4e7f0f204600@libero.it> Message-ID: <73f5a369-c00b-56c3-aef2-3cfe7641e06a@libero.it> Il 22/09/22 14:48, gian via User ha scritto: > As usual I misunderstood, on the first attempt the selection repositions > itself to where the moved item originally was. > It does this twice, creating a malfunction > > I hope I explained myself better. > > The bottom line is, why is it such a struggle to select an item? > > Good day > > Gianluigi Hi, sorry, but since I previously made a lot of confusion and started off by attaching the wrong test, I will try to explain everything from the beginning. First I attach the right test again (DragDropTest). In this test if you try to move by dragging it with the left mouse button an Item to another Item the first Item will take the position of the other Item which will move together with all those that precede (or follow) it by one position. My intent is to obtain, along with the displacement, a correct selection of the displaced Item. The selection happens correctly only after the third attempt, from there on it works fine, why? Any idea how I can achieve what I am looking for? Thank you and best regards Gianluigi -------------- next part -------------- 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 CEc4whGOcIQjHOEIRzjC/w3+B/7VZncAeAAA From mbelmonte at belmotek.net Fri Sep 23 23:02:50 2022 From: mbelmonte at belmotek.net (Martin) Date: Fri, 23 Sep 2022 23:02:50 +0200 Subject: [Gambas-user] How to determine whether a program uses GTK or QT? In-Reply-To: <563b357c-1f67-84a3-544b-8ede2724e2ab@gambas-basic.org> References: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> <563b357c-1f67-84a3-544b-8ede2724e2ab@gambas-basic.org> Message-ID: <29580d43-bd4e-351d-0367-bb07fb41d105@belmotek.net> El 23/9/22 a las 21:49, Benoit Minisini escribi?: > If Component.IsLoaded("gb.gtk3") Then > > And so on... ok, perfect, it could be useful. > I'd like to know which OpenGL methods do not work in GTK+3 (or the > contrary). Please report! ok, more or less is the follow doesn't works in gb.gui (I use manajro xfce, gtk based) gcd.debuginfo("Shading version: " & GL.GetString(gl.SHADING_LANGUAGE_VERSION),,, True) gcd.debuginfo("GL version: " & GL.GetString(gl.VERSION),,, True) gcd.debuginfo("Chipset vendor: " & GL.GetString(gl.VENDOR),,, True) so, I "solve" like that: If Component.IsLoaded("gb.qt5") Then gcd.debuginfo("Shading version: " & GL.GetString(gl.SHADING_LANGUAGE_VERSION),,, True) gcd.debuginfo("GL version: " & GL.GetString(gl.VERSION),,, True) gcd.debuginfo("Chipset vendor: " & GL.GetString(gl.VENDOR),,, True) gcd.debuginfo("Extensions" & GL.GetString(gl.EXTENSIONS)) Endif Regards. Martin. From benoit.minisini at gambas-basic.org Sat Sep 24 00:24:26 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 24 Sep 2022 00:24:26 +0200 Subject: [Gambas-user] Fehler In-Reply-To: <0ee2b638-7b02-af3b-ce68-299eed1214f4@gambas-buch.de> References: <0ee2b638-7b02-af3b-ce68-299eed1214f4@gambas-buch.de> Message-ID: Le 16/09/2022 ? 16:28, Hans Lehmann a ?crit?: > Hello, > > the DataView control - and therefore also DataBrowser - contains a gross > error in my opinion. > > This is how the error can be triggered: > > * The property DataBrowser1.View.Sorted is set to True. > * A selected field is sorted. The sort order is freely selectable. > > > > If you change the field value for the field 'Flowername' for the first > time (!) for example from 'Ranunkel' to 'Manunkel' and save the changed > record, the changed value will be displayed correctly in the Databrowser. > > > > If you change the field value for the field `Flowername` a second time > (!) for example from `Selaginella` to `Telaginella` and save the changed > record again, then two identical records will be displayed in the > databrowser: > > > > With best regards > > Hans > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- It should be fixed now. -- Beno?t Minisini. From bagoneo at libero.it Sat Sep 24 11:57:38 2022 From: bagoneo at libero.it (gian) Date: Sat, 24 Sep 2022 11:57:38 +0200 Subject: [Gambas-user] Gambas-it.org communication In-Reply-To: References: Message-ID: Il 20/09/22 22:12, gian ha scritto: > > As of this morning the Italian site is unreachable. > I still have no communication about this from the administrator. > As soon as I know something I will let them know. > > The Italian wiki is still active: > https://www.gambas-it.org/wiki/index.php/Pagina_principale > > Regards > > Gianluigi I report that as of this morning the Gambas-it.org Forum is back up and running. https://www.gambas-it.org/smf/index.php Regards Gianluigi From bsteers4 at gmail.com Sat Sep 24 13:47:21 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 24 Sep 2022 12:47:21 +0100 Subject: [Gambas-user] How to determine whether a program uses GTK or QT? In-Reply-To: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> References: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> Message-ID: Either search through the loaded components or the an easy way is.. Print Env["GB_GUI"] If gb.gui is being used the env is filled with gb.gtk or gb.qt5 or whatever is being used. BruceS On Fri, 23 Sep 2022, 20:46 Martin, wrote: > Hello. > Can anyone tell me how to know at runtime which component a program uses? > I'm looking for a similar way to know if the desktop theme is dark or not. > Ex: > If Application.DarkTheme Then > Print "Hi Anakin" > Else > Print "Hi Obi-Wan" > Endif > > Note: There are some calls (I don't know if it's the right term) to > OpenGL that don't work in GTK3 while in QT5 they do. So I want to get > around what doesn't work when the program runs using the GTK3 component. > > Thanks. > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Sat Sep 24 21:51:09 2022 From: mbelmonte at belmotek.net (Martin) Date: Sat, 24 Sep 2022 21:51:09 +0200 Subject: [Gambas-user] How to determine whether a program uses GTK or QT? In-Reply-To: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> References: <201f04e4-8be2-aa6a-6acf-e69b822989fb@belmotek.net> Message-ID: <4544fc98-902e-0d80-cd83-8b19d8fc2e9f@belmotek.net> El 23/9/22 a las 21:27, Martin escribi?: > Hello. > Can anyone tell me how to know at runtime which component a program uses? > I'm looking for a similar way to know if the desktop theme is dark or not. Hi, In appreciation of the submissions received I made this fun code that shows them all. Dim MyComponent As Component Dim bgtk As Boolean If Component.IsLoaded("gb.gtk3") Then Print "Benoit dice que el toolkit es:" & "gb.gtk3" Endif If Component.IsLoaded("gb.qt5") Then Print "Benoit dice que el toolkit es:" & "gb.qt5" Endif Print "Bruce dice que el toolkit es:" & Env["GB_GUI"] For Each MyComponent In Components If MyComponent.Name = "gb.gtk3" Then Print "Charly dice que el toolkit es:" & "gb.gtk3" bgtk = True Endif If MyComponent.Name = "gb.qt5" Then Print "Charly dice que el toolkit es:" & "gb.qt5" Endif Next Thanks From t.lee.davidson at gmail.com Sat Sep 24 22:43:56 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sat, 24 Sep 2022 16:43:56 -0400 Subject: [Gambas-user] Drag & Drop ListView selection, does not work In-Reply-To: <73f5a369-c00b-56c3-aef2-3cfe7641e06a@libero.it> References: <5e224385-4024-f892-f8e9-4ca5fc72f374@libero.it> <18866a95-1b3f-c3ea-7fe2-70b29f5c768b@libero.it> <988abe14-6aa2-de8e-0b68-4e7f0f204600@libero.it> <73f5a369-c00b-56c3-aef2-3cfe7641e06a@libero.it> Message-ID: <63c75350-c5f5-90da-2e40-e648cb2b0f4a@gmail.com> On 9/23/22 16:58, gian via User wrote: > In this test if you try to move by dragging it with the left mouse button an Item to another Item the first Item will take the > position of the other Item which will move together with all those that precede (or follow)?it?by?one?position. > > My intent is to obtain, along with the displacement, a correct selection of?the?displaced?Item. > > The selection happens correctly only after the third attempt, from there on?it?works?fine,?why? I am finding the same behavior. After the very first drag and drop operation, *something* is causing the internal item cursor to be set to the original position of the dragged item, and the item now in that position is also selected. It is as if the ListView is attempting to maintain the GUI state of the container. An iteration of the System.Backtrace collection, coded within the ListView1_Select event handler, indicates it may be related to GridView.TimerScroll_Timer.1202. That internally-forced selection is repeated with every press of the keyboard down-arrow and can only be overcome by manually making a selection with the mouse. Once it is overcome, the behavior is as expected. I think there is nothing you can do to alleviate that anomalous behavior, Gianluigi. I think we need someone like Beno?t to confirm the behavior of ListView/TreeView/GridView after Remove/Add or Drag/Drop operations. -- Lee From bagoneo at libero.it Sat Sep 24 23:08:55 2022 From: bagoneo at libero.it (gian) Date: Sat, 24 Sep 2022 23:08:55 +0200 Subject: [Gambas-user] Drag & Drop ListView selection, does not work In-Reply-To: <63c75350-c5f5-90da-2e40-e648cb2b0f4a@gmail.com> References: <5e224385-4024-f892-f8e9-4ca5fc72f374@libero.it> <18866a95-1b3f-c3ea-7fe2-70b29f5c768b@libero.it> <988abe14-6aa2-de8e-0b68-4e7f0f204600@libero.it> <73f5a369-c00b-56c3-aef2-3cfe7641e06a@libero.it> <63c75350-c5f5-90da-2e40-e648cb2b0f4a@gmail.com> Message-ID: Il 24/09/22 22:43, T Lee Davidson ha scritto: > On 9/23/22 16:58, gian via User wrote: >> In this test if you try to move by dragging it with the left mouse >> button an Item to another Item the first Item will take the position >> of the other Item which will move together with all those that precede >> (or follow)?it?by?one?position. >> >> My intent is to obtain, along with the displacement, a correct >> selection of?the?displaced?Item. >> >> The selection happens correctly only after the third attempt, from >> there on?it?works?fine,?why? > > I am finding the same behavior. > > After the very first drag and drop operation, *something* is causing the > internal item cursor to be set to the original position of the dragged > item, and the item now in that position is also selected. It is as if > the ListView is attempting to maintain the GUI state of the container. > An iteration of the System.Backtrace collection, coded within the > ListView1_Select event handler, indicates it may be related to > GridView.TimerScroll_Timer.1202. > > That internally-forced selection is repeated with every press of the > keyboard down-arrow and can only be overcome by manually making a > selection with the mouse. Once it is overcome, the behavior is as expected. > > I think there is nothing you can do to alleviate that anomalous > behavior, Gianluigi. I think we need someone like Beno?t to confirm the > behavior of ListView/TreeView/GridView after Remove/Add or Drag/Drop > operations. > > Hi Lee, thank you for the test. Maybe Benoit willingly could come up with a solution :-) Regards Gianluigi From brian at westwoodsvcs.com Mon Sep 26 10:36:34 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Mon, 26 Sep 2022 11:36:34 +0300 Subject: [Gambas-user] =?utf-8?q?Debugger_acting_strange=2E?= Message-ID: <1664181394.291278723@f13.my.com> After the latest ide update after a seg fault? error the idea running square indicator goes from red to grey. But after I close the seg fault popup the square turns red again to indicate running. The big issue to that is it allows me to edit and compile applications. But of course can not run them... Have to click the square to stop the run. Then start it again. I don't think this is an expected behavior... -- Thanks Brian G -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at westwoodsvcs.com Tue Sep 27 23:20:18 2022 From: brian at westwoodsvcs.com (Brian G) Date: Tue, 27 Sep 2022 14:20:18 -0700 (PDT) Subject: [Gambas-user] updated benchmark Message-ID: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> By adding fast unsafe to the start of primes.gbs the speed is orders of magnitude faster. Is there a reason not to do this for the benchmarks? 1.5 seconds gbs 5.7 seconds without fast unsafe gbs 16.217seconds for py "Failure is the key to success; each mistake teaches us something" .. Morihei Ueshiba Brian G -------------- next part -------------- An HTML attachment was scrubbed... URL: From jussi.lahtinen at gmail.com Wed Sep 28 00:22:26 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Wed, 28 Sep 2022 01:22:26 +0300 Subject: [Gambas-user] updated benchmark In-Reply-To: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> References: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> Message-ID: Probably no particular reason, other than it is generally wise to avoid "unsafe". In my opinion, if you want to get closer to the "C territory" because of speed, then you could as well use C. Jussi On Wed, Sep 28, 2022 at 1:12 AM Brian G wrote: > By adding fast unsafe to the start of primes.gbs the speed is orders of > magnitude faster. > > > Is there a reason not to do this for the benchmarks? > > 1.5 seconds gbs > 5.7 seconds without fast unsafe gbs > 16.217seconds for py > > > > "Failure is the key to success; > each mistake teaches us something" .. Morihei Ueshiba > Brian G > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at westwoodsvcs.com Wed Sep 28 06:01:48 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Wed, 28 Sep 2022 07:01:48 +0300 Subject: [Gambas-user] =?utf-8?q?updated_benchmark?= In-Reply-To: References: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> Message-ID: <1664337708.135463547@f34.my.com> Why use C when gambas will do just fine. Unsafe is only a concept, well written code is safe. -- Thanks Brian G Tuesday, 27 September 2022, 03:51PM -07:00 from Jussi Lahtinen jussi.lahtinen at gmail.com : >Probably no particular reason, other than it is generally wise to avoid "unsafe". >In my opinion, if you want to get closer to the "C territory" because of speed, then you could as well use C. > >Jussi > >On Wed, Sep 28, 2022 at 1:12 AM Brian G < brian at westwoodsvcs.com> wrote: >>By adding fast unsafe to the start of primes.gbs the speed is orders of magnitude faster. >> >> >>Is there a reason not to do this for the benchmarks? >> >>1.5 seconds gbs? >>5.7 seconds without fast unsafe gbs >>16.217seconds for py >> >> >> >>"Failure is the key to success; >>?each mistake teaches us something" ?.. Morihei Ueshiba >>Brian G >>----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > >----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jussi.lahtinen at gmail.com Wed Sep 28 15:14:46 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Wed, 28 Sep 2022 16:14:46 +0300 Subject: [Gambas-user] updated benchmark In-Reply-To: <1664337708.135463547@f34.my.com> References: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> <1664337708.135463547@f34.my.com> Message-ID: Of course, and similarly well written code in C is safe. I only commented on usage of the "unsafe" keyword. Jussi On Wed, Sep 28, 2022 at 8:54 AM Brian G wrote: > Why use C when gambas will do just fine. > Unsafe is only a concept, well written code is safe. > > -- > Thanks > Brian G > Tuesday, 27 September 2022, 03:51PM -07:00 from Jussi Lahtinen > jussi.lahtinen at gmail.com: > > Probably no particular reason, other than it is generally wise to avoid > "unsafe". > In my opinion, if you want to get closer to the "C territory" because of > speed, then you could as well use C. > > Jussi > > On Wed, Sep 28, 2022 at 1:12 AM Brian G wrote: > > By adding fast unsafe to the start of primes.gbs the speed is orders of > magnitude faster. > > > Is there a reason not to do this for the benchmarks? > > 1.5 seconds gbs > 5.7 seconds without fast unsafe gbs > 16.217seconds for py > > > > "Failure is the key to success; > each mistake teaches us something" .. Morihei Ueshiba > Brian G > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jussi.lahtinen at gmail.com Thu Sep 29 01:30:39 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Thu, 29 Sep 2022 02:30:39 +0300 Subject: [Gambas-user] updated benchmark In-Reply-To: References: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> <1664337708.135463547@f34.my.com> Message-ID: Just for fun I made a crude c version of the same benchmark. It's not implementing anything like the Integer[] object, but otherwise it is doing naively the same thing as Gambas. So, *no* c specific tricks used to gain speed. And for laziness it does not check the allocations or do them in a sensible way (instead realloc one by one, which is very slow). See attachment for the code. 5.29s without Fast Unsafe keyword 1.33s (+ 0.22s for JIT, total 1.53s) with Fast Unsafe 0.94s in C (~39% less from the time above) Really impressive for Gambas. Of course, you wouldn't normally write the task like that in c, but these comparisons are quite meaningless anyway. Jussi On Wed, Sep 28, 2022 at 4:14 PM Jussi Lahtinen wrote: > Of course, and similarly well written code in C is safe. I only commented > on usage of the "unsafe" keyword. > > > Jussi > > On Wed, Sep 28, 2022 at 8:54 AM Brian G wrote: > >> Why use C when gambas will do just fine. >> Unsafe is only a concept, well written code is safe. >> >> -- >> Thanks >> Brian G >> Tuesday, 27 September 2022, 03:51PM -07:00 from Jussi Lahtinen >> jussi.lahtinen at gmail.com: >> >> Probably no particular reason, other than it is generally wise to avoid >> "unsafe". >> In my opinion, if you want to get closer to the "C territory" because of >> speed, then you could as well use C. >> >> Jussi >> >> On Wed, Sep 28, 2022 at 1:12 AM Brian G wrote: >> >> By adding fast unsafe to the start of primes.gbs the speed is orders of >> magnitude faster. >> >> >> Is there a reason not to do this for the benchmarks? >> >> 1.5 seconds gbs >> 5.7 seconds without fast unsafe gbs >> 16.217seconds for py >> >> >> >> "Failure is the key to success; >> each mistake teaches us something" .. Morihei Ueshiba >> Brian G >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: primes.c Type: text/x-csrc Size: 1273 bytes Desc: not available URL: From benoit.minisini at gambas-basic.org Thu Sep 29 01:32:56 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 29 Sep 2022 01:32:56 +0200 Subject: [Gambas-user] updated benchmark In-Reply-To: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> References: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> Message-ID: Le 27/09/2022 ? 23:20, Brian G a ?crit?: > By adding fast unsafe to the start of primes.gbs the speed is orders of > magnitude faster. > > > Is there a reason not to do this for the benchmarks? > > 1.5 seconds gbs > 5.7 seconds without fast unsafe gbs > 16.217seconds for py > The benchmark is for comparing the different interpreters, and Gambas with or without JIT. Not for comparing Gambas JIT with other non-JIT interpreters. -- Beno?t Minisini. From jussi.lahtinen at gmail.com Thu Sep 29 02:07:19 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Thu, 29 Sep 2022 03:07:19 +0300 Subject: [Gambas-user] updated benchmark In-Reply-To: References: <1013927416.83578.1664313618653.JavaMail.zimbra@westwoodsvcs.com> Message-ID: > > The benchmark is for comparing the different interpreters, and Gambas > with or without JIT. Not for comparing Gambas JIT with other non-JIT > interpreters. > Python does have JIT, but not necessarily in default install. Jussi -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Thu Sep 29 12:29:53 2022 From: bagoneo at libero.it (gian) Date: Thu, 29 Sep 2022 12:29:53 +0200 Subject: [Gambas-user] How Settings.Read works? Message-ID: Hi, the issue is simple: either I have not understood how Settings.Read works, or Settings.Read does not work completely. [code] Public Sub Form_Open() ' If Settings.Exist("FMain/Geometry") Then ' <------------------this works ' Settings.Read(Me) ' Else ' Me.X = 100 ' Me.Y = 100 ' Endif Settings.Read(Me, "Geometry", [100, 100, 512, 512, 0, 0]) ' <---this *not* works, also with key "FMain/Geometry" or nothing key End Public Sub Form_Close() Settings.Write(Me) End [/code] Regards & Thanks Gianluigi From rwe-sse at osnanet.de Thu Sep 29 12:49:04 2022 From: rwe-sse at osnanet.de (Rolf-Werner Eilert) Date: Thu, 29 Sep 2022 12:49:04 +0200 Subject: [Gambas-user] How secure is WebApp? Message-ID: The other day I told someone about WebApps for Gambas, and he warned me this could be a security breach to the server. As far as I know, all runs under cgi, so if there is any security hole it should be a cgi security issue, right? There should be no way to access Gambas from outside I think. Have you ever had any issues here? Thanks for sharing your experience. Regards Rolf From rwe-sse at osnanet.de Thu Sep 29 12:43:49 2022 From: rwe-sse at osnanet.de (Rolf-Werner Eilert) Date: Thu, 29 Sep 2022 12:43:49 +0200 Subject: [Gambas-user] WebTextArea vs. TextArea controlling events Message-ID: Good morning everyone! Today I played a bit with WebTextArea and tried to implement some of the events controlling key, mouse etc. compared to TextArea. I have 3.17.2 on this system. Long time ago I wrote a little program controlling the keystrokes of TextArea_KeyPress. This reads somewhat like this: If key.Control Then 'Strg+Taste ?bergehen: Stop Event Else 'einfache Tasten alle ?bergehen: Select Case key.Code Case key.BackSpace, key.BackTab, key.Delete Stop Event Case key.Down, key.Up, key.Left, key.Right Stop Event Case key.Home, key.End, key.PageDown, key.PageUp Stop Event End Select End If I had also implemented my own linewrap to limit input to 70 characters a line. All this runs pretty well there. Now I wanted to know if there is a chance to implement this to a WebApp. So I used WebTextArea and inserted the code above (and somewhat more) from the old project to WebTextArea_KeyPress. But WebTextArea doesn't seem to catch the keystrokes or at least the code doesn't have any effect. Is there a chance to have it run like this? Furthermore, I found that TextArea_MouseDown and _MouseUp don't exist. These would be nice to have. Is there a technical reason they do not exist, or have they just not been implemented yet? Thanks for all insight! Rolf From bsteers4 at gmail.com Thu Sep 29 13:04:12 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 29 Sep 2022 12:04:12 +0100 Subject: [Gambas-user] How Settings.Read works? In-Reply-To: References: Message-ID: By default the Settings.Read uses the object name as the Key So this should be correct.. Settings.Read(Me, Me.Name, [100, 100, 512, 512, 0, 0]) Or.. Settings.Read(Me, "FMain", [100, 100, 512, 512, 0, 0]) Or.. Settings.Read(Me, Null, [100, 100, 512, 512, 0, 0]) Respects BruceS On Thu, 29 Sept 2022 at 11:31, gian via User wrote: > Hi, > > the issue is simple: either I have not understood how Settings.Read > works, or Settings.Read does not work completely. > > [code] > > Public Sub Form_Open() > > ' If Settings.Exist("FMain/Geometry") Then ' <------------------this > works > ' Settings.Read(Me) > ' Else > ' Me.X = 100 > ' Me.Y = 100 > ' Endif > Settings.Read(Me, "Geometry", [100, 100, 512, 512, 0, 0]) ' <---this > *not* works, also with key "FMain/Geometry" or nothing key > > End > > Public Sub Form_Close() > > Settings.Write(Me) > > End > > [/code] > > Regards & Thanks > > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Thu Sep 29 13:19:25 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 29 Sep 2022 13:19:25 +0200 Subject: [Gambas-user] How Settings.Read works? In-Reply-To: References: Message-ID: <1ea42771-8fe7-4c24-7b3b-fdb6b5d59b5b@gambas-basic.org> Le 29/09/2022 ? 12:29, gian via User a ?crit?: > Hi, > > the issue is simple: either I have not understood how Settings.Read > works, or Settings.Read does not work completely. > > [code] > > Public Sub Form_Open() > > ? ' If Settings.Exist("FMain/Geometry") Then ' <------------------this > works > ? '?? Settings.Read(Me) > ? ' Else > ? '?? Me.X = 100 > ? '?? Me.Y = 100 > ? ' Endif > ? Settings.Read(Me, "Geometry", [100, 100, 512, 512, 0, 0]) ' <---this > *not* works, also with key "FMain/Geometry" or nothing key > > End > > Public Sub Form_Close() > > ? Settings.Write(Me) > > End > > [/code] > > Regards & Thanks > > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Settings class has special support for windows (and controls having a Settings property). So, for windows, you just have to write 'Settings.Write(Me)' to save its geometry, and 'Settings.Read(Me)' to restore it. You can't use the default value argument in that case, as you can't guess the format used for storing the window data. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Thu Sep 29 13:36:04 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 29 Sep 2022 12:36:04 +0100 Subject: [Gambas-user] WebTextArea vs. TextArea controlling events In-Reply-To: References: Message-ID: On Thu, 29 Sept 2022 at 11:53, Rolf-Werner Eilert wrote: > Good morning everyone! > > Today I played a bit with WebTextArea and tried to implement some of the > events controlling key, mouse etc. compared to TextArea. I have 3.17.2 > on this system. > > Long time ago I wrote a little program controlling the keystrokes of > TextArea_KeyPress. This reads somewhat like this: > > If key.Control Then 'Strg+Taste ?bergehen: > Stop Event > > Else 'einfache Tasten alle ?bergehen: > Select Case key.Code > Case key.BackSpace, key.BackTab, key.Delete > Stop Event > Case key.Down, key.Up, key.Left, key.Right > Stop Event > Case key.Home, key.End, key.PageDown, key.PageUp > Stop Event > End Select > > End If > > I had also implemented my own linewrap to limit input to 70 characters a > line. All this runs pretty well there. > > Now I wanted to know if there is a chance to implement this to a WebApp. > So I used WebTextArea and inserted the code above (and somewhat more) > from the old project to WebTextArea_KeyPress. But WebTextArea doesn't > seem to catch the keystrokes or at least the code doesn't have any > effect. Is there a chance to have it run like this? > > Furthermore, I found that TextArea_MouseDown and _MouseUp don't exist. > These would be nice to have. Is there a technical reason they do not > exist, or have they just not been implemented yet? > > Thanks for all insight! > > Rolf > The gb.web.gui components are currently a bit limited. The events have been kept at a minimum as probably would end up in a lot of javascript code for the browser. I think? Personally i think it would be good for WebControl to be updated to support a few more standard events we are used to. I think it should be okay (not code hungry) as lines like 'If Object.CanRaise(Me, "MouseUp") Then PrintMoreJSCode()' mean that if you do not use the MouseUp event then the code is not added. You should be able to make your own version, gb web components are mostly easy to override.. Check out the following code (Save in in your project as WebTextArea.class) ------------------------ ' Gambas class file Export Event MouseDown Event MouseUp Public Sub _UpdateProperty(sProp As String, vVal As Variant) Select sProp Case "mouse" If vVal = "down" Then Raise MouseDown Else Raise MouseUp Return End Select Super._UpdateProperty(sProp, vVal) End Public Sub _BeforeRender() Print ""; End ------------------------ That code will add MouseUp and MouseDown events to WebTextArea you can use the same methods to add other javascript events like KeyPress and such. It is a copy of the _Beforerender() method from WebTextArea.class of gb.web.gui with additions to set up the mouse events. this overrides the default WebTextArea _Beforerender method as the file name is WebTextArea.class. these events are then processed in the overridden '_UpdateProperty()' method as shown (that method then fires the parent _UpdateProperty() method). Hope that makes sense BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Thu Sep 29 13:43:58 2022 From: bagoneo at libero.it (gian) Date: Thu, 29 Sep 2022 13:43:58 +0200 Subject: [Gambas-user] How Settings.Read works? In-Reply-To: <1ea42771-8fe7-4c24-7b3b-fdb6b5d59b5b@gambas-basic.org> References: <1ea42771-8fe7-4c24-7b3b-fdb6b5d59b5b@gambas-basic.org> Message-ID: <89b1fea4-4bc4-854a-d18b-0a24fc502f64@libero.it> Il 29/09/22 13:19, Benoit Minisini ha scritto: > Le 29/09/2022 ? 12:29, gian via User a ?crit?: >> Hi, >> >> the issue is simple: either I have not understood how Settings.Read >> works, or Settings.Read does not work completely. >> >> [code] >> >> Public Sub Form_Open() >> >> ?? ' If Settings.Exist("FMain/Geometry") Then ' >> <------------------this works >> ?? '?? Settings.Read(Me) >> ?? ' Else >> ?? '?? Me.X = 100 >> ?? '?? Me.Y = 100 >> ?? ' Endif >> ?? Settings.Read(Me, "Geometry", [100, 100, 512, 512, 0, 0]) ' >> <---this *not* works, also with key "FMain/Geometry" or nothing key >> >> End >> >> Public Sub Form_Close() >> >> ?? Settings.Write(Me) >> >> End >> >> [/code] >> >> Regards & Thanks >> >> Gianluigi >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Settings class has special support for windows (and controls having a > Settings property). > > So, for windows, you just have to write 'Settings.Write(Me)' to save its > geometry, and 'Settings.Read(Me)' to restore it. > > You can't use the default value argument in that case, as you can't > guess the format used for storing the window data. > > Regards, > Hi Benoit and Bruce, thank you very much for your answers Regards Gianluigi From benoit.minisini at gambas-basic.org Thu Sep 29 13:49:23 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 29 Sep 2022 13:49:23 +0200 Subject: [Gambas-user] WebTextArea vs. TextArea controlling events In-Reply-To: References: Message-ID: Le 29/09/2022 ? 12:43, Rolf-Werner Eilert a ?crit?: > Good morning everyone! > > Today I played a bit with WebTextArea and tried to implement some of the > events controlling key, mouse etc. compared to TextArea. I have 3.17.2 > on this system. > > Long time ago I wrote a little program controlling the keystrokes of > TextArea_KeyPress. This reads somewhat like this: > > ? If key.Control Then???? 'Strg+Taste ?bergehen: > ??? Stop Event > > ? Else??????????????????? 'einfache Tasten alle ?bergehen: > ??? Select Case key.Code > ??? Case key.BackSpace, key.BackTab, key.Delete > ????? Stop Event > ??? Case key.Down, key.Up, key.Left, key.Right > ????? Stop Event > ??? Case key.Home, key.End, key.PageDown, key.PageUp > ????? Stop Event > ??? End Select > > ? End If > > I had also implemented my own linewrap to limit input to 70 characters a > line. All this runs pretty well there. > > Now I wanted to know if there is a chance to implement this to a WebApp. > So I used WebTextArea and inserted the code above (and somewhat more) > from the old project to WebTextArea_KeyPress. But WebTextArea doesn't > seem to catch the keystrokes or at least the code doesn't have any > effect. Is there a chance to have it run like this? No. You can't cancel a GUI event raised on the client from the server, because requests that blocks the client javascript eventloop are now impossible. > > Furthermore, I found that TextArea_MouseDown and _MouseUp don't exist. > These would be nice to have. Is there a technical reason they do not > exist, or have they just not been implemented yet? I don't want low-level mouse events on editing controls, because it may break them. And why do you need them? I don't see any good reason. -- Beno?t Minisini. From adamnt42 at gmail.com Thu Sep 29 15:01:05 2022 From: adamnt42 at gmail.com (bb) Date: Thu, 29 Sep 2022 22:31:05 +0930 Subject: [Gambas-user] How Settings.Read works? In-Reply-To: <1ea42771-8fe7-4c24-7b3b-fdb6b5d59b5b@gambas-basic.org> References: <1ea42771-8fe7-4c24-7b3b-fdb6b5d59b5b@gambas-basic.org> Message-ID: <08b06be14d6acb383d81ff273859c10303ae9852.camel@gmail.com> On Thu, 2022-09-29 at 13:19 +0200, Benoit Minisini wrote: > > Settings class has special support for windows (and controls having a > Settings property). > > So, for windows, you just have to write 'Settings.Write(Me)' to save > its > geometry, and 'Settings.Read(Me)' to restore it. > > You can't use the default value argument in that case, as you can't > guess the format used for storing the window data. > > Regards, > Maybe I have misunderstood this for years. I thought that the property involved was the? Layout property. I have used that property in many custom grid controls to save and? restore the user's choice of column widths.? Can I save more than just the layout by creating a more complex Settings property (and if so, how?) b -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Thu Sep 29 15:04:37 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 29 Sep 2022 15:04:37 +0200 Subject: [Gambas-user] How Settings.Read works? In-Reply-To: <08b06be14d6acb383d81ff273859c10303ae9852.camel@gmail.com> References: <1ea42771-8fe7-4c24-7b3b-fdb6b5d59b5b@gambas-basic.org> <08b06be14d6acb383d81ff273859c10303ae9852.camel@gmail.com> Message-ID: <736c80ee-10fc-5f14-1e71-60f873318392@gambas-basic.org> Le 29/09/2022 ? 15:01, bb a ?crit?: > On Thu, 2022-09-29 at 13:19 +0200, Benoit Minisini wrote: >> >> Settings class has special support for windows (and controls having a >> Settings property). >> >> So, for windows, you just have to write 'Settings.Write(Me)' to save its >> geometry, and 'Settings.Read(Me)' to restore it. >> >> You can't use the default value argument in that case, as you can't >> guess the format used for storing the window data. >> >> Regards, >> > Maybe I have misunderstood this for years. I thought that the property > involved was the > Layout property. I have used that property in many custom grid controls > to save and > restore the user's choice of column widths. > Can I save more than just the layout by creating a more complex Settings > property (and if so, how?) > > b > The settings is not necessarily just the layout. -- Beno?t Minisini. From adamnt42 at gmail.com Thu Sep 29 15:29:37 2022 From: adamnt42 at gmail.com (bb) Date: Thu, 29 Sep 2022 22:59:37 +0930 Subject: [Gambas-user] How Settings.Read works? In-Reply-To: <736c80ee-10fc-5f14-1e71-60f873318392@gambas-basic.org> References: <1ea42771-8fe7-4c24-7b3b-fdb6b5d59b5b@gambas-basic.org> <08b06be14d6acb383d81ff273859c10303ae9852.camel@gmail.com> <736c80ee-10fc-5f14-1e71-60f873318392@gambas-basic.org> Message-ID: <146fe3eb004be68eed6ba386f1c4d5a863020bfc.camel@gmail.com> On Thu, 2022-09-29 at 15:04 +0200, Benoit Minisini wrote: > Le 29/09/2022 ? 15:01, bb a ?crit?: > > On Thu, 2022-09-29 at 13:19 +0200, Benoit Minisini wrote: > > > > > > Settings class has special support for windows (and controls > > > having a > > > Settings property). > > > > > > So, for windows, you just have to write 'Settings.Write(Me)' to > > > save its > > > geometry, and 'Settings.Read(Me)' to restore it. > > > > > > You can't use the default value argument in that case, as you > > > can't > > > guess the format used for storing the window data. > > > > > > Regards, > > > > > Maybe I have misunderstood this for years. I thought that the > > property > > involved was the > > Layout property. I have used that property in many custom grid > > controls > > to save and > > restore the user's choice of column widths. > > Can I save more than just the layout by creating a more complex > > Settings > > property (and if so, how?) > > > > b > > > > The settings is not necessarily just the layout. > OK but what is it? Given the following stored in the user's config file for a program, just what is saved and restored using Settings.Write and .Read? This is quite confusing. sample: gvwCard.Font="Liberation Sans,8" gvwCard.SortOrder=[0,""] gvwCard=[32,57,385,42,201,64,40,32,37,77,83,69,30,30,64] An example of what I am not seeing is if the user sorts the grid using say column 3 descending, I don't see that saved in the config file after a Settings.Write(gvwCard). And by the way, just to make this a little bit harder. Consider a main form that has an arbitrary number of other form controls homed in a set of tabs, each "embedded" form being an instance of one form class. I'll try and make this clearer. ?fMain has a tabstrip where the number of tabs is set dynamically. Each tab contains an instance of fEvent. The tabs are created at startup with its Count set to the number of events happening today. For each tab an instance of fEvent is created and parented in the respective tab. Now, it is possible that the user adjusts the column widths and sort orders or even the font for the grid in each tab differently. ?So, when the main form is closed (and closes each fEvent which issues a Settings.Write)? is the settings that are saved determinate?somehow? I have never been able to satisfactorally resolve this. regards b -------------- next part -------------- An HTML attachment was scrubbed... URL: From rwe-sse at osnanet.de Thu Sep 29 15:48:01 2022 From: rwe-sse at osnanet.de (Rolf-Werner Eilert) Date: Thu, 29 Sep 2022 15:48:01 +0200 Subject: [Gambas-user] WebTextArea vs. TextArea controlling events In-Reply-To: References: Message-ID: Am 29.09.22 um 13:49 schrieb Benoit Minisini: > Le 29/09/2022 ? 12:43, Rolf-Werner Eilert a ?crit?: >> Good morning everyone! >> >> Today I played a bit with WebTextArea and tried to implement some of >> the events controlling key, mouse etc. compared to TextArea. I have >> 3.17.2 on this system. >> >> Long time ago I wrote a little program controlling the keystrokes of >> TextArea_KeyPress. This reads somewhat like this: >> >> ?? If key.Control Then???? 'Strg+Taste ?bergehen: >> ???? Stop Event >> >> ?? Else??????????????????? 'einfache Tasten alle ?bergehen: >> ???? Select Case key.Code >> ???? Case key.BackSpace, key.BackTab, key.Delete >> ?????? Stop Event >> ???? Case key.Down, key.Up, key.Left, key.Right >> ?????? Stop Event >> ???? Case key.Home, key.End, key.PageDown, key.PageUp >> ?????? Stop Event >> ???? End Select >> >> ?? End If >> >> I had also implemented my own linewrap to limit input to 70 characters >> a line. All this runs pretty well there. >> >> Now I wanted to know if there is a chance to implement this to a >> WebApp. So I used WebTextArea and inserted the code above (and >> somewhat more) from the old project to WebTextArea_KeyPress. But >> WebTextArea doesn't seem to catch the keystrokes or at least the code >> doesn't have any effect. Is there a chance to have it run like this? > > No. You can't cancel a GUI event raised on the client from the server, > because requests that blocks the client javascript eventloop are now > impossible. > >> >> Furthermore, I found that TextArea_MouseDown and _MouseUp don't exist. >> These would be nice to have. Is there a technical reason they do not >> exist, or have they just not been implemented yet? > > I don't want low-level mouse events on editing controls, because it may > break them. And why do you need them? I don't see any good reason. > I see your point, Benoit. This is a very special case indeed. Maybe Bruce Steers' idea of adding java code on demand would be a way? I wanted to keep the user from clicking somewhere and adding text (and from going somewhere with the cursor keys and writing or deleting any text anywhere). The only thing allowed is to add text at the end of the line. This is for a program to train 10 fingers' typewriting. Regards Rolf From benoit.minisini at gambas-basic.org Thu Sep 29 15:48:40 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 29 Sep 2022 15:48:40 +0200 Subject: [Gambas-user] How Settings.Read works? In-Reply-To: <146fe3eb004be68eed6ba386f1c4d5a863020bfc.camel@gmail.com> References: <1ea42771-8fe7-4c24-7b3b-fdb6b5d59b5b@gambas-basic.org> <08b06be14d6acb383d81ff273859c10303ae9852.camel@gmail.com> <736c80ee-10fc-5f14-1e71-60f873318392@gambas-basic.org> <146fe3eb004be68eed6ba386f1c4d5a863020bfc.camel@gmail.com> Message-ID: <47f43964-2acb-852a-4f01-52f5433ee028@gambas-basic.org> Le 29/09/2022 ? 15:29, bb a ?crit?: >> >> The settings is not necessarily just the layout. >> > OK but what is it? > Given the following stored in the user's config file for a program, just > what is saved and restored using Settings.Write and .Read? This is quite > confusing. > > sample: > > gvwCard.Font="Liberation Sans,8" > > gvwCard.SortOrder=[0,""] > > gvwCard=[32,57,385,42,201,64,40,32,37,77,83,69,30,30,64] > > > An example of what I am not seeing is if the user sorts the grid using > say column 3 descending, I don't see that saved in the config file after > a Settings.Write(gvwCard). Alas GridView has no Settings property, so nothing is saved. > > And by the way, just to make this a little bit harder. Consider a main > form that has an arbitrary number of other form controls homed in a set > of tabs, each "embedded" form being an > instance of one form class. I'll try and make this clearer. ?fMain has a > tabstrip where the number of tabs is set dynamically. Each tab contains > an instance of fEvent. The tabs are created > at startup with its Count set to the number of events happening today. > For each tab an instance of fEvent is created and parented in the > respective tab. > Now, it is possible that the user adjusts the column widths and sort > orders or even the font for the grid in each tab differently. ?So, when > the main form is closed (and closes each fEvent which issues a > Settings.Write) > is the settings that are saved *determinate*?somehow? I have never been > able to satisfactorally resolve this. If you have several instances of the same form, you must use a different 'Key' argument for each one in the Settings.Write() method. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Thu Sep 29 16:09:33 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 29 Sep 2022 16:09:33 +0200 Subject: [Gambas-user] WebTextArea vs. TextArea controlling events In-Reply-To: References: Message-ID: <082c5538-c457-8a7a-6b51-d7c12f3f3879@gambas-basic.org> Le 29/09/2022 ? 15:48, Rolf-Werner Eilert a ?crit?: > > I see your point, Benoit. This is a very special case indeed. Maybe > Bruce Steers' idea of adding java code on demand would be a way? > > I wanted to keep the user from clicking somewhere and adding text (and > from going somewhere with the cursor keys and writing or deleting any > text anywhere). The only thing allowed is to add text at the end of the > line. > > This is for a program to train 10 fingers' typewriting. > > Regards > Rolf > Maybe you should not use a WebTextBox then? With a WebDrawingArea, you can now (in the development version) catch key press events and draw what you want, so that you can reimplement a minimal edit field that exactly fits your needs. -- Beno?t Minisini. From bsteers4 at gmail.com Thu Sep 29 16:45:54 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 29 Sep 2022 15:45:54 +0100 Subject: [Gambas-user] WebTextArea vs. TextArea controlling events In-Reply-To: <082c5538-c457-8a7a-6b51-d7c12f3f3879@gambas-basic.org> References: <082c5538-c457-8a7a-6b51-d7c12f3f3879@gambas-basic.org> Message-ID: On Thu, 29 Sept 2022 at 15:10, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 29/09/2022 ? 15:48, Rolf-Werner Eilert a ?crit : > > > > I see your point, Benoit. This is a very special case indeed. Maybe > > Bruce Steers' idea of adding java code on demand would be a way? > > > > I wanted to keep the user from clicking somewhere and adding text (and > > from going somewhere with the cursor keys and writing or deleting any > > text anywhere). The only thing allowed is to add text at the end of the > > line. > > > > This is for a program to train 10 fingers' typewriting. > > > > Regards > > Rolf > > > > Maybe you should not use a WebTextBox then? With a WebDrawingArea, you > can now (in the development version) catch key press events and draw > what you want, so that you can reimplement a minimal edit field that > exactly fits your needs. > did you add text features yet? WebDrawingarea still lacks Paint.Font and Paint.Text() / Paint.RichText() ability I tried to implement it but i think my coding is not good enough Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From jussi.lahtinen at gmail.com Thu Sep 29 18:17:28 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Thu, 29 Sep 2022 19:17:28 +0300 Subject: [Gambas-user] How secure is WebApp? In-Reply-To: References: Message-ID: I have never heard anyone exploiting Gambas, but everytime you open any service to the net there is potential vulnerability. Put your focus on sanitising all possible inputs from the net to your application. White list instead of black list. Also report bugs you find from Gambas. The rest is on Gambas developers. Jussi On Thu, Sep 29, 2022 at 1:50 PM Rolf-Werner Eilert wrote: > The other day I told someone about WebApps for Gambas, and he warned me > this could be a security breach to the server. > > As far as I know, all runs under cgi, so if there is any security hole > it should be a cgi security issue, right? There should be no way to > access Gambas from outside I think. > > Have you ever had any issues here? > > Thanks for sharing your experience. > > Regards > Rolf > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Thu Sep 29 19:46:54 2022 From: mbelmonte at belmotek.net (Martin) Date: Thu, 29 Sep 2022 19:46:54 +0200 Subject: [Gambas-user] Gambas packager warning for Debian 12 derivations. Message-ID: Hi, There are, maybe, an error in the Package.module [1] because in 12 version is not supported the compatibility for version 9 The constant: Private Const DEBIAN_DEBHELPER_VERSION As String = "9" maybe should be: Private Const DEBIAN_DEBHELPER_VERSION As String = "10" Why is a constant ? Shouldn't it be a variable that depends on the system on which gambas is installed? [1] https://gitlab.com/gambas/gambas/-/blob/master/app/src/gambas3/.src/Packager/Package.module Thanks. Mart?n. From bsteers4 at gmail.com Fri Sep 30 22:48:54 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Fri, 30 Sep 2022 21:48:54 +0100 Subject: [Gambas-user] WebTextArea vs. TextArea controlling events In-Reply-To: References: <082c5538-c457-8a7a-6b51-d7c12f3f3879@gambas-basic.org> Message-ID: On Thu, 29 Sept 2022 at 15:45, Bruce Steers wrote: > > > On Thu, 29 Sept 2022 at 15:10, Benoit Minisini < > benoit.minisini at gambas-basic.org> wrote: > >> Le 29/09/2022 ? 15:48, Rolf-Werner Eilert a ?crit : >> > >> > I see your point, Benoit. This is a very special case indeed. Maybe >> > Bruce Steers' idea of adding java code on demand would be a way? >> > >> > I wanted to keep the user from clicking somewhere and adding text (and >> > from going somewhere with the cursor keys and writing or deleting any >> > text anywhere). The only thing allowed is to add text at the end of the >> > line. >> > >> > This is for a program to train 10 fingers' typewriting. >> > >> > Regards >> > Rolf >> > >> >> Maybe you should not use a WebTextBox then? With a WebDrawingArea, you >> can now (in the development version) catch key press events and draw >> what you want, so that you can reimplement a minimal edit field that >> exactly fits your needs. >> > > did you add text features yet? > WebDrawingarea still lacks Paint.Font and Paint.Text() / Paint.RichText() > ability > I tried to implement it but i think my coding is not good enough > Respects > BruceS > I re-submitted a merge that uses a css font string to set Paint.Font (we probably need a proper WebFont.class though) It has Paint.FillText(Text, X, Y, MaxWidth) and Paint.StrokeText(Text, X, Y, MaxWidth) Works with all Paint.Brush types (StrokeText and gradient brush looks bad, FillText and gradient looks okay) I doubt it's ultimately how you would do it Ben but it's gotta be partly right :) Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: