From benoit.minisini at gambas-basic.org Mon Aug 1 01:05:29 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 1 Aug 2022 01:05:29 +0200 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: Message-ID: Le 31/07/2022 ? 22:22, Bruce Steers a ?crit?: > > > On Sun, 31 Jul 2022 at 20:59, Benoit Minisini > > wrote: > > Le 31/07/2022 ? 21:44, Bruce Steers a ?crit?: > > Anything been considered with html Canvas? > > https://www.w3schools.com/tags/ref_canvas.asp > > > > > > > > Looks like some kind of WebPaint.class could be added to gb.web.gui. > > > > Respects > > BruceS > > > > Yep. The difficulty is keeping the state of the canvas on the server. > > > Dang, i was thinking of a brand new era of hand draw controls.. :) > > I guess small image data could work using gb.image serverside and just > keep painting it onto canvas. (i guess image data can be sent somehow > from server and not just loaded from a file refresh) > > An initial Image maker i guess is easy enough to use gb.image to save a > on-the-fly made image to server for page to read. > > gonna look into canvas though and see what i can accomplish :) > (fancy sharing any test sources ?) > > Respects > BruceS > To keep the canvas state, you have to store on the server all the javascript associated with the requested drawing commands, so that the canvas can be redrawn at any time. Or better, you have an intermediate representation of the drawing commands, that are then translated to javascript on demand. You only store the intermediate representation, that should be concise. You can imagine then a method to upload the canvas contents to the server, but that needs support from 'gb.web.gui' 'lib.js' library. Regards, -- Beno?t Minisini. From bagoneo at libero.it Mon Aug 1 13:09:20 2022 From: bagoneo at libero.it (gian) Date: Mon, 1 Aug 2022 13:09:20 +0200 Subject: [Gambas-user] Report.Layout Message-ID: Hi, in my relentless progressive senile stupor, in trying to figure out what the Report.Layout method is for (I think it should not have changed from the old gb.report http://gambaswiki.org/wiki/comp/gb.report/report/layout ), I came across this, I think bizarre, behavior of DataCount http://gambaswiki.org/wiki/comp/gb.report2/reportcontainer/datacount . Here the report keeps loading pages until the stack overflows. Could someone kindly explain to me what I am doing wrong and what Report.Layout is for ? See attached project Thank you for your attention & Regards Gianluigi -------------- next part -------------- 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 X+1f7X9q+z8ACKS4oQCgAAA= From claus.dietrich at freenet.de Mon Aug 1 13:47:56 2022 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Mon, 1 Aug 2022 13:47:56 +0200 Subject: [Gambas-user] FastCGI Support? In-Reply-To: References: Message-ID: <012e09a9-6ed0-3618-433e-15bdbb9eab41@freenet.de> Hi Benoit Are Gambas-Web-Form-Applications supporting FastCGI resp. do they require a server with FastCGI-capability? What about Gambas-Web-Applications (resp. Gambas WebPages) and Gambas scripts (resp. Gambas Server Pages)? Beside others I am asking this question because of an earlier reply from you: https://lists.gambas-basic.org/pipermail/user/2020-December/070892.html Regards Claus From isafiur at gmail.com Mon Aug 1 14:13:13 2022 From: isafiur at gmail.com (Safiur Rahman) Date: Mon, 1 Aug 2022 17:58:13 +0545 Subject: [Gambas-user] gb.web.gui and Canvas Message-ID: Hi If the Json string of the coordinates can be saved to the server. Look at this example https://theisensanders.com/responsive-sketchpad/ -- Regards Safiur Rahman -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Mon Aug 1 14:18:06 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 1 Aug 2022 14:18:06 +0200 Subject: [Gambas-user] FastCGI Support? In-Reply-To: <012e09a9-6ed0-3618-433e-15bdbb9eab41@freenet.de> References: <012e09a9-6ed0-3618-433e-15bdbb9eab41@freenet.de> Message-ID: <4c99d089-65b2-5e6a-d643-e680ba584cb4@gambas-basic.org> Le 01/08/2022 ? 13:47, Claus Dietrich a ?crit?: > Hi Benoit > Are Gambas-Web-Form-Applications supporting FastCGI No. > resp. do they > require a server with FastCGI-capability? No. > What about Gambas-Web-Applications (resp. Gambas WebPages) and Gambas > scripts (resp. Gambas Server Pages)? Same thing. > Beside others I am asking this question because of an earlier reply from > you: > https://lists.gambas-basic.org/pipermail/user/2020-December/070892.html > I do the same answer. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Mon Aug 1 15:15:56 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 1 Aug 2022 15:15:56 +0200 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: Message-ID: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> Le 31/07/2022 ? 21:44, Bruce Steers a ?crit?: > Anything been considered with html Canvas? > https://www.w3schools.com/tags/ref_canvas.asp > > > Looks like some kind of WebPaint.class could be added to gb.web.gui. > > Respects > BruceS > I have just committed an initial implementation of a WebDrawingArea control with its Paint class, based on . That way, you can see how it should be done. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Mon Aug 1 19:58:52 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 1 Aug 2022 18:58:52 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> Message-ID: On Mon, 1 Aug 2022 at 14:16, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 31/07/2022 ? 21:44, Bruce Steers a ?crit : > > Anything been considered with html Canvas? > > https://www.w3schools.com/tags/ref_canvas.asp > > > > > > Looks like some kind of WebPaint.class could be added to gb.web.gui. > > > > Respects > > BruceS > > > > I have just committed an initial implementation of a WebDrawingArea > control with its Paint class, based on . > > That way, you can see how it should be done. > ooh , thank you Ben wow , it looks complicated but looks like its' been made in such a way to be able to be used on other clases too in the future. I think i see what's going on. I can draw a square :) I'm going to try adding Paint.Stroke() and Paint.FillRect() methods and Paint.StrokeStyle / FillStyle properties to set brush/colour/gradient wish me luck ... :) Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From t.lee.davidson at gmail.com Mon Aug 1 21:52:37 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Mon, 1 Aug 2022 15:52:37 -0400 Subject: [Gambas-user] Report.Layout In-Reply-To: References: Message-ID: On 8/1/22 07:09, gian via User wrote: > Hi, > > in my relentless progressive senile stupor, in trying to figure out what the Report.Layout method is for (I think it should not > have changed from the old gb.report http://gambaswiki.org/wiki/comp/gb.report/report/layout ), I came across this, I think > bizarre, behavior of DataCount http://gambaswiki.org/wiki/comp/gb.report2/reportcontainer/datacount . > > Here the report keeps loading pages until the stack overflows. > > Could someone kindly explain to me what I am doing wrong and what Report.Layout is for ? > See attached project > > Thank you for your attention & Regards > > Gianluigi I don't think you're doing anything wrong. I think it's a bug. The Data event for the ReportImage is raised 6 times when it should be raised only 3 given that ReportHBox2.DataCount = 3. The Data events for the ReportLabels that have been given text in the IDE are never raised. And, the Data events for the other two labels continually recycle through the index 0-2, again and again. And, sorry, I have no idea what Report.Layout() is for. I moved it around to a couple different locations in the code, and it did not appear to change the behavior. -- Lee From gambas.fr at gmail.com Mon Aug 1 22:29:50 2022 From: gambas.fr at gmail.com (Fabien Bodard) Date: Mon, 1 Aug 2022 22:29:50 +0200 Subject: [Gambas-user] Report.Layout In-Reply-To: References: Message-ID: Layout is for compute all the content arrangement before being able to draw it. The paint fonction call it automatically But sometime it is usefull to layout in advance lik? for the preview Le lun. 1 ao?t 2022 ? 21:53, T Lee Davidson a ?crit : > On 8/1/22 07:09, gian via User wrote: > > Hi, > > > > in my relentless progressive senile stupor, in trying to figure out what > the Report.Layout method is for (I think it should not > > have changed from the old gb.report > http://gambaswiki.org/wiki/comp/gb.report/report/layout ), I came across > this, I think > > bizarre, behavior of DataCount > http://gambaswiki.org/wiki/comp/gb.report2/reportcontainer/datacount . > > > > Here the report keeps loading pages until the stack overflows. > > > > Could someone kindly explain to me what I am doing wrong and what > Report.Layout is for ? > > See attached project > > > > Thank you for your attention & Regards > > > > Gianluigi > I don't think you're doing anything wrong. I think it's a bug. > > The Data event for the ReportImage is raised 6 times when it should be > raised only 3 given that ReportHBox2.DataCount = 3. The > Data events for the ReportLabels that have been given text in the IDE are > never raised. And, the Data events for the other two > labels continually recycle through the index 0-2, again and again. > > And, sorry, I have no idea what Report.Layout() is for. I moved it around > to a couple different locations in the code, and it > did not appear to change the behavior. > > > -- > Lee > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Mon Aug 1 23:15:47 2022 From: bagoneo at libero.it (gian) Date: Mon, 1 Aug 2022 23:15:47 +0200 Subject: [Gambas-user] Report.Layout In-Reply-To: References: Message-ID: <1667a22f-5b4a-bdb1-9489-45d5275472cf@libero.it> Il 01/08/22 22:29, Fabien Bodard ha scritto: > Layout is for compute all the content arrangement before being able to > draw it. > > The paint fonction call it automatically > > But sometime it is usefull to layout in advance lik? for the preview > > Le lun. 1 ao?t 2022 ? 21:53, T Lee Davidson > a ?crit?: > > On 8/1/22 07:09, gian via User wrote: > > Hi, > > > > in my relentless progressive senile stupor, in trying to figure > out what the Report.Layout method is for (I think it should not > > have changed from the old gb.report > ... > > See attached project > > I don't think you're doing anything wrong. I think it's a bug. > > The Data event for the ReportImage is raised 6 times when it should > be raised only 3 given that ReportHBox2.DataCount = 3. The > Data events for the ReportLabels that have been given text in the > IDE are never raised. And, the Data events for the other two > labels continually recycle through the index 0-2, again and again. > > And, sorry, I have no idea what Report.Layout() is for. I moved it > around to a couple different locations in the code, and it > did not appear to change the behavior. > > > -- > Lee Hi Lee and Fabien, kind as usual, thank you for your responses. @Fabien, what should I do do do you want me to open a new bugtracker report or is this report enough? I love you Gianluigi From karl.reinl at fen-net.de Tue Aug 2 11:51:11 2022 From: karl.reinl at fen-net.de (Karl Reinl) Date: Tue, 02 Aug 2022 11:51:11 +0200 Subject: [Gambas-user] Debugging inside components or libraries In-Reply-To: <58f2f409-7c85-6afe-f844-1cb6fb7b2b65@gambas-basic.org> References: <58f2f409-7c85-6afe-f844-1cb6fb7b2b65@gambas-basic.org> Message-ID: <3632fb1861265436c6e6f6cefbec4a9f30cef4e2.camel@fen-net.de> Am Dienstag, dem 26.07.2022 um 11:23 +0200 schrieb Benoit Minisini: > > I have just added in the development version of the IDE the ability > to debug inside the components used by the current project. Salut Beno?t, I would like to see the same for libraries. Maybe the way is almost the same?-- Amicalement Charlie From benoit.minisini at gambas-basic.org Tue Aug 2 12:35:53 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 2 Aug 2022 12:35:53 +0200 Subject: [Gambas-user] Debugging inside components or libraries In-Reply-To: <3632fb1861265436c6e6f6cefbec4a9f30cef4e2.camel@fen-net.de> References: <58f2f409-7c85-6afe-f844-1cb6fb7b2b65@gambas-basic.org> <3632fb1861265436c6e6f6cefbec4a9f30cef4e2.camel@fen-net.de> Message-ID: Le 02/08/2022 ? 11:51, Karl Reinl a ?crit?: > Am Dienstag, dem 26.07.2022 um 11:23 +0200 schrieb Benoit Minisini: >> >> I have just added in the development version of the IDE the ability >> to debug inside the components used by the current project. > > Salut Beno?t, > > I would like to see the same for libraries. Maybe the way is almost the same?-- > Amicalement > Charlie > It does not work with libraries? -- Beno?t Minisini. From bsteers4 at gmail.com Tue Aug 2 16:35:26 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 2 Aug 2022 15:35:26 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> Message-ID: On Mon, 1 Aug 2022, 18:58 Bruce Steers, wrote: > > > On Mon, 1 Aug 2022 at 14:16, Benoit Minisini < > benoit.minisini at gambas-basic.org> wrote: > >> Le 31/07/2022 ? 21:44, Bruce Steers a ?crit : >> > Anything been considered with html Canvas? >> > https://www.w3schools.com/tags/ref_canvas.asp >> > >> > >> > Looks like some kind of WebPaint.class could be added to gb.web.gui. >> > >> > Respects >> > BruceS >> > >> >> I have just committed an initial implementation of a WebDrawingArea >> control with its Paint class, based on . >> >> That way, you can see how it should be done. >> > > ooh , thank you Ben > wow , it looks complicated but looks like its' been made in such a way to > be able to be used on other clases too in the future. > I think i see what's going on. I can draw a square :) > I'm going to try adding Paint.Stroke() and Paint.FillRect() methods > and Paint.StrokeStyle / FillStyle properties to set brush/colour/gradient > > wish me luck ... :) > I think i prefer the way you did it ;) lol It works.. http://138.68.116.47/cgi-bin/WebDrawingArea.gambas just a tester, something that cycles rainbow coloured rectangles. (code is attached) I made a slight change to the PaintDriver_WebDrawingArea.class to enable the js text colours (needed it for "indigo") *Private Sub HandleStyle(hStyle As Variant, sProperty As String) As Boolean If TypeOf(hStyle) = gb.Integer Then WebForm._AddJavascript("$_c." & sProperty & " = " & JS(WebControl._GetColor(* *hStyle)))* * Else WebForm._AddJavascript("$_c." & sProperty & " = " & JS(hStyle)) EndifEnd* Can't seem to get mouse up event if the mouse has moved off the control that is a shame and kinda ruins everything :( Bloody well done though Ben. could be the start of some really cool things :) Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- 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 From antonio.j.teixeira at gmail.com Tue Aug 2 18:12:12 2022 From: antonio.j.teixeira at gmail.com (Antonio Teixeira) Date: Tue, 2 Aug 2022 17:12:12 +0100 Subject: [Gambas-user] Gambas 3 and Ubuntu 21.10 Message-ID: Hi everyone. I am trying to install gambas in a ubuntu 21.10 box but when I try to add the repository I am getting this answer: 404 Not Found [IP: 193.136.212.166 80] Did I miss some email here with a solution for this? Thanks for any kind of help. Atentamente / Regards Ant?nio Teixeira -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Tue Aug 2 18:25:43 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 2 Aug 2022 18:25:43 +0200 Subject: [Gambas-user] Gambas 3 and Ubuntu 21.10 In-Reply-To: References: Message-ID: <5c8b1fd3-07af-1df1-0a6b-ef62130ce1f8@gambas-basic.org> Le 02/08/2022 ? 18:12, Antonio Teixeira a ?crit?: > Hi everyone. > > I am trying to install gambas in a ubuntu 21.10 box but when I try to > add the repository I am getting this answer: 404 ?Not Found [IP: > 193.136.212.166 80] > Did I miss some email here with a solution for this? > > Thanks for any kind of help. > > > Atentamente / Regards > > Ant?nio Teixeira > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Everything seems to be normal on the ppa from here... -- Beno?t Minisini. From t.lee.davidson at gmail.com Tue Aug 2 21:47:23 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Tue, 2 Aug 2022 15:47:23 -0400 Subject: [Gambas-user] Gambas 3 and Ubuntu 21.10 In-Reply-To: References: Message-ID: <8b886da1-db89-8977-83cf-5f8f6f6c56a7@gmail.com> On 8/2/22 12:12, Antonio Teixeira wrote: > Hi everyone. > > I am trying to install gambas in a ubuntu 21.10 box but when I try to add the repository I am getting this answer: 404 ?Not > Found [IP: 193.136.212.166 80] > Did I miss some email here with a solution for this? > > Thanks for any kind of help. > > > Atentamente / Regards > > Ant?nio Teixeira > Plugging IP address 193.136.212.166 into my browser location bar takes me to CPAN (The Comprehensive Perl Archive Network). According to `host`, the IP address for ppa.launchpadcontent.net should be 185.125.190.52. Maybe your system has DNS issues. ? Or, someone is hijacking your DNS requests. ? -- Lee From karl.reinl at fen-net.de Tue Aug 2 22:10:28 2022 From: karl.reinl at fen-net.de (Karl Reinl) Date: Tue, 02 Aug 2022 22:10:28 +0200 Subject: [Gambas-user] Debugging inside components or libraries In-Reply-To: References: <58f2f409-7c85-6afe-f844-1cb6fb7b2b65@gambas-basic.org> <3632fb1861265436c6e6f6cefbec4a9f30cef4e2.camel@fen-net.de> Message-ID: <72fbb7d5e0b17d6f29fef13e8dbc3461665c636d.camel@fen-net.de> Am Dienstag, dem 02.08.2022 um 12:35 +0200 schrieb Benoit Minisini: > > > It does not work with libraries? > > Salut Beno?t, I can debug components witch are used in the library, but not the library it self (talk about my own libraries). And I think it would also be nice to have 2 switches, one for components and one for the private libraries, if that is possible. -- Amicalement Charlie From bsteers4 at gmail.com Wed Aug 3 10:36:36 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 3 Aug 2022 09:36:36 +0100 Subject: [Gambas-user] new error with new browser Message-ID: -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Untitled.png Type: image/png Size: 17976 bytes Desc: not available URL: From bsteers4 at gmail.com Wed Aug 3 10:37:21 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 3 Aug 2022 09:37:21 +0100 Subject: [Gambas-user] new error with new browser In-Reply-To: References: Message-ID: Ps. that when loading any project into the IDE Respects BruceS On Wed, 3 Aug 2022 at 09:36, Bruce Steers wrote: > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Wed Aug 3 11:39:08 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 3 Aug 2022 11:39:08 +0200 Subject: [Gambas-user] new error with new browser In-Reply-To: References: Message-ID: Le 03/08/2022 ? 10:37, Bruce Steers a ?crit?: > Ps. that when loading any project into the IDE > > Respects > BruceS > It should be better now. -- Beno?t Minisini. From bsteers4 at gmail.com Wed Aug 3 12:54:18 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 3 Aug 2022 11:54:18 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> Message-ID: On Tue, 2 Aug 2022 at 15:35, Bruce Steers wrote: > > > > On Mon, 1 Aug 2022, 18:58 Bruce Steers, wrote: > >> >> >> On Mon, 1 Aug 2022 at 14:16, Benoit Minisini < >> benoit.minisini at gambas-basic.org> wrote: >> >>> Le 31/07/2022 ? 21:44, Bruce Steers a ?crit : >>> > Anything been considered with html Canvas? >>> > https://www.w3schools.com/tags/ref_canvas.asp >>> > >>> > >>> > Looks like some kind of WebPaint.class could be added to gb.web.gui. >>> > >>> > Respects >>> > BruceS >>> > >>> >>> I have just committed an initial implementation of a WebDrawingArea >>> control with its Paint class, based on . >>> >>> That way, you can see how it should be done. >>> >> >> ooh , thank you Ben >> wow , it looks complicated but looks like its' been made in such a way to >> be able to be used on other clases too in the future. >> I think i see what's going on. I can draw a square :) >> I'm going to try adding Paint.Stroke() and Paint.FillRect() methods >> and Paint.StrokeStyle / FillStyle properties to set brush/colour/gradient >> >> wish me luck ... :) >> > > I think i prefer the way you did it ;) lol > It works.. > I've tried to implement Gradients and CSS values for fill and stroke styles. (just images left to support now) Made a Gradient.class https://gitlab.com/bsteers4/gambas/-/commit/f36bf206d1123df808655d44db0c6f065a6451e5 Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Wed Aug 3 13:09:42 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 3 Aug 2022 12:09:42 +0100 Subject: [Gambas-user] new error with new browser In-Reply-To: References: Message-ID: On Wed, 3 Aug 2022 at 10:40, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 03/08/2022 ? 10:37, Bruce Steers a ?crit : > > Ps. that when loading any project into the IDE > > > > Respects > > BruceS > > > It should be better now. > thank you kindly sir :) -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Wed Aug 3 14:00:15 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 3 Aug 2022 14:00:15 +0200 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> Message-ID: <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Le 03/08/2022 ? 12:54, Bruce Steers a ?crit?: > > I've tried to implement Gradients and CSS values for fill and stroke > styles.? (just images left to support now) > Made a Gradient.class > > https://gitlab.com/bsteers4/gambas/-/commit/f36bf206d1123df808655d44db0c6f065a6451e5 > > > Respects > BruceS > You must create a PaintBrush class that mimics the Paint interface of GUI components. That PaintBrush class will be passed to the 'Style' argument of the Fill() and Stroke() methods. Then you add the methods in Paint class to create a color brush (not useful, as 'Style' can directly be a color integer value), an image pattern brush, a linear gradient brush, and so on. By the way, I don't think we should support CSS color names in Paint. You can't check that a string is really a color name without having a huge list under the hood, and the Color class already has enough color constants for that. P.S. I will come back to Paris in three days, I won't be able to read my mails before. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Wed Aug 3 14:36:16 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 3 Aug 2022 13:36:16 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Message-ID: On Wed, 3 Aug 2022 at 13:01, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 03/08/2022 ? 12:54, Bruce Steers a ?crit : > > > > I've tried to implement Gradients and CSS values for fill and stroke > > styles. (just images left to support now) > > Made a Gradient.class > > > > > https://gitlab.com/bsteers4/gambas/-/commit/f36bf206d1123df808655d44db0c6f065a6451e5 > > < > https://gitlab.com/bsteers4/gambas/-/commit/f36bf206d1123df808655d44db0c6f065a6451e5 > > > > > > Respects > > BruceS > > > > You must create a PaintBrush class that mimics the Paint interface of > GUI components. > Okay so like the PaintBrush would be gambas version of the fillStyle or strokeStyle style > That PaintBrush class will be passed to the 'Style' argument of the > Fill() and Stroke() methods. > > Then you add the methods in Paint class to create a color brush (not > useful, as 'Style' can directly be a color integer value), an image > pattern brush, a linear gradient brush, and so on. > I think it'll be okay , image patterns was the next task, currently got gb.integer CSS and gradient , 3 out of 4 is cool :) going to handle images by using either src URL's or existing loaded img objects. Will look into making what i've done so far work your way through the Paint.class By the way, I don't think we should support CSS color names in Paint. > You can't check that a string is really a color name without having a > huge list under the hood, and the Color class already has enough color > constants for that. > I think it's cool, we could add in documentation that it's down to the programmer to use correct names if using CSS as they are not checked for validity. gotta love the option :) > P.S. I will come back to Paris in three days, I won't be able to read my > mails before. > Hopefully i will have some code for you to facepalm at by the time you return home ;) Bon voyage BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From gambas.fr at gmail.com Wed Aug 3 18:04:13 2022 From: gambas.fr at gmail.com (Fabien Bodard) Date: Wed, 3 Aug 2022 18:04:13 +0200 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Message-ID: Hi Bruce, I've ti do something like that with report Check ReportPaintBrush class in GB.report2 Best Regards, Fabien Bodard -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Thu Aug 4 13:56:04 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 4 Aug 2022 12:56:04 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Message-ID: On Wed, 3 Aug 2022 at 17:05, Fabien Bodard wrote: > Hi Bruce, > > I've ti do something like that with report > > Check ReportPaintBrush class in GB.report2 > > Best Regards, > > Fabien Bodard > Thank you Fab but I don't think I'm up for the task. I'm pretty sure i could make it all work but pretty unsure of Bens statement about making a PainBrush class "that mimics paint class" ? I'm pretty sure I could do something that was far from the correct, not in the end result but in it's required particular gambas structure. So I'm thinking wait for Ben to make the structure, then i can start thinking of decorating :) For now I'll just see what I can accomplish in my own environment with what we have so far. Thanks again BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at westwoodsvcs.com Thu Aug 4 18:57:18 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Thu, 04 Aug 2022 19:57:18 +0300 Subject: [Gambas-user] =?utf-8?q?Does_anyone_have_any_thoughts_on_webasse?= =?utf-8?q?mbly?= Message-ID: <1659632238.147161258@f38.my.com> Has anyone tried or have any thoughts on having gambas fast unsafe produce webassembly on the back end for running inside browsers. I understand there is a c to webassembly compiler available. Not sure what would be involved. Any thoughts? -- Thanks Brian G -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Thu Aug 4 20:34:23 2022 From: mbelmonte at belmotek.net (Martin) Date: Thu, 4 Aug 2022 20:34:23 +0200 Subject: [Gambas-user] Unix time format Message-ID: <395830b4-4814-a8a2-2823-04a0c2ba1832@belmotek.net> Hi, I want to compare the timestamp (mtime) from files provided by the stat command, as you know is something like "1659639479" I made a function (please see below) Maybe gambas include some native method or function? Static Public Function TimeUnix(datTime As Date) As Integer Return DateDiff(Date(1970, 1, 1, 0, 0, 0), datTime, gb.Second) End Regards. Mart?n. From rwe-sse at osnanet.de Thu Aug 4 21:00:48 2022 From: rwe-sse at osnanet.de (Rolf-Werner Eilert) Date: Thu, 4 Aug 2022 21:00:48 +0200 Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: <1659632238.147161258@f38.my.com> References: <1659632238.147161258@f38.my.com> Message-ID: <57999728-826a-24bf-b2b5-0e3fdee3269a@osnanet.de> Am 04.08.22 um 18:57 schrieb Brian G: > > Has anyone tried or have any thoughts on having gambas fast unsafe > produce webassembly on the back end for running inside browsers. > I understand there is a c to webassembly compiler available. > Not sure what would be involved. > Any thoughts? > > -- > Thanks > Brian G > > > ----[http://gambaswiki.org/wiki/doc/netiquette ]---- I just read an article about PyScript and/or Pyodide and thought this might be interesting for Gambas, too. Do you mean something like that? Regards Rolf -------------- next part -------------- An HTML attachment was scrubbed... URL: From t.lee.davidson at gmail.com Thu Aug 4 21:09:38 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Thu, 4 Aug 2022 15:09:38 -0400 Subject: [Gambas-user] Unix time format In-Reply-To: <395830b4-4814-a8a2-2823-04a0c2ba1832@belmotek.net> References: <395830b4-4814-a8a2-2823-04a0c2ba1832@belmotek.net> Message-ID: <36bf4972-77f8-f53a-4370-0f6cb58953c8@gmail.com> On 8/4/22 14:34, Martin wrote: > Hi, > I want to compare the timestamp (mtime) from files provided by the stat command, as you know is something like "1659639479" > > I made a function (please see below) > Maybe gambas include some native method or function? > > Static Public Function TimeUnix(datTime As Date) As Integer > > ? Return DateDiff(Date(1970, 1, 1, 0, 0, 0), datTime, gb.Second) > > End > > Regards. > Mart?n. When I use `stat` on a file, I get a format different than what you stated; eg. "2022-01-01 13:30:47.592253508 -0500" But, no matter, perhaps what you are looking for is the FromUnixTime method of Date (gb.util). http://gambaswiki.org/wiki/comp/gb.util/date -- Lee From brian at westwoodsvcs.com Fri Aug 5 01:41:22 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Fri, 05 Aug 2022 02:41:22 +0300 Subject: [Gambas-user] =?utf-8?q?Does_anyone_have_any_thoughts_on_webasse?= =?utf-8?q?mbly?= In-Reply-To: <57999728-826a-24bf-b2b5-0e3fdee3269a@osnanet.de> References: <1659632238.147161258@f38.my.com> <57999728-826a-24bf-b2b5-0e3fdee3269a@osnanet.de> Message-ID: <1659656482.390584796@f35.my.com> Webassembly is a virtual machine inside the web browser that is now supported by most browsers. It allows a c program to be compiles to web assembly Then run on the web assembly virtual machine. Most compilers now have a webassembly translator or compile directly to web assembly. Since when a gambas module is fast it is translated to c code and then compiles to native machine code. Perhaps it would be possible compile to web assembly which could be directly sent to the client browser for execution. It would mean I think that all gambas modules would have to be compiled to web assembly library format. web assembly links all required code and libraries to a single app binary I think and then sends it to the browser and runs in in a sandboxed virtual machine. Not sure what else. But it would be quite useful. To write to the app and it just runs on the clients machine in the browser. -- Thanks Brian G Thursday, 04 August 2022, 00:08PM -07:00 from Rolf-Werner Eilert rwe-sse at osnanet.de : > >Am 04.08.22 um 18:57 schrieb Brian G: >>Has anyone tried or have any >> thoughts on having gambas fast unsafe produce webassembly on the >> back end for running inside browsers. >>I understand there is a c to webassembly compiler available. >>Not sure what would be involved. >>Any thoughts? >>-- >>Thanks >>Brian G >> >>----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> > >I just read an article about PyScript and/or Pyodide and thought > this might be interesting for Gambas, too. Do you mean something > like that? >Regards >Rolf > > >----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From yves.cloutier at gmail.com Fri Aug 5 02:07:48 2022 From: yves.cloutier at gmail.com (Yves Cloutier) Date: Thu, 4 Aug 2022 19:07:48 -0500 Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: <1659656482.390584796@f35.my.com> References: <1659632238.147161258@f38.my.com> <57999728-826a-24bf-b2b5-0e3fdee3269a@osnanet.de> <1659656482.390584796@f35.my.com> Message-ID: I'm not an expert on the subject but i think you would need the gambas vm or runtime to be compiled to web assembly. Like pyscript for example an entire python runtime is loaded in the browser i believe. On Thu, Aug 4, 2022, 18:43 Brian G wrote: > Webassembly is a virtual machine inside the web browser that is now > supported by most browsers. It allows a c program to be compiles to web > assembly > Then run on the web assembly virtual machine. > > Most compilers now have a webassembly translator or compile directly to > web assembly. > Since when a gambas module is fast it is translated to c code and then > compiles to native machine code. Perhaps it would be possible compile to > web assembly which could be directly sent to the client browser for > execution. > > It would mean I think that all gambas modules would have to be compiled to > web assembly library format. > > web assembly links all required code and libraries to a single app binary > I think and then sends it to the browser and runs in in a sandboxed virtual > machine. > > Not sure what else. But it would be quite useful. To write to the app and > it just runs on the clients machine in the browser. > > -- > Thanks > Brian G > Thursday, 04 August 2022, 00:08PM -07:00 from Rolf-Werner Eilert > rwe-sse at osnanet.de: > > > Am 04.08.22 um 18:57 schrieb Brian G: > > Has anyone tried or have any thoughts on having gambas fast unsafe produce > webassembly on the back end for running inside browsers. > I understand there is a c to webassembly compiler available. > Not sure what would be involved. > Any thoughts? > > -- > Thanks > Brian G > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > I just read an article about PyScript and/or Pyodide and thought this > might be interesting for Gambas, too. Do you mean something like that? > > Regards > > Rolf > > > > ----[ 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 Fri Aug 5 02:59:49 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Fri, 5 Aug 2022 03:59:49 +0300 Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: References: <1659632238.147161258@f38.my.com> <57999728-826a-24bf-b2b5-0e3fdee3269a@osnanet.de> <1659656482.390584796@f35.my.com> Message-ID: You are right. Gambas JIT does not make standalone C code, it is heavily dependent on the interpreter. I don't think there is an easy way to compile even a skeleton version of Gambas into WebAssembly. WebAssembly makes restrictions on what the code can do and for example not all libraries are available. IE you cannot even compile just an arbitrary C program into WebAssembly, you need to design it to be used so. Jussi On Fri, Aug 5, 2022 at 3:09 AM Yves Cloutier wrote: > I'm not an expert on the subject but i think you would need the gambas vm > or runtime to be compiled to web assembly. Like pyscript for example an > entire python runtime is loaded in the browser i believe. > > On Thu, Aug 4, 2022, 18:43 Brian G wrote: > >> Webassembly is a virtual machine inside the web browser that is now >> supported by most browsers. It allows a c program to be compiles to web >> assembly >> Then run on the web assembly virtual machine. >> >> Most compilers now have a webassembly translator or compile directly to >> web assembly. >> Since when a gambas module is fast it is translated to c code and then >> compiles to native machine code. Perhaps it would be possible compile to >> web assembly which could be directly sent to the client browser for >> execution. >> >> It would mean I think that all gambas modules would have to be compiled >> to web assembly library format. >> >> web assembly links all required code and libraries to a single app binary >> I think and then sends it to the browser and runs in in a sandboxed virtual >> machine. >> >> Not sure what else. But it would be quite useful. To write to the app and >> it just runs on the clients machine in the browser. >> >> -- >> Thanks >> Brian G >> Thursday, 04 August 2022, 00:08PM -07:00 from Rolf-Werner Eilert >> rwe-sse at osnanet.de: >> >> >> Am 04.08.22 um 18:57 schrieb Brian G: >> >> Has anyone tried or have any thoughts on having gambas fast unsafe >> produce webassembly on the back end for running inside browsers. >> I understand there is a c to webassembly compiler available. >> Not sure what would be involved. >> Any thoughts? >> >> -- >> Thanks >> Brian G >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> >> >> I just read an article about PyScript and/or Pyodide and thought this >> might be interesting for Gambas, too. Do you mean something like that? >> >> Regards >> >> Rolf >> >> >> >> ----[ 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 isafiur at gmail.com Fri Aug 5 05:06:18 2022 From: isafiur at gmail.com (Safiur Rahman) Date: Fri, 5 Aug 2022 08:51:18 +0545 Subject: [Gambas-user] Does anyone have any thoughts on webassembly Message-ID: Future of gambas web programming -- Regards Safiur Rahman -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at westwoodsvcs.com Fri Aug 5 05:09:33 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Fri, 05 Aug 2022 06:09:33 +0300 Subject: [Gambas-user] =?utf-8?q?Does_anyone_have_any_thoughts_on_webasse?= =?utf-8?q?mbly?= In-Reply-To: References: <1659632238.147161258@f38.my.com> <1659656482.390584796@f35.my.com> Message-ID: <1659668973.18046403@f34.my.com> I thought that gambas fast actually full converted to c then is compiled and executed -- Thanks Brian G Thursday, 04 August 2022, 05:08PM -07:00 from Yves Cloutier yves.cloutier at gmail.com : >I'm not an expert on the subject but i think you would need the gambas vm or runtime to be compiled to web assembly. Like pyscript for example an entire python runtime is loaded in the browser i believe. >On Thu, Aug 4, 2022, 18:43 Brian G < brian at westwoodsvcs.com> wrote: >>Webassembly is a virtual machine inside the web browser that is now supported by most browsers. It allows a c program to be compiles to web assembly >>Then run on the web assembly virtual machine. >>Most compilers now have a webassembly translator or compile directly to web assembly. >>Since when a gambas module is fast it is translated to c code and then compiles to native machine code. Perhaps it would be possible compile to web assembly which could be directly sent to the client browser for execution. >>It would mean I think that all gambas modules would have to be compiled to web assembly library format. >>web assembly links all required code and libraries to a single app binary I think and then sends it to the browser and runs in in a sandboxed virtual machine. >>Not sure what else. But it would be quite useful. To write to the app and it just runs on the clients machine in the browser. >>-- >>Thanks >>Brian G Thursday, 04 August 2022, 00:08PM -07:00 from Rolf-Werner Eilert rwe-sse at osnanet.de : >> >>> >>>Am 04.08.22 um 18:57 schrieb Brian G: >>>>Has anyone tried or have any >>>> thoughts on having gambas fast unsafe produce webassembly on the >>>> back end for running inside browsers. >>>>I understand there is a c to webassembly compiler available. >>>>Not sure what would be involved. >>>>Any thoughts? >>>>-- >>>>Thanks >>>>Brian G >>>> >>>>----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >>>> >>> >>>I just read an article about PyScript and/or Pyodide and thought >>> this might be interesting for Gambas, too. Do you mean something >>> like that? >>>Regards >>>Rolf >>> >>> >>>----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >>> >> >>----[ http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at westwoodsvcs.com Fri Aug 5 05:18:07 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Fri, 05 Aug 2022 06:18:07 +0300 Subject: [Gambas-user] =?utf-8?q?Does_anyone_have_any_thoughts_on_webasse?= =?utf-8?q?mbly?= In-Reply-To: References: <1659632238.147161258@f38.my.com> Message-ID: <1659669487.522298460@f24.my.com> Was there not a version of gambas that the fast code ran on the llvm -- Thanks Brian G Thursday, 04 August 2022, 06:00PM -07:00 from Jussi Lahtinen jussi.lahtinen at gmail.com : >You are right. Gambas JIT does not make standalone C code, it is heavily dependent on the interpreter. I don't think there is an easy way to compile even a skeleton version of Gambas into WebAssembly. WebAssembly makes restrictions on what the code can do and for example not all libraries are available. IE you cannot even compile just an arbitrary C program into WebAssembly, you need to design it to be used so. > >Jussi > > > >On Fri, Aug 5, 2022 at 3:09 AM Yves Cloutier < yves.cloutier at gmail.com> wrote: >>I'm not an expert on the subject but i think you would need the gambas vm or runtime to be compiled to web assembly. Like pyscript for example an entire python runtime is loaded in the browser i believe. >>On Thu, Aug 4, 2022, 18:43 Brian G < brian at westwoodsvcs.com> wrote: >>>Webassembly is a virtual machine inside the web browser that is now supported by most browsers. It allows a c program to be compiles to web assembly >>>Then run on the web assembly virtual machine. >>>Most compilers now have a webassembly translator or compile directly to web assembly. >>>Since when a gambas module is fast it is translated to c code and then compiles to native machine code. Perhaps it would be possible compile to web assembly which could be directly sent to the client browser for execution. >>>It would mean I think that all gambas modules would have to be compiled to web assembly library format. >>>web assembly links all required code and libraries to a single app binary I think and then sends it to the browser and runs in in a sandboxed virtual machine. >>>Not sure what else. But it would be quite useful. To write to the app and it just runs on the clients machine in the browser. >>>-- >>>Thanks >>>Brian G Thursday, 04 August 2022, 00:08PM -07:00 from Rolf-Werner Eilert rwe-sse at osnanet.de : >>> >>>> >>>>Am 04.08.22 um 18:57 schrieb Brian G: >>>>>Has anyone tried or have any >>>>> thoughts on having gambas fast unsafe produce webassembly on the >>>>> back end for running inside browsers. >>>>>I understand there is a c to webassembly compiler available. >>>>>Not sure what would be involved. >>>>>Any thoughts? >>>>>-- >>>>>Thanks >>>>>Brian G >>>>>----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >>>>> >>>> >>>>I just read an article about PyScript and/or Pyodide and thought >>>> this might be interesting for Gambas, too. Do you mean something >>>> like that? >>>>Regards >>>>Rolf >>>> >>>> >>>>----[ 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 mbelmonte at belmotek.net Fri Aug 5 10:03:57 2022 From: mbelmonte at belmotek.net (Martin) Date: Fri, 5 Aug 2022 10:03:57 +0200 Subject: [Gambas-user] Unix time format In-Reply-To: <36bf4972-77f8-f53a-4370-0f6cb58953c8@gmail.com> References: <395830b4-4814-a8a2-2823-04a0c2ba1832@belmotek.net> <36bf4972-77f8-f53a-4370-0f6cb58953c8@gmail.com> Message-ID: El 4/8/22 a las 21:09, T Lee Davidson escribi?: > When I use `stat` on a file, I get a format different than what you stated; eg. "2022-01-01 13:30:47.592253508 -0500" Ok, it is correct, but I use a class that is an implementation of "libc" Library "libc:6" Public Struct stat_ ... st_mtime As Long ... End Struct Private Const _STAT_VER_LINUX As Integer = 1 Private Extern __xstat(_STAT_VER As Integer, __path As String, __statbuf As Stat_) As Integer Then i get a long number for dates, which is very useful for comparing file times. > But, no matter, perhaps what you are looking for is the FromUnixTime method of Date (gb.util). > http://gambaswiki.org/wiki/comp/gb.util/date Cool, Date.ToUnixTime is what I need, because is faster operate directly whit unix time due to the fact that it is not necessary to convert the variable. Config.LastScann = Date.ToUnixTime(Now()) Regards. From mbelmonte at belmotek.net Fri Aug 5 14:33:55 2022 From: mbelmonte at belmotek.net (Martin) Date: Fri, 5 Aug 2022 14:33:55 +0200 Subject: [Gambas-user] Profiling does not work in manjaro? Message-ID: <67fca13c-9b5d-811e-6dd7-3d26924749f9@belmotek.net> Hi, I use the gambas IDE avalaible in manjaro repo but profilling not work, ide stop. Please see the gif in imgur where it shows, at the end, a green label below right with the message "loading profiling file" then at this point the ide is blocked. https://imgur.com/UbsfEdx Note: the system info is attached also. -------------- next part -------------- [System] Gambas=3.17.2 OperatingSystem=Linux Kernel=5.15.57-2-MANJARO Architecture=x86_64 Distribution=Manjaro Linux Desktop=XFCE Font=Noto Sans,10 Scale=7 Theme=matcha-sea Language=es_ES.utf8 Memory=7854M [Libraries] Cairo=libcairo.so.2.11706.0 Curl=libcurl.so.4.8.0 DBus=libdbus-1.so.3.32.0 GDK2=libgdk-x11-2.0.so.0.2400.33 GDK3=libgdk-3.so.0.2404.30 GStreamer=libgstreamer-1.0.so.0.2003.0 GTK+2=libgtk-x11-2.0.so.0.2400.33 GTK+3=libgtk-3.so.0.2404.30 OpenGL=libGL.so.1.7.0 Poppler=libpoppler.so.122.0.0 QT5=libQt5Core.so.5.15.5 SDL=libSDL-1.2.so.1.2.52 SQLite=libsqlite3.so.0.8.6 [Environment] DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus DESKTOP_SESSION=xfce DISPLAY=:0.0 GB_GUI=gb.gtk3 GDMSESSION=xfce GDM_LANG=es_ES.utf8 GTK3_MODULES=xapp-gtk3-module:xapp-gtk3-module GTK_MODULES=canberra-gtk-module:canberra-gtk-module HOME= LANG=es_ES.utf8 LC_ADDRESS=es_ES.UTF-8 LC_ALL=es_ES.utf8 LC_IDENTIFICATION=es_ES.UTF-8 LC_MEASUREMENT=es_ES.UTF-8 LC_MONETARY=es_ES.UTF-8 LC_NAME=es_ES.UTF-8 LC_NUMERIC=es_ES.UTF-8 LC_PAPER=es_ES.UTF-8 LC_TELEPHONE=es_ES.UTF-8 LC_TIME=es_ES.UTF-8 LOGNAME= MAIL=/var/spool/mail/ MOTD_SHOWN=pam PANEL_GDK_CORE_DEVICE_EVENTS=0 PATH=/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl PWD= QT_LOGGING_RULES=*.debug=false SESSION_MANAGER=local/:@/tmp/.ICE-unix/1164,unix/:/tmp/.ICE-unix/1164 SHELL=/bin/bash SHLVL=0 SSH_AGENT_PID=1211 SSH_AUTH_SOCK=/tmp/ssh-XXXXXXO02hHG/agent.1210 TZ=:/etc/localtime USER= XAUTHORITY=/.Xauthority XDG_CONFIG_DIRS=/etc/xdg XDG_CURRENT_DESKTOP=XFCE XDG_DATA_DIRS=/usr/local/share:/usr/share XDG_GREETER_DATA_DIR=/var/lib/lightdm-data/ XDG_MENU_PREFIX=xfce- XDG_RUNTIME_DIR=/run/user/1000 XDG_SEAT=seat0 XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0 XDG_SESSION_CLASS=user XDG_SESSION_DESKTOP=xfce XDG_SESSION_ID=2 XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0 XDG_SESSION_TYPE=x11 XDG_VTNR=7 From jussi.lahtinen at gmail.com Fri Aug 5 14:44:33 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Fri, 5 Aug 2022 15:44:33 +0300 Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: <1659668973.18046403@f34.my.com> References: <1659632238.147161258@f38.my.com> <1659656482.390584796@f35.my.com> <1659668973.18046403@f34.my.com> Message-ID: You misunderstood. It does make C code (and compile it), but the code needs Gambas to run. If your program uses a library, then you need the library to run the code. Jussi On Fri, Aug 5, 2022 at 6:10 AM Brian G wrote: > I thought that gambas fast actually full converted to c then is compiled > and executed > > -- > Thanks > Brian G > Thursday, 04 August 2022, 05:08PM -07:00 from Yves Cloutier > yves.cloutier at gmail.com: > > I'm not an expert on the subject but i think you would need the gambas vm > or runtime to be compiled to web assembly. Like pyscript for example an > entire python runtime is loaded in the browser i believe. > > On Thu, Aug 4, 2022, 18:43 Brian G wrote: > > Webassembly is a virtual machine inside the web browser that is now > supported by most browsers. It allows a c program to be compiles to web > assembly > Then run on the web assembly virtual machine. > > Most compilers now have a webassembly translator or compile directly to > web assembly. > Since when a gambas module is fast it is translated to c code and then > compiles to native machine code. Perhaps it would be possible compile to > web assembly which could be directly sent to the client browser for > execution. > > It would mean I think that all gambas modules would have to be compiled to > web assembly library format. > > web assembly links all required code and libraries to a single app binary > I think and then sends it to the browser and runs in in a sandboxed virtual > machine. > > Not sure what else. But it would be quite useful. To write to the app and > it just runs on the clients machine in the browser. > > -- > Thanks > Brian G > Thursday, 04 August 2022, 00:08PM -07:00 from Rolf-Werner Eilert > rwe-sse at osnanet.de: > > > Am 04.08.22 um 18:57 schrieb Brian G: > > Has anyone tried or have any thoughts on having gambas fast unsafe produce > webassembly on the back end for running inside browsers. > I understand there is a c to webassembly compiler available. > Not sure what would be involved. > Any thoughts? > > -- > Thanks > Brian G > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > I just read an article about PyScript and/or Pyodide and thought this > might be interesting for Gambas, too. Do you mean something like that? > > Regards > > Rolf > > > > ----[ 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 brian at westwoodsvcs.com Sat Aug 6 09:04:46 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Sat, 06 Aug 2022 10:04:46 +0300 Subject: [Gambas-user] =?utf-8?q?Does_anyone_have_any_thoughts_on_webasse?= =?utf-8?q?mbly?= In-Reply-To: References: <1659632238.147161258@f38.my.com> <1659668973.18046403@f34.my.com> Message-ID: <1659769485.966897067@f1.my.com> How did it work with the llvm when it was being used -- Thanks Brian G Friday, 05 August 2022, 05:44AM -07:00 from Jussi Lahtinen jussi.lahtinen at gmail.com : >You misunderstood. It does make C code (and compile it), but the code needs Gambas to run. If your program uses a library, then you need the library to run the code. > >Jussi >? > >On Fri, Aug 5, 2022 at 6:10 AM Brian G < brian at westwoodsvcs.com> wrote: >>I thought that gambas fast actually full converted to c then is compiled and executed >>-- >>Thanks >>Brian G Thursday, 04 August 2022, 05:08PM -07:00 from Yves Cloutier yves.cloutier at gmail.com : >> >>>I'm not an expert on the subject but i think you would need the gambas vm or runtime to be compiled to web assembly. Like pyscript for example an entire python runtime is loaded in the browser i believe. >>>On Thu, Aug 4, 2022, 18:43 Brian G < brian at westwoodsvcs.com> wrote: >>>>Webassembly is a virtual machine inside the web browser that is now supported by most browsers. It allows a c program to be compiles to web assembly >>>>Then run on the web assembly virtual machine. >>>>Most compilers now have a webassembly translator or compile directly to web assembly. >>>>Since when a gambas module is fast it is translated to c code and then compiles to native machine code. Perhaps it would be possible compile to web assembly which could be directly sent to the client browser for execution. >>>>It would mean I think that all gambas modules would have to be compiled to web assembly library format. >>>>web assembly links all required code and libraries to a single app binary I think and then sends it to the browser and runs in in a sandboxed virtual machine. >>>>Not sure what else. But it would be quite useful. To write to the app and it just runs on the clients machine in the browser. >>>>-- >>>>Thanks >>>>Brian G Thursday, 04 August 2022, 00:08PM -07:00 from Rolf-Werner Eilert rwe-sse at osnanet.de : >>>> >>>>> >>>>>Am 04.08.22 um 18:57 schrieb Brian G: >>>>>>Has anyone tried or have any >>>>>> thoughts on having gambas fast unsafe produce webassembly on the >>>>>> back end for running inside browsers. >>>>>>I understand there is a c to webassembly compiler available. >>>>>>Not sure what would be involved. >>>>>>Any thoughts? >>>>>>-- >>>>>>Thanks >>>>>>Brian G >>>>>>----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >>>>>> >>>>> >>>>>I just read an article about PyScript and/or Pyodide and thought >>>>> this might be interesting for Gambas, too. Do you mean something >>>>> like that? >>>>>Regards >>>>>Rolf >>>>> >>>>> >>>>>----[ 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 brian at westwoodsvcs.com Sat Aug 6 09:06:01 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Sat, 06 Aug 2022 10:06:01 +0300 Subject: [Gambas-user] =?utf-8?q?Profiling_does_not_work_in_manjaro=3F?= In-Reply-To: <67fca13c-9b5d-811e-6dd7-3d26924749f9@belmotek.net> References: <67fca13c-9b5d-811e-6dd7-3d26924749f9@belmotek.net> Message-ID: <1659769561.445409062@f18.my.com> I made a big report for this issue -- Thanks Brian G Friday, 05 August 2022, 05:45AM -07:00 from Martin mbelmonte at belmotek.net : >Hi, >I use the gambas IDE avalaible in manjaro repo but profilling not work, >ide stop. Please see the gif in imgur where it shows, at the end, a >green label below right with the message "loading profiling file" then >at this point the ide is blocked. > >https://imgur.com/UbsfEdx > >Note: the system info is attached also. > >----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Sat Aug 6 17:34:34 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 6 Aug 2022 17:34:34 +0200 Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: References: Message-ID: <300bbbf2-f45a-f810-5077-3233f9bf060a@gambas-basic.org> Le 05/08/2022 ? 05:06, Safiur Rahman a ?crit?: > Future of gambas web programming > > -- > Regards > Safiur Rahman > I don't know what you have in mind... WebAssembly is for running everything on the client, so it's no use for Gambas, whose web components are for running everything the server. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Sat Aug 6 17:38:37 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 6 Aug 2022 17:38:37 +0200 Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: <1659769485.966897067@f1.my.com> References: <1659632238.147161258@f38.my.com> <1659668973.18046403@f34.my.com> <1659769485.966897067@f1.my.com> Message-ID: Le 06/08/2022 ? 09:04, Brian G a ?crit?: > How did it work with the llvm when it was being used > > -- > Thanks > Brian G > Exactly the same way. The problem was that llvm didn't care with backward compatibility in its JIT library, so all the code had to be rewritten. Hence my JIT component that use C instead of these frameworks that are useless without backward-compatibility. Regards, -- Beno?t Minisini. From brian at westwoodsvcs.com Sat Aug 6 17:39:35 2022 From: brian at westwoodsvcs.com (=?UTF-8?B?QnJpYW4gRw==?=) Date: Sat, 06 Aug 2022 18:39:35 +0300 Subject: [Gambas-user] =?utf-8?q?Does_anyone_have_any_thoughts_on_webasse?= =?utf-8?q?mbly?= In-Reply-To: <300bbbf2-f45a-f810-5077-3233f9bf060a@gambas-basic.org> References: <300bbbf2-f45a-f810-5077-3233f9bf060a@gambas-basic.org> Message-ID: <1659800375.599457436@f39.my.com> I was thinking standalone programs, being able to run within the client, not server based applications. So not using the web interface -- Thanks Brian G Saturday, 06 August 2022, 08:35AM -07:00 from Benoit Minisini benoit.minisini at gambas-basic.org : >Le 05/08/2022 ? 05:06, Safiur Rahman a ?crit?: > Future of gambas web programming > > -- > Regards > Safiur Rahman > > >I don't know what you have in mind... > >WebAssembly is for running everything on the client, so it's no use for >Gambas, whose web components are for running everything the server. > >Regards, > >-- >Beno?t Minisini. > >----[ http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From isafiur at gmail.com Sat Aug 6 18:14:08 2022 From: isafiur at gmail.com (Safiur Rahman) Date: Sat, 6 Aug 2022 21:59:08 +0545 Subject: [Gambas-user] (no subject) Message-ID: Hi When creating database table with large field length eg. VARCHAR(60,000) is taken by gambas as MEDIUMTEXT in mysql. But the mysql manual says that The length can be specified as a value from 0 to 65,535. https://dev.mysql.com/doc/refman/8.0/en/char.html Am I missing something? -- Regards Safiur Rahman -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Sat Aug 6 18:12:12 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 6 Aug 2022 18:12:12 +0200 Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: <1659800375.599457436@f39.my.com> References: <300bbbf2-f45a-f810-5077-3233f9bf060a@gambas-basic.org> <1659800375.599457436@f39.my.com> Message-ID: Le 06/08/2022 ? 17:39, Brian G a ?crit?: > I was thinking standalone programs, being able to run within the client, > not server based applications. > > So not using the web interface > Yes, I know now. It's because I read the mail from the most recent to the oldest instead of the contrary. :-) As Yves Cloutier said, as soon as you need a library, you will get problems with WebAssembly, which must sandbox everything to not make it the new ActiveX. A web browser does not yet run a full operating system, even if it is what Google wanted to hijack Windows and become the new monopoly. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Sat Aug 6 20:32:52 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 6 Aug 2022 19:32:52 +0100 Subject: [Gambas-user] .fuse_hidden* files and git Message-ID: Not sure what causes them? If IDE is open for a project a file like .fuse_hidden000045a600000001 appears in the project dir. It stays there till the IDE is closed. Running git functions sees them and thinks they are new project files. Maybe should report the bug to git or maybe we could add .fuse_hidden* to the list in the default .gitignore file? Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at westwoodsvcs.com Sat Aug 6 21:57:13 2022 From: brian at westwoodsvcs.com (Brian G) Date: Sat, 6 Aug 2022 12:57:13 -0700 (PDT) Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: References: <1659632238.147161258@f38.my.com> <1659668973.18046403@f34.my.com> <1659769485.966897067@f1.my.com> Message-ID: <1454121071.68032.1659815833876.JavaMail.zimbra@westwoodsvcs.com> My understanding right now is that most common c libraries have already be ported to web assembly. And that a c to webassembly compiler is available. Does the jit backend not now currenly produce C code to be compiled, and most of the non Gambas code components are written in c. How would I for fun replace the c compiler with the c to web assembly compiler to see what happens? "Failure is the key to success; each mistake teaches us something" .. Morihei Ueshiba Brian G ----- On Aug 6, 2022, at 8:38 AM, Benoit Minisini benoit.minisini at gambas-basic.org wrote: > Le 06/08/2022 ? 09:04, Brian G a ?crit?: >> How did it work with the llvm when it was being used >> >> -- >> Thanks >> Brian G >> > > Exactly the same way. The problem was that llvm didn't care with > backward compatibility in its JIT library, so all the code had to be > rewritten. Hence my JIT component that use C instead of these frameworks > that are useless without backward-compatibility. > > Regards, > > -- > Beno?t Minisini. > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- From bsteers4 at gmail.com Sat Aug 6 23:31:29 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 6 Aug 2022 22:31:29 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Message-ID: On Thu, 4 Aug 2022 at 12:56, Bruce Steers wrote: > > > On Wed, 3 Aug 2022 at 17:05, Fabien Bodard wrote: > >> Hi Bruce, >> >> I've ti do something like that with report >> >> Check ReportPaintBrush class in GB.report2 >> >> Best Regards, >> >> Fabien Bodard >> > > Thank you Fab but I don't think I'm up for the task. > I'm pretty sure i could make it all work but pretty unsure of Bens > statement about making a PainBrush class "that mimics paint class" ? > I'm pretty sure I could do something that was far from the correct, not in > the end result but in it's required particular gambas structure. > So I'm thinking wait for Ben to make the structure, then i can start > thinking of decorating :) > > For now I'll just see what I can accomplish in my own environment with > what we have so far. > I maybe up for the task, I have this so far... https://gitlab.com/bsteers4/gambas/-/tree/web-gui-updates https://gitlab.com/bsteers4/gambas/-/tree/web-gui-updates/comp/src/gb.web.gui/.src I looked at Fabs source, i looked to how Paint.class does in in GUI I have the above working, gradients working only at present. How sound is the code Ben? Respects -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Aug 7 00:14:46 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 6 Aug 2022 23:14:46 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Message-ID: On Sat, 6 Aug 2022 at 22:31, Bruce Steers wrote: > > > On Thu, 4 Aug 2022 at 12:56, Bruce Steers wrote: > >> >> >> On Wed, 3 Aug 2022 at 17:05, Fabien Bodard wrote: >> >>> Hi Bruce, >>> >>> I've ti do something like that with report >>> >>> Check ReportPaintBrush class in GB.report2 >>> >>> Best Regards, >>> >>> Fabien Bodard >>> >> >> Thank you Fab but I don't think I'm up for the task. >> I'm pretty sure i could make it all work but pretty unsure of Bens >> statement about making a PainBrush class "that mimics paint class" ? >> I'm pretty sure I could do something that was far from the correct, not >> in the end result but in it's required particular gambas structure. >> So I'm thinking wait for Ben to make the structure, then i can start >> thinking of decorating :) >> >> For now I'll just see what I can accomplish in my own environment with >> what we have so far. >> > > I maybe up for the task, I have this so far... > https://gitlab.com/bsteers4/gambas/-/tree/web-gui-updates > > https://gitlab.com/bsteers4/gambas/-/tree/web-gui-updates/comp/src/gb.web.gui/.src > I looked at Fabs source, i looked to how Paint.class does in in GUI > I have the above working, gradients working only at present. > > How sound is the code Ben? > Respects > I condensed the work into one commit on another branch so all changes can be viewed at once. https://gitlab.com/bsteers4/gambas/-/tree/web-gui-brush https://gitlab.com/bsteers4/gambas/-/commit/c57ab3a25c48ae7f1acfe27bd3231c86328d4752 Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From jussi.lahtinen at gmail.com Sun Aug 7 01:23:40 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Sun, 7 Aug 2022 02:23:40 +0300 Subject: [Gambas-user] Does anyone have any thoughts on webassembly In-Reply-To: <1454121071.68032.1659815833876.JavaMail.zimbra@westwoodsvcs.com> References: <1659632238.147161258@f38.my.com> <1659668973.18046403@f34.my.com> <1659769485.966897067@f1.my.com> <1454121071.68032.1659815833876.JavaMail.zimbra@westwoodsvcs.com> Message-ID: > > Does the jit backend not now currenly produce C code to be compiled, and > most of the non Gambas code components are written in c. > Do you read the answers given to you?? Jussi -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Aug 7 14:49:27 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 7 Aug 2022 13:49:27 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Message-ID: On Sat, 6 Aug 2022 at 23:14, Bruce Steers wrote: > > > On Sat, 6 Aug 2022 at 22:31, Bruce Steers wrote: > >> >> >> On Thu, 4 Aug 2022 at 12:56, Bruce Steers wrote: >> >>> >>> >>> On Wed, 3 Aug 2022 at 17:05, Fabien Bodard wrote: >>> >>>> Hi Bruce, >>>> >>>> I've ti do something like that with report >>>> >>>> Check ReportPaintBrush class in GB.report2 >>>> >>>> Best Regards, >>>> >>>> Fabien Bodard >>>> >>> >>> Thank you Fab but I don't think I'm up for the task. >>> I'm pretty sure i could make it all work but pretty unsure of Bens >>> statement about making a PainBrush class "that mimics paint class" ? >>> I'm pretty sure I could do something that was far from the correct, not >>> in the end result but in it's required particular gambas structure. >>> So I'm thinking wait for Ben to make the structure, then i can start >>> thinking of decorating :) >>> >>> For now I'll just see what I can accomplish in my own environment with >>> what we have so far. >>> >> >> I maybe up for the task, I have this so far... >> https://gitlab.com/bsteers4/gambas/-/tree/web-gui-updates >> >> https://gitlab.com/bsteers4/gambas/-/tree/web-gui-updates/comp/src/gb.web.gui/.src >> I looked at Fabs source, i looked to how Paint.class does in in GUI >> I have the above working, gradients working only at present. >> >> How sound is the code Ben? >> Respects >> > > I condensed the work into one commit on another branch so all changes can > be viewed at once. > https://gitlab.com/bsteers4/gambas/-/tree/web-gui-brush > > https://gitlab.com/bsteers4/gambas/-/commit/c57ab3a25c48ae7f1acfe27bd3231c86328d4752 > Respects > BruceS > Added RadialGradient too now, all seems to work lovely in the test program. https://gitlab.com/bsteers4/gambas/-/commits/web-gui-brush (merge request in draft mode submitted) (i wonder if it takes longer to examine my code than it does to write your own version from scratch?? ? ) Still want/intend to implement.... Images (Patterns) for PaintBrush, being able to use either an existing loaded image id or load from URL. a Pant.StrokeText() / Paint.FillText() method and be able to use PaintBrush on them, gonna look cool i think :) https://www.w3schools.com/tags/canvas_filltext.asp A way to get proper mouse up events from DrawingArea so hand drawn buttons are possible. Currently mouse up and mouse down events only trigger if mouse if over object. so if mouse is moved off the object and released no mouseup event triggers leaving it in MouseDown state, kinda stops it being able to be used as a button. Perhaps a MakeButton flag or something that places the canvas inside a tag might work? (i'm just guessing) Unless somebody knows the secret ? Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Aug 7 15:04:46 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 7 Aug 2022 14:04:46 +0100 Subject: [Gambas-user] getting real web object sizes Message-ID: It would be useful to get/convert dimensions of some things in pixels from css especially with WebDrawingarea otherwise it is going to be fairly essential to only use px values. There are apparently various methods to do it. Below is some useful info from a page I found on it. I have not tested the method below using em or % css sizes (shame the test used px) Respects BruceS Quote from page @ https://stackoverflow.com/questions/294250/how-do-i-retrieve-an-html-elements-actual-width-and-height Just in case it is useful to anyone, I put a textbox, button and div all with the same css: width:200px; height:20px; border:solid 1px #000; padding:2px;
I tried it in chrome, firefox and ie-edge, I tried with jquery and without, and I tried it with and without box-sizing:border-box. Always with The results: Firefox Chrome IE-Edge with w/o with w/o with w/o box-sizing $("#t").width() 194 200 194 200 194 200 $("#b").width() 194 194 194 194 194 194 $("#d").width() 194 200 194 200 194 200 $("#t").outerWidth() 200 206 200 206 200 206 $("#b").outerWidth() 200 200 200 200 200 200 $("#d").outerWidth() 200 206 200 206 200 206 $("#t").innerWidth() 198 204 198 204 198 204 $("#b").innerWidth() 198 198 198 198 198 198 $("#d").innerWidth() 198 204 198 204 198 204 $("#t").css('width') 200px 200px 200px 200px 200px 200px $("#b").css('width') 200px 200px 200px 200px 200px 200px $("#d").css('width') 200px 200px 200px 200px 200px 200px $("#t").css('border-left-width') 1px 1px 1px 1px 1px 1px $("#b").css('border-left-width') 1px 1px 1px 1px 1px 1px $("#d").css('border-left-width') 1px 1px 1px 1px 1px 1px $("#t").css('padding-left') 2px 2px 2px 2px 2px 2px $("#b").css('padding-left') 2px 2px 2px 2px 2px 2px $("#d").css('padding-left') 2px 2px 2px 2px 2px 2px document.getElementById("t").getBoundingClientRect().width 200 206 200 206 200 206document.getElementById("b").getBoundingClientRect().width 200 200 200 200 200 200document.getElementById("d").getBoundingClientRect().width 200 206 200 206 200 206 document.getElementById("t").offsetWidth 200 206 200 206 200 206document.getElementById("b").offsetWidth 200 200 200 200 200 200document.getElementById("d").offsetWidth 200 206 200 206 200 206 -------------- next part -------------- An HTML attachment was scrubbed... URL: From adamnt42 at gmail.com Sun Aug 7 17:06:08 2022 From: adamnt42 at gmail.com (bb) Date: Mon, 08 Aug 2022 00:36:08 +0930 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Message-ID: On Sun, 2022-08-07 at 13:49 +0100, Bruce Steers wrote: > Currently mouse up and mouse down events only trigger if mouse if > over > object. so if mouse is moved off the object and released no mouseup > event > triggers leaving it in MouseDown state, kinda stops it being able to > be > used as a button. AFAIK, thats the way all buttons work everywhere. I dont know how many times that has saved me from pressing the wrong button. Perhaps you just want to use the Leave event to restore your button (if you need to) b -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Aug 7 22:21:09 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 7 Aug 2022 21:21:09 +0100 Subject: [Gambas-user] gb.web.gui and Canvas In-Reply-To: References: <16756f05-128b-6c70-6be6-d068b04e49b5@gambas-basic.org> <9b7bd052-19bb-c9b0-6105-8d36fd520a04@gambas-basic.org> Message-ID: On Sun, 7 Aug 2022, 16:07 bb, wrote: > On Sun, 2022-08-07 at 13:49 +0100, Bruce Steers wrote: > > Currently mouse up and mouse down events only trigger if mouse if over > object. so if mouse is moved off the object and released no mouseup event > triggers leaving it in MouseDown state, kinda stops it being able to be > used as a button. > > AFAIK, thats the way all buttons work everywhere. I dont know how many > times that has saved me from pressing the wrong button. > Yeah it's handy and I code it into all my utilities. Most buttons give mouseup event though even if not over the control, in gambas I'd do something like. Public Sub Button1_MouseUp() If Not Mouse.Inside(Me) Then Return End But at least the mouse up event triggers. With the HTML onmouseup does not trigger if not over the control > Perhaps you just want to use the Leave event to restore your button (if > you need to) > Yeah I think it'll have to. Seems normal html buttons work the usual way but no idea how to configure. I guess it's the browsers doing it automatically. BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Sun Aug 7 22:29:41 2022 From: bagoneo at libero.it (gian) Date: Sun, 7 Aug 2022 22:29:41 +0200 Subject: [Gambas-user] Help for gb.web.gui Message-ID: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> Hi, There is a friend from the Italian forum, who starting from the sources of the farm WebDemo program, try with this simple attached test generate with the server a CSV file, this works, then he would like from browser see download and save the file in the download folder, this does not happen. Can you help him? Thank you With best regards Gianluigi -------------- next part -------------- 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 OMYxjnGMY/y38H8A14X/kgB4AAA= From t.lee.davidson at gmail.com Sun Aug 7 22:43:36 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sun, 7 Aug 2022 16:43:36 -0400 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> References: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> Message-ID: On 8/7/22 16:29, gian via User wrote: > Hi, > > There is a friend from the Italian forum, who starting from the sources of the farm WebDemo program, try with this simple > attached test generate with the server a CSV file, this works, then he would like from browser see download and save the file in > the download folder, this does not happen. > > Can you help him? Thank you > > With best regards > > Gianluigi I think there is a bug in the lib.js file that gb.web.gui uses. I am using stable Gambas 3.17.3, and I see that lib.js is different in the developer branch at the very spot where my browser developer console reports a Syntax Error in that file: Uncaught SyntaxError: unexpected token: ':' lib:0.0.1.js:1:19 answer http://localhost:8080/lib:0.0.1.js:275 onreadystatechange http://localhost:8080/lib:0.0.1.js:324 sendNewCommand http://localhost:8080/lib:0.0.1.js:324 answer http://localhost:8080/lib:0.0.1.js:295 onreadystatechange http://localhost:8080/lib:0.0.1.js:324 sendNewCommand http://localhost:8080/lib:0.0.1.js:324 send http://localhost:8080/lib:0.0.1.js:345 update http://localhost:8080/lib:0.0.1.js:355 onFocus http://localhost:8080/lib:0.0.1.js:431 answer http://localhost:8080/lib:0.0.1.js:275 onreadystatechange http://localhost:8080/lib:0.0.1.js:324 (Async: EventHandlerNonNull) sendNewCommand http://localhost:8080/lib:0.0.1.js:324 answer http://localhost:8080/lib:0.0.1.js:295 onreadystatechange http://localhost:8080/lib:0.0.1.js:324 (Async: EventHandlerNonNull) sendNewCommand http://localhost:8080/lib:0.0.1.js:324 send http://localhost:8080/lib:0.0.1.js:345 update http://localhost:8080/lib:0.0.1.js:355 onFocus http://localhost:8080/lib:0.0.1.js:431 Beno?t, have you fixed this already? -- Lee From isafiur at gmail.com Mon Aug 8 09:48:59 2022 From: isafiur at gmail.com (Safiur Rahman) Date: Mon, 8 Aug 2022 13:33:59 +0545 Subject: [Gambas-user] Help for gb.web.gui Message-ID: Hi What I have been doing is to send the file to the root folder of the web server. Then you can download it easily. E.g. in ubuntu $ sudo mkdir /var/www/html/docs $ sudo chmod -R a+rwx /var/www/html/docs Then copy to the folder Copy To "/var/www/html/docs" & File.Name() Then you can download using window.Open WebForm.Exec("window.open('http://localhost/docs/" &/ File.Name() & "'); ") -- Regards Safiur Rahman -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Mon Aug 8 10:04:53 2022 From: bagoneo at libero.it (gian) Date: Mon, 8 Aug 2022 10:04:53 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: References: Message-ID: <87909659-b7c5-fac9-7af1-868265631b51@libero.it> Il 08/08/22 09:48, Safiur Rahman ha scritto: > Hi > > What I have been doing is to send the file to the root folder of the web > server. Then you can download it easily. > > E.g. in ubuntu > > $ sudo mkdir /var/www/html/docs > $ sudo chmod -R a+rwx /var/www/html/docs > > Then copy to the folder > ?Copy To "/var/www/html/docs" & File.Name() > > Then you can download using window.Open > ? WebForm.Exec("window.open('http://localhost/docs/ > " &/ File.Name() & "'); ") > > -- > Regards > Safiur Rahman > Hi, Thank you very much for the welcome reply. I will immediately refer your suggestion to our friend. Regards Gianluigi From bagoneo at libero.it Mon Aug 8 22:46:07 2022 From: bagoneo at libero.it (gian) Date: Mon, 8 Aug 2022 22:46:07 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: <87909659-b7c5-fac9-7af1-868265631b51@libero.it> References: <87909659-b7c5-fac9-7af1-868265631b51@libero.it> Message-ID: <734dfbc6-d390-7472-9358-9fe4b1f02888@libero.it> Il 08/08/22 10:04, gian via User ha scritto: > Il 08/08/22 09:48, Safiur Rahman ha scritto: >> Hi >> >> What I have been doing is to send the file to the root folder of the >> web server. Then you can download it easily. >> >> E.g. in ubuntu >> >> $ sudo mkdir /var/www/html/docs >> $ sudo chmod -R a+rwx /var/www/html/docs >> >> Then copy to the folder >> ??Copy To "/var/www/html/docs" & File.Name() >> >> Then you can download using window.Open >> ?? WebForm.Exec("window.open('http://localhost/docs/ >> " &/ File.Name() & "'); ") >> >> -- >> Regards >> Safiur Rahman >> > > > Hi, > > Thank you very much for the welcome reply. > I will immediately refer your suggestion to our friend. Hi Safiur, here is what our friend reports: applying your suggestion, launching the procedure from webform the browser page, blocks itself. Launching it directly from a startup module (not generating the webpage but directly the file and the command to download it) the apache server gives this error: [Mon Aug 08 19:43:48.918779 2022] [cgid:error] [pid 1089:tid 140609880831744] [client ::1:42238] End of script output before headers: WebDemo.gambas Regards Gianluigi P.S. He also hopes that Benoit will provide an answer to Lee's question. :-) From benoit.minisini at gambas-basic.org Mon Aug 8 23:48:18 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 8 Aug 2022 23:48:18 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: References: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> Message-ID: <1d4ead32-5e6f-0461-e197-a60292e31b30@gambas-basic.org> Le 07/08/2022 ? 22:43, T Lee Davidson a ?crit?: > > I think there is a bug in the lib.js file that gb.web.gui uses. I am > using stable Gambas 3.17.3, and I see that lib.js is different in the > developer branch at the very spot where my browser developer console > reports a Syntax Error in that file: > Uncaught SyntaxError: unexpected token: ':' lib:0.0.1.js:1:19 > ??? answer http://localhost:8080/lib:0.0.1.js:275 > ??? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 > ??? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 > ??? answer http://localhost:8080/lib:0.0.1.js:295 > ??? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 > ??? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 > ??? send http://localhost:8080/lib:0.0.1.js:345 > ??? update http://localhost:8080/lib:0.0.1.js:355 > ??? onFocus http://localhost:8080/lib:0.0.1.js:431 > ??? answer http://localhost:8080/lib:0.0.1.js:275 > ??? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 > ??? (Async: EventHandlerNonNull) > ??? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 > ??? answer http://localhost:8080/lib:0.0.1.js:295 > ??? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 > ??? (Async: EventHandlerNonNull) > ??? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 > ??? send http://localhost:8080/lib:0.0.1.js:345 > ??? update http://localhost:8080/lib:0.0.1.js:355 > ??? onFocus http://localhost:8080/lib:0.0.1.js:431 > > > Beno?t, have you fixed this already? > Where is the bug exactly? I find nothing suspicious in the 'lib.js' of Gambas 3.17.3. -- Beno?t Minisini. From t.lee.davidson at gmail.com Tue Aug 9 03:49:09 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Mon, 8 Aug 2022 21:49:09 -0400 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: <1d4ead32-5e6f-0461-e197-a60292e31b30@gambas-basic.org> References: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> <1d4ead32-5e6f-0461-e197-a60292e31b30@gambas-basic.org> Message-ID: <6d62c16a-2c29-73e2-e84c-82f8cc284e5c@gmail.com> On 8/8/22 17:48, Benoit Minisini wrote: > Le 07/08/2022 ? 22:43, T Lee Davidson a ?crit?: >> >> I think there is a bug in the lib.js file that gb.web.gui uses. I am using stable Gambas 3.17.3, and I see that lib.js is >> different in the developer branch at the very spot where my browser developer console reports a Syntax Error in that file: >> Uncaught SyntaxError: unexpected token: ':' lib:0.0.1.js:1:19 >> ???? answer http://localhost:8080/lib:0.0.1.js:275 >> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >> ???? answer http://localhost:8080/lib:0.0.1.js:295 >> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >> ???? send http://localhost:8080/lib:0.0.1.js:345 >> ???? update http://localhost:8080/lib:0.0.1.js:355 >> ???? onFocus http://localhost:8080/lib:0.0.1.js:431 >> ???? answer http://localhost:8080/lib:0.0.1.js:275 >> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >> ???? (Async: EventHandlerNonNull) >> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >> ???? answer http://localhost:8080/lib:0.0.1.js:295 >> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >> ???? (Async: EventHandlerNonNull) >> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >> ???? send http://localhost:8080/lib:0.0.1.js:345 >> ???? update http://localhost:8080/lib:0.0.1.js:355 >> ???? onFocus http://localhost:8080/lib:0.0.1.js:431 >> >> >> Beno?t, have you fixed this already? >> > > Where is the bug exactly? I find nothing suspicious in the 'lib.js' of Gambas 3.17.3. I do not know where the bug is exactly; nor if it actually is a bug though it appears to be. What I do know is that the developer console stack trace shows it to occur in the 'answer' function in lib.js at line 275 which is: eval(expr); And, at the time of the error 'expr' has the value: "Content-Disposition: attachment;filename=\"data.csv\"" Javascript is obviously choking on the colon. And, I don't understand why we are commanding Javascript to evaluate text. The entire content of 'xhr.responseText' at the time of the error is: "0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\nContent-Disposition: attachment;filename=\"data.csv\"\r\nContent-type: text/javascript;charset=utf-8\r\nContent-Length: 22\r\n\ngw.needKeyPress = {}\r\n" In that, Content-type is set to "text/javascript" even though the project's Webform1.class sets it to "text/plain" on line 26: Response.SendFile(sPath, "text/plain") I don't know from where "text/javascript" comes, because I don't see it in either Response.SendFile nor in Response.GetContentTypeFrom. BTW, I am unable to use Print and Debug in the Webform1.class. I get no output in the IDE console (except for the expected "gb.httpd: bind 0.0.0.0 - Address already in use"). Is this normal? Do I need to set something in the Debug Configuration menu to enable printing to the IDE console? -- Lee From isafiur at gmail.com Tue Aug 9 07:16:37 2022 From: isafiur at gmail.com (Safiur Rahman) Date: Tue, 9 Aug 2022 11:01:37 +0545 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: References: Message-ID: I think this example might help you On Mon, Aug 8, 2022 at 1:33 PM Safiur Rahman wrote: > Hi > > What I have been doing is to send the file to the root folder of the web > server. Then you can download it easily. > > E.g. in ubuntu > > $ sudo mkdir /var/www/html/docs > $ sudo chmod -R a+rwx /var/www/html/docs > > Then copy to the folder > Copy To "/var/www/html/docs" & File.Name() > > Then you can download using window.Open > WebForm.Exec("window.open('http://localhost/docs/" &/ File.Name( file>) & "'); ") > > -- > Regards > Safiur Rahman > -- Regards Safiur Rahman -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: download.zip Type: application/zip Size: 15435 bytes Desc: not available URL: From bagoneo at libero.it Tue Aug 9 09:34:18 2022 From: bagoneo at libero.it (gian) Date: Tue, 9 Aug 2022 09:34:18 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: References: Message-ID: <54737df8-2ca2-b0fc-5bff-776818945856@libero.it> Il 09/08/22 07:16, Safiur Rahman ha scritto: > I think this example might help you > > On Mon, Aug 8, 2022 at 1:33 PM Safiur Rahman > wrote: > > Hi > > What I have been doing is to send the file to the root folder of the > web server. Then you can download it easily. > > E.g. in ubuntu > > $ sudo mkdir /var/www/html/docs > $ sudo chmod -R a+rwx /var/www/html/docs > > Then copy to the folder > ?Copy To "/var/www/html/docs" & File.Name() > > Then you can download using window.Open > ? WebForm.Exec("window.open('http://localhost/docs/ > " &/ File.Name() & "'); ") > > -- > Regards > Safiur Rahman > > > > -- > Regards > Safiur Rahman Hi Safiur, Cool. It works :-) I'll go right away to communicate this to our friend. Thank you very much for your helpfulness Regards Gianluigi From benoit.minisini at gambas-basic.org Tue Aug 9 12:47:33 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 9 Aug 2022 12:47:33 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: <6d62c16a-2c29-73e2-e84c-82f8cc284e5c@gmail.com> References: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> <1d4ead32-5e6f-0461-e197-a60292e31b30@gambas-basic.org> <6d62c16a-2c29-73e2-e84c-82f8cc284e5c@gmail.com> Message-ID: <113401c6-dd0f-3803-2ad2-7ce8985f7c96@gambas-basic.org> Le 09/08/2022 ? 03:49, T Lee Davidson a ?crit?: > On 8/8/22 17:48, Benoit Minisini wrote: >> Le 07/08/2022 ? 22:43, T Lee Davidson a ?crit?: >>> >>> I think there is a bug in the lib.js file that gb.web.gui uses. I am >>> using stable Gambas 3.17.3, and I see that lib.js is different in the >>> developer branch at the very spot where my browser developer console >>> reports a Syntax Error in that file: >>> Uncaught SyntaxError: unexpected token: ':' lib:0.0.1.js:1:19 >>> ???? answer http://localhost:8080/lib:0.0.1.js:275 >>> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >>> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >>> ???? answer http://localhost:8080/lib:0.0.1.js:295 >>> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >>> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >>> ???? send http://localhost:8080/lib:0.0.1.js:345 >>> ???? update http://localhost:8080/lib:0.0.1.js:355 >>> ???? onFocus http://localhost:8080/lib:0.0.1.js:431 >>> ???? answer http://localhost:8080/lib:0.0.1.js:275 >>> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >>> ???? (Async: EventHandlerNonNull) >>> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >>> ???? answer http://localhost:8080/lib:0.0.1.js:295 >>> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >>> ???? (Async: EventHandlerNonNull) >>> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >>> ???? send http://localhost:8080/lib:0.0.1.js:345 >>> ???? update http://localhost:8080/lib:0.0.1.js:355 >>> ???? onFocus http://localhost:8080/lib:0.0.1.js:431 >>> >>> >>> Beno?t, have you fixed this already? >>> >> >> Where is the bug exactly? I find nothing suspicious in the 'lib.js' of >> Gambas 3.17.3. > > I do not know where the bug is exactly; nor if it actually is a bug > though it appears to be. > > What I do know is that the developer console stack trace shows it to > occur in the 'answer' function in lib.js at line 275 which is: > eval(expr); > > And, at the time of the error 'expr' has the value: > "Content-Disposition: attachment;filename=\"data.csv\"" > > Javascript is obviously choking on the colon. And, I don't understand > why we are commanding Javascript to evaluate text. > > The entire content of 'xhr.responseText' at the time of the error is: > "0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\nContent-Disposition: > attachment;filename=\"data.csv\"\r\nContent-type: > text/javascript;charset=utf-8\r\nContent-Length: 22\r\n\ngw.needKeyPress > = {}\r\n" > In that, Content-type is set to "text/javascript" even though the > project's Webform1.class sets it to "text/plain" on line 26: > Response.SendFile(sPath, "text/plain") > > I don't know from where "text/javascript" comes, because I don't see it > in either Response.SendFile nor in Response.GetContentTypeFrom. > > > BTW, I am unable to use Print and Debug in the Webform1.class. I get no > output in the IDE console (except for the expected "gb.httpd: bind > 0.0.0.0 - Address already in use"). Is this normal? Do I need to set > something in the Debug Configuration menu to enable printing to the IDE > console? > > Apparently that does not come from 'gb.web.gui' (it does not send 'csv' files by itself) but from the project using it. Can you send the project? -- Beno?t Minisini. From bagoneo at libero.it Tue Aug 9 14:43:06 2022 From: bagoneo at libero.it (gian) Date: Tue, 9 Aug 2022 14:43:06 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: <113401c6-dd0f-3803-2ad2-7ce8985f7c96@gambas-basic.org> References: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> <1d4ead32-5e6f-0461-e197-a60292e31b30@gambas-basic.org> <6d62c16a-2c29-73e2-e84c-82f8cc284e5c@gmail.com> <113401c6-dd0f-3803-2ad2-7ce8985f7c96@gambas-basic.org> Message-ID: <49bab40f-2221-1a85-3e6a-e3df705d8097@libero.it> Il 09/08/22 12:47, Benoit Minisini ha scritto: > Le 09/08/2022 ? 03:49, T Lee Davidson a ?crit?: >> On 8/8/22 17:48, Benoit Minisini wrote: >>> Le 07/08/2022 ? 22:43, T Lee Davidson a ?crit?: >>>> >>>> I think there is a bug in the lib.js file that gb.web.gui uses. I am >>>> using stable Gambas 3.17.3, and I see that lib.js is different in >>>> the developer branch at the very spot where my browser developer >>>> console reports a Syntax Error in that file: >>>> Uncaught SyntaxError: unexpected token: ':' lib:0.0.1.js:1:19 >>>> ???? answer http://localhost:8080/lib:0.0.1.js:275 >>>> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >>>> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >>>> ???? answer http://localhost:8080/lib:0.0.1.js:295 >>>> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >>>> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >>>> ???? send http://localhost:8080/lib:0.0.1.js:345 >>>> ???? update http://localhost:8080/lib:0.0.1.js:355 >>>> ???? onFocus http://localhost:8080/lib:0.0.1.js:431 >>>> ???? answer http://localhost:8080/lib:0.0.1.js:275 >>>> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >>>> ???? (Async: EventHandlerNonNull) >>>> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >>>> ???? answer http://localhost:8080/lib:0.0.1.js:295 >>>> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >>>> ???? (Async: EventHandlerNonNull) >>>> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >>>> ???? send http://localhost:8080/lib:0.0.1.js:345 >>>> ???? update http://localhost:8080/lib:0.0.1.js:355 >>>> ???? onFocus http://localhost:8080/lib:0.0.1.js:431 >>>> >>>> >>>> Beno?t, have you fixed this already? >>>> >>> >>> Where is the bug exactly? I find nothing suspicious in the 'lib.js' >>> of Gambas 3.17.3. >> >> I do not know where the bug is exactly; nor if it actually is a bug >> though it appears to be. >> >> What I do know is that the developer console stack trace shows it to >> occur in the 'answer' function in lib.js at line 275 which is: >> eval(expr); >> >> And, at the time of the error 'expr' has the value: >> "Content-Disposition: attachment;filename=\"data.csv\"" >> >> Javascript is obviously choking on the colon. And, I don't understand >> why we are commanding Javascript to evaluate text. >> >> The entire content of 'xhr.responseText' at the time of the error is: >> "0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\n0;1;2;3;4;5;6;7;8;9;10\nContent-Disposition: >> attachment;filename=\"data.csv\"\r\nContent-type: >> text/javascript;charset=utf-8\r\nContent-Length: >> 22\r\n\ngw.needKeyPress = {}\r\n" >> In that, Content-type is set to "text/javascript" even though the >> project's Webform1.class sets it to "text/plain" on line 26: >> Response.SendFile(sPath, "text/plain") >> >> I don't know from where "text/javascript" comes, because I don't see >> it in either Response.SendFile nor in Response.GetContentTypeFrom. >> >> >> BTW, I am unable to use Print and Debug in the Webform1.class. I get >> no output in the IDE console (except for the expected "gb.httpd: bind >> 0.0.0.0 - Address already in use"). Is this normal? Do I need to set >> something in the Debug Configuration menu to enable printing to the >> IDE console? >> >> > > Apparently that does not come from 'gb.web.gui' (it does not send 'csv' > files by itself) but from the project using it. > > Can you send the project? > Hi Benoit, I believe Lee is using the project I attached at the beginning of the discussion. I am attaching it again Regards Gianluigi -------------- next part -------------- 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 OMYxjnGMY/y38H8A14X/kgB4AAA= From bagoneo at libero.it Tue Aug 9 15:10:16 2022 From: bagoneo at libero.it (gian) Date: Tue, 9 Aug 2022 15:10:16 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: <54737df8-2ca2-b0fc-5bff-776818945856@libero.it> References: <54737df8-2ca2-b0fc-5bff-776818945856@libero.it> Message-ID: <6d847d8e-4904-7426-b355-8fc3c971cd03@libero.it> Il 09/08/22 09:34, gian via User ha scritto: > > Hi Safiur, > > Cool. It works :-) > I'll go right away to communicate this to our friend. > > Thank you very much for your helpfulness Hi, friend from the Italian forum (Milio) thanks everyone for their concern. With Safiur's latest example he understood how he should do it and solved his problem. Very, very good ? A good day to all Gianluigi From t.lee.davidson at gmail.com Tue Aug 9 15:24:11 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Tue, 9 Aug 2022 09:24:11 -0400 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: <49bab40f-2221-1a85-3e6a-e3df705d8097@libero.it> References: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> <1d4ead32-5e6f-0461-e197-a60292e31b30@gambas-basic.org> <6d62c16a-2c29-73e2-e84c-82f8cc284e5c@gmail.com> <113401c6-dd0f-3803-2ad2-7ce8985f7c96@gambas-basic.org> <49bab40f-2221-1a85-3e6a-e3df705d8097@libero.it> Message-ID: <322b40f2-d861-dc80-7bc7-175042d7c1f9@gmail.com> On 8/9/22 08:43, gian via User wrote: > I believe Lee is using the project I attached at the beginning of the discussion. Yes, that is correct. -- Lee From bsteers4 at gmail.com Tue Aug 9 19:18:44 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 9 Aug 2022 18:18:44 +0100 Subject: [Gambas-user] Whoever wrote the English Report howto you owe me a hug (apparently) Message-ID: As asked for i corrected the grammar on the Reports howto. (will probably not show unless editing till tomorrow) http://gambaswiki.org/edit/howto/makereport You're welcome :) BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Wed Aug 10 11:54:56 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 10 Aug 2022 11:54:56 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: References: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> Message-ID: <899a8eef-4c6a-11d5-8073-9431b5a9d789@gambas-basic.org> Le 07/08/2022 ? 22:43, T Lee Davidson a ?crit?: > On 8/7/22 16:29, gian via User wrote: >> Hi, >> >> There is a friend from the Italian forum, who starting from the >> sources of the farm WebDemo program, try with this simple attached >> test generate with the server a CSV file, this works, then he would >> like from browser see download and save the file in the download >> folder, this does not happen. >> >> Can you help him? Thank you >> >> With best regards >> >> Gianluigi > > I think there is a bug in the lib.js file that gb.web.gui uses. I am > using stable Gambas 3.17.3, and I see that lib.js is different in the > developer branch at the very spot where my browser developer console > reports a Syntax Error in that file: > Uncaught SyntaxError: unexpected token: ':' lib:0.0.1.js:1:19 > ??? answer http://localhost:8080/lib:0.0.1.js:275 > ??? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 > ??? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 > ??? answer http://localhost:8080/lib:0.0.1.js:295 > ??? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 > ??? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 > ??? send http://localhost:8080/lib:0.0.1.js:345 > ??? update http://localhost:8080/lib:0.0.1.js:355 > ??? onFocus http://localhost:8080/lib:0.0.1.js:431 > ??? answer http://localhost:8080/lib:0.0.1.js:275 > ??? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 > ??? (Async: EventHandlerNonNull) > ??? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 > ??? answer http://localhost:8080/lib:0.0.1.js:295 > ??? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 > ??? (Async: EventHandlerNonNull) > ??? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 > ??? send http://localhost:8080/lib:0.0.1.js:345 > ??? update http://localhost:8080/lib:0.0.1.js:355 > ??? onFocus http://localhost:8080/lib:0.0.1.js:431 > > > Beno?t, have you fixed this already? > > OK, this is not a bug, but the code that is flawed. Your friend thought that a file can be sent from the server to the client by using 'Response.SendFile()' inside an event handler. 1) First mistake: a file download is initiated by the client, never by the server. 2) Second mistake: 'Response.SendFile()' works only if the client initiated a download request, i.e. if it expects that kind of answer. This is not the case when you are running an event handler in 'gb.web.gui', where the communication follows a specific protocol, that you can't hijack with lower level functions like 'Response.Send()'. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Wed Aug 10 12:53:17 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 10 Aug 2022 11:53:17 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE Message-ID: You know how you can put the following in a custom control.. *Public Const _Properties As String = "*,StringArray"* *Property StringArray As String[] Use $aStringArray* Then in the IDE form designer you'll get the StringArray property and get an editor to insert strings to the list. If i use ANY other type like Integer[] or Float[] then it does not work the same. i just get a combobox with "none" to select, and if i do select none i then have to manually edit the .form file to remove the def as it raises an error. Could the form designer also handle other types? Integer[] and Float[] shouldn't be too hard to handle. The existing string[] editor could be used then the items converted to their respective type array. Would open up a few things for me. I'm trying to add gradients to a control and want to handle the Colors[] and StopPoints[] in the IDE Can some method be added to a Custom control class that the IDE can use to pop up our own editor window ? Something like this maybe?.. *Public Const _Properties As String = "*,IntegerArray{IntList()}"* *Private Sub IntList() As Integer[]* * FGetIntegers.ShowModal()* * Return FGetIntegers.List* *End* then FIntegers pops open my own list editor Is something like this already possible ? Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Wed Aug 10 12:53:52 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 10 Aug 2022 12:53:52 +0200 Subject: [Gambas-user] Debugging inside components or libraries In-Reply-To: <72fbb7d5e0b17d6f29fef13e8dbc3461665c636d.camel@fen-net.de> References: <58f2f409-7c85-6afe-f844-1cb6fb7b2b65@gambas-basic.org> <3632fb1861265436c6e6f6cefbec4a9f30cef4e2.camel@fen-net.de> <72fbb7d5e0b17d6f29fef13e8dbc3461665c636d.camel@fen-net.de> Message-ID: Le 02/08/2022 ? 22:10, Karl Reinl a ?crit?: > Am Dienstag, dem 02.08.2022 um 12:35 +0200 schrieb Benoit Minisini: >>> >> It does not work with libraries? >>> > > Salut Beno?t, > > I can debug components witch are used in the library, but not the > library it self (talk about my own libraries). > And I think it would also be nice to have 2 switches, one for components and one for the private libraries, if that is possible. > In the last commit, I allowed to bypass the name check when locating library or component projects, and successfully debugged my projects using libraries inside them. So if you still have problems, you must give more details about them than just "I can't". Regards, -- Beno?t Minisini. From bagoneo at libero.it Wed Aug 10 13:21:10 2022 From: bagoneo at libero.it (gian) Date: Wed, 10 Aug 2022 13:21:10 +0200 Subject: [Gambas-user] Help for gb.web.gui In-Reply-To: <899a8eef-4c6a-11d5-8073-9431b5a9d789@gambas-basic.org> References: <5bd1defb-958e-bf2f-992f-621225141c10@libero.it> <899a8eef-4c6a-11d5-8073-9431b5a9d789@gambas-basic.org> Message-ID: <345d6e16-806a-2a62-353e-7069a72c55d9@libero.it> Il 10/08/22 11:54, Benoit Minisini ha scritto: > Le 07/08/2022 ? 22:43, T Lee Davidson a ?crit?: >> On 8/7/22 16:29, gian via User wrote: >>> Hi, >>> >>> There is a friend from the Italian forum, who starting from the >>> sources of the farm WebDemo program, try with this simple attached >>> test generate with the server a CSV file, this works, then he would >>> like from browser see download and save the file in the download >>> folder, this does not happen. >>> >>> Can you help him? Thank you >>> >>> With best regards >>> >>> Gianluigi >> >> I think there is a bug in the lib.js file that gb.web.gui uses. I am >> using stable Gambas 3.17.3, and I see that lib.js is different in the >> developer branch at the very spot where my browser developer console >> reports a Syntax Error in that file: >> Uncaught SyntaxError: unexpected token: ':' lib:0.0.1.js:1:19 >> ???? answer http://localhost:8080/lib:0.0.1.js:275 >> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >> ???? answer http://localhost:8080/lib:0.0.1.js:295 >> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >> ???? send http://localhost:8080/lib:0.0.1.js:345 >> ???? update http://localhost:8080/lib:0.0.1.js:355 >> ???? onFocus http://localhost:8080/lib:0.0.1.js:431 >> ???? answer http://localhost:8080/lib:0.0.1.js:275 >> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >> ???? (Async: EventHandlerNonNull) >> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >> ???? answer http://localhost:8080/lib:0.0.1.js:295 >> ???? onreadystatechange http://localhost:8080/lib:0.0.1.js:324 >> ???? (Async: EventHandlerNonNull) >> ???? sendNewCommand http://localhost:8080/lib:0.0.1.js:324 >> ???? send http://localhost:8080/lib:0.0.1.js:345 >> ???? update http://localhost:8080/lib:0.0.1.js:355 >> ???? onFocus http://localhost:8080/lib:0.0.1.js:431 >> >> >> Beno?t, have you fixed this already? >> >> > > OK, this is not a bug, but the code that is flawed. > > Your friend thought that a file can be sent from the server to the > client by using 'Response.SendFile()' inside an event handler. > > 1) First mistake: a file download is initiated by the client, never by > the server. > > 2) Second mistake: 'Response.SendFile()' works only if the client > initiated a download request, i.e. if it expects that kind of answer. > This is not the case when you are running an event handler in > 'gb.web.gui', where the communication follows a specific protocol, that > you can't hijack with lower level functions like 'Response.Send()'. > > Regards, > Hi Benoit, I thank you very much for the clarification which I am going to refer to our friend. I wish you a good day Gianluigi From bsteers4 at gmail.com Wed Aug 10 14:13:48 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 10 Aug 2022 13:13:48 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: Message-ID: On Wed, 10 Aug 2022 at 11:53, Bruce Steers wrote: > You know how you can put the following in a custom control.. > > *Public Const _Properties As String = "*,StringArray"* > > *Property StringArray As String[] Use $aStringArray* > > Then in the IDE form designer you'll get the StringArray property and get > an editor to insert strings to the list. > > If i use ANY other type like Integer[] or Float[] then it does not work > the same. i just get a combobox with "none" to select, and if i do select > none i then have to manually edit the .form file to remove the def as it > raises an error. > > Could the form designer also handle other types? > Integer[] and Float[] shouldn't be too hard to handle. > The existing string[] editor could be used then the items converted to > their respective type array. > > Would open up a few things for me. > > I'm trying to add gradients to a control and want to handle the Colors[] > and StopPoints[] in the IDE > > Can some method be added to a Custom control class that the IDE can use to > pop up our own editor window ? > Something like this maybe?.. > > *Public Const _Properties As String = "*,IntegerArray{IntList()}"* > > *Private Sub IntList() As Integer[]* > > * FGetIntegers.ShowModal()* > > * Return FGetIntegers.List* > > *End* > > then FIntegers pops open my own list editor > > Is something like this already possible ? > > Respects > BruceS > I'm thinking my second idea of letting us create a custom property editor window that could return any type required would be a lot more useful than just making Integer[] Float[] also work in the form designer. Possibly even less code as you'd just have to check for () in the _Properties def "*, MyPropertyName{type_is_method()}" then set the property edit button in the IDE to run the method and pass it's return data straight to the property. Hmm, When i put it that way it does sound like a fairly simple addition. I might just have a browse through the IDE code and see if i can find the way. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From adamnt42 at gmail.com Wed Aug 10 14:49:06 2022 From: adamnt42 at gmail.com (bb) Date: Wed, 10 Aug 2022 22:19:06 +0930 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: Message-ID: On Wed, 2022-08-10 at 13:13 +0100, Bruce Steers wrote: > On Wed, 10 Aug 2022 at 11:53, Bruce Steers > wrote: > > > You know how you can put the following in a custom control.. > > > > *Public Const _Properties As String = "*,StringArray"* > > > > *Property StringArray As String[] Use $aStringArray* > > > > Then in the IDE form designer you'll get the StringArray property > > and get > > an editor to insert strings to the list. > > > > If i use ANY other type like Integer[] or Float[] then it does not > > work > > the same. i just get a combobox with "none" to select, and if i do > > select > > none i then have to manually edit the .form file to remove the def > > as it > > raises an error. > > > > Could the form designer also handle other types? > > Integer[] and Float[] shouldn't be too hard to handle. > > The existing string[] editor could be used then the items converted > > to > > their respective type array. > > > > Would open up a few things for me. > > > > I'm trying to add gradients to a control and want to handle the > > Colors[] > > and StopPoints[] in the IDE > > > > Can some method be added to a Custom control class that the IDE can > > use to > > pop up our own editor window ? > > Something like this maybe?.. > > > > *Public Const _Properties As String = "*,IntegerArray{IntList()}"* > > > > *Private Sub IntList() As Integer[]* > > > > *? FGetIntegers.ShowModal()* > > > > *? Return FGetIntegers.List* > > > > *End* > > > > then FIntegers pops open my own list editor > > > > Is something like this already possible ? > > > > Respects > > BruceS > > > > I'm thinking my second idea of letting us create a custom property > editor > window that could return any type required would be a lot more useful > than > just making Integer[] Float[] also work in the form designer. > Possibly even less code as you'd just have to check for () in the > _Properties def "*, MyPropertyName{type_is_method()}" then set the > property > edit button in the IDE to run the method and pass it's return data > straight > to the property. > > Hmm, When i put it that way it does sound like a fairly simple > addition.? I > might just have a browse through the IDE code and see if i can find > the way. > > Respects > BruceS > > ----[ http://gambaswiki.org/wiki/doc/netiquette?]---- Have a look at the "special" property editors used in the Report designer. Although they are implemented inside the IDE, it could give you the points at which you'd need to apply some surgery to the IDE. I did something like this years ago that let me design the property editor inside the component rather than imposing changes on the IDE. I just had a look at where I knew that I had used it in one component and unfortunately I have disabled the said code and removed the necessary changes to the IDE - sad as it did work a treat. My use was far above what you are trying but I bit on the "custom property editor".? >From memory the changes in the IDE were not that extravagant, the tricky bit is getting the IDE to load the component and look for the property editor in there. hth b From benoit.minisini at gambas-basic.org Wed Aug 10 15:07:34 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 10 Aug 2022 15:07:34 +0200 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: Message-ID: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> Le 10/08/2022 ? 14:49, bb a ?crit?: > On Wed, 2022-08-10 at 13:13 +0100, Bruce Steers wrote: >> On Wed, 10 Aug 2022 at 11:53, Bruce Steers >> wrote: >> >>> You know how you can put the following in a custom control.. >>> >>> *Public Const _Properties As String = "*,StringArray"* >>> >>> *Property StringArray As String[] Use $aStringArray* >>> >>> Then in the IDE form designer you'll get the StringArray property >>> and get >>> an editor to insert strings to the list. >>> >>> If i use ANY other type like Integer[] or Float[] then it does not >>> work >>> the same. i just get a combobox with "none" to select, and if i do >>> select >>> none i then have to manually edit the .form file to remove the def >>> as it >>> raises an error. >>> >>> Could the form designer also handle other types? >>> Integer[] and Float[] shouldn't be too hard to handle. >>> The existing string[] editor could be used then the items converted >>> to >>> their respective type array. >>> >>> Would open up a few things for me. >>> >>> I'm trying to add gradients to a control and want to handle the >>> Colors[] >>> and StopPoints[] in the IDE >>> >>> Can some method be added to a Custom control class that the IDE can >>> use to >>> pop up our own editor window ? >>> Something like this maybe?.. >>> >>> *Public Const _Properties As String = "*,IntegerArray{IntList()}"* >>> >>> *Private Sub IntList() As Integer[]* >>> >>> *? FGetIntegers.ShowModal()* >>> >>> *? Return FGetIntegers.List* >>> >>> *End* >>> >>> then FIntegers pops open my own list editor >>> >>> Is something like this already possible ? >>> >>> Respects >>> BruceS >>> >> >> I'm thinking my second idea of letting us create a custom property >> editor >> window that could return any type required would be a lot more useful >> than >> just making Integer[] Float[] also work in the form designer. >> Possibly even less code as you'd just have to check for () in the >> _Properties def "*, MyPropertyName{type_is_method()}" then set the >> property >> edit button in the IDE to run the method and pass it's return data >> straight >> to the property. >> >> Hmm, When i put it that way it does sound like a fairly simple >> addition.? I >> might just have a browse through the IDE code and see if i can find >> the way. >> >> Respects >> BruceS >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette?]---- > Have a look at the "special" property editors used in the Report > designer. Although they are implemented inside the IDE, it could give > you the points at which you'd need to apply some surgery to the IDE. > > I did something like this years ago that let me design the property > editor inside the component rather than imposing changes on the IDE. > I just had a look at where I knew that I had used it in one component > and unfortunately I have disabled the said code and removed the > necessary changes to the IDE - sad as it did work a treat. > > My use was far above what you are trying but I bit on the "custom > property editor". > > From memory the changes in the IDE were not that extravagant, the > tricky bit is getting the IDE to load the component and look for the > property editor in there. > > hth > b > Mmm... No, thanks. I didn't want the IDE to load arbitrary components, and I still have the same opinion (for security reasons at least). This is why all property types are directly handled by the IDE form editor. As for the type of property you want to implement, are you sure that defining a gradient from the form editor is really worth it in your context? A brush property type has been implemented for the Report forms, but it's because having a visual representation of what you are printing may be useful. It handles all brush types (and so gradients), even if printing gradients should be forbidden by the law of good taste. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Wed Aug 10 15:46:15 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 10 Aug 2022 14:46:15 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> Message-ID: On Wed, 10 Aug 2022 at 14:08, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 10/08/2022 ? 14:49, bb a ?crit : > > On Wed, 2022-08-10 at 13:13 +0100, Bruce Steers wrote: > >> On Wed, 10 Aug 2022 at 11:53, Bruce Steers > >> wrote: > >> > >>> You know how you can put the following in a custom control.. > >>> > >>> *Public Const _Properties As String = "*,StringArray"* > >>> > >>> *Property StringArray As String[] Use $aStringArray* > >>> > >>> Then in the IDE form designer you'll get the StringArray property > >>> and get > >>> an editor to insert strings to the list. > >>> > >>> If i use ANY other type like Integer[] or Float[] then it does not > >>> work > >>> the same. i just get a combobox with "none" to select, and if i do > >>> select > >>> none i then have to manually edit the .form file to remove the def > >>> as it > >>> raises an error. > >>> > >>> Could the form designer also handle other types? > >>> Integer[] and Float[] shouldn't be too hard to handle. > >>> The existing string[] editor could be used then the items converted > >>> to > >>> their respective type array. > >>> > >>> Would open up a few things for me. > >>> > >>> I'm trying to add gradients to a control and want to handle the > >>> Colors[] > >>> and StopPoints[] in the IDE > >>> > >>> Can some method be added to a Custom control class that the IDE can > >>> use to > >>> pop up our own editor window ? > >>> Something like this maybe?.. > >>> > >>> *Public Const _Properties As String = "*,IntegerArray{IntList()}"* > >>> > >>> *Private Sub IntList() As Integer[]* > >>> > >>> * FGetIntegers.ShowModal()* > >>> > >>> * Return FGetIntegers.List* > >>> > >>> *End* > >>> > >>> then FIntegers pops open my own list editor > >>> > >>> Is something like this already possible ? > >>> > >>> Respects > >>> BruceS > >>> > >> > >> I'm thinking my second idea of letting us create a custom property > >> editor > >> window that could return any type required would be a lot more useful > >> than > >> just making Integer[] Float[] also work in the form designer. > >> Possibly even less code as you'd just have to check for () in the > >> _Properties def "*, MyPropertyName{type_is_method()}" then set the > >> property > >> edit button in the IDE to run the method and pass it's return data > >> straight > >> to the property. > >> > >> Hmm, When i put it that way it does sound like a fairly simple > >> addition. I > >> might just have a browse through the IDE code and see if i can find > >> the way. > >> > >> Respects > >> BruceS > >> > >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Have a look at the "special" property editors used in the Report > > designer. Although they are implemented inside the IDE, it could give > > you the points at which you'd need to apply some surgery to the IDE. > > > > I did something like this years ago that let me design the property > > editor inside the component rather than imposing changes on the IDE. > > I just had a look at where I knew that I had used it in one component > > and unfortunately I have disabled the said code and removed the > > necessary changes to the IDE - sad as it did work a treat. > > > > My use was far above what you are trying but I bit on the "custom > > property editor". > > > > From memory the changes in the IDE were not that extravagant, the > > tricky bit is getting the IDE to load the component and look for the > > property editor in there. > > > > hth > > b > > > > Mmm... No, thanks. I didn't want the IDE to load arbitrary components, > and I still have the same opinion (for security reasons at least). > > This is why all property types are directly handled by the IDE form editor. > > As for the type of property you want to implement, are you sure that > defining a gradient from the form editor is really worth it in your > context? > > A brush property type has been implemented for the Report forms, but > it's because having a visual representation of what you are printing may > be useful. It handles all brush types (and so gradients), even if > printing gradients should be forbidden by the law of good taste. > > Regards, > > -- > Beno?t Minisini. > Yes it handles all types but not all array types just String[], making it a bit limited. For my context it is kinda really wanted, After my recent education in gradients i'm upgrading my GradientButton.class to handle multiple gradient points not just 2 and use the Paint.LinearGradient() method not the one i made before i discovered the Paint version.. https://forum.gambas.one/download/file.php?id=1128 In the above image I am Implementing multiple colourstops by using String[] then converting gambas Color names (using color integer strings was not really possible to use color selector gui so i kept it simple and use existing color names) and working out the StopPoint float value automatically by division of the number of values. eg. GradientButton5.ColorNames = ["Green", "Blue", "Yellow"] then in the _Draw() event... Dim Cols As Integer[] = [], Points As Float[] = [] If $aColorNames Then Dim fOnePos As Float = 1 / $aColorNames.Max Dim fPos As Float = 0, iCol As Integer For i As Integer = 0 To $aColorNames.Max Try iCol = Object.GetProperty(Color, $aColorNames[i]) If Error Then Dim sErr As String = Error.Text Dim sCols As String[] = GetGambasColourNames() Error.Raise($aColorNames[i] & "\n" & sErr & "\nUse only gambas color names\n" & sCols.Sort().Join(", ")) Endif Cols.Add(iCol) Points.Add(fPos) fPos += fOnePos Next Else ' use defaults Cols = [Col1, Col2] Points = [0, 1] Endif Because in the IDE String[] is all i really have to work with for an array type property so i can set the string list. Looking at the ide code i'm wondering if Field,Fields type could be used for my needs? Could you implement Array type? like my first idea of using the existing String[] editor to edit then converting the strings to respective types? And possibly a more complicated Color[] type to set multiple colors? Dang, in my head this just got a lot more complicated :-\ Many thanks BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Wed Aug 10 16:25:17 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 10 Aug 2022 16:25:17 +0200 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> Message-ID: <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Le 10/08/2022 ? 15:46, Bruce Steers a ?crit?: > > > On Wed, 10 Aug 2022 at 14:08, Benoit Minisini > > wrote: > > Le 10/08/2022 ? 14:49, bb a ?crit?: > > On Wed, 2022-08-10 at 13:13 +0100, Bruce Steers wrote: > >> On Wed, 10 Aug 2022 at 11:53, Bruce Steers > > >> wrote: > >> > >>> You know how you can put the following in a custom control.. > >>> > >>> *Public Const _Properties As String = "*,StringArray"* > >>> > >>> *Property StringArray As String[] Use $aStringArray* > >>> > >>> Then in the IDE form designer you'll get the StringArray property > >>> and get > >>> an editor to insert strings to the list. > >>> > >>> If i use ANY other type like Integer[] or Float[] then it does not > >>> work > >>> the same. i just get a combobox with "none" to select, and if i do > >>> select > >>> none i then have to manually edit the .form file to remove the def > >>> as it > >>> raises an error. > >>> > >>> Could the form designer also handle other types? > >>> Integer[] and Float[] shouldn't be too hard to handle. > >>> The existing string[] editor could be used then the items converted > >>> to > >>> their respective type array. > >>> > >>> Would open up a few things for me. > >>> > >>> I'm trying to add gradients to a control and want to handle the > >>> Colors[] > >>> and StopPoints[] in the IDE > >>> > >>> Can some method be added to a Custom control class that the IDE can > >>> use to > >>> pop up our own editor window ? > >>> Something like this maybe?.. > >>> > >>> *Public Const _Properties As String = "*,IntegerArray{IntList()}"* > >>> > >>> *Private Sub IntList() As Integer[]* > >>> > >>> *? FGetIntegers.ShowModal()* > >>> > >>> *? Return FGetIntegers.List* > >>> > >>> *End* > >>> > >>> then FIntegers pops open my own list editor > >>> > >>> Is something like this already possible ? > >>> > >>> Respects > >>> BruceS > >>> > >> > >> I'm thinking my second idea of letting us create a custom property > >> editor > >> window that could return any type required would be a lot more > useful > >> than > >> just making Integer[] Float[] also work in the form designer. > >> Possibly even less code as you'd just have to check for () in the > >> _Properties def "*, MyPropertyName{type_is_method()}" then set the > >> property > >> edit button in the IDE to run the method and pass it's return data > >> straight > >> to the property. > >> > >> Hmm, When i put it that way it does sound like a fairly simple > >> addition.? I > >> might just have a browse through the IDE code and see if i can find > >> the way. > >> > >> Respects > >> BruceS > >> > >> ----[ http://gambaswiki.org/wiki/doc/netiquette > ?]---- > > Have a look at the "special" property editors used in the Report > > designer. Although they are implemented inside the IDE, it could give > > you the points at which you'd need to apply some surgery to the IDE. > > > > I did something like this years ago that let me design the property > > editor inside the component rather than imposing changes on the IDE. > > I just had a look at where I knew that I had used it in one component > > and unfortunately I have disabled the said code and removed the > > necessary changes to the IDE - sad as it did work a treat. > > > > My use was far above what you are trying but I bit on the "custom > > property editor". > > > >? From memory the changes in the IDE were not that extravagant, the > > tricky bit is getting the IDE to load the component and look for the > > property editor in there. > > > > hth > > b > > > > Mmm... No, thanks. I didn't want the IDE to load arbitrary components, > and I still have the same opinion (for security reasons at least). > > This is why all property types are directly handled by the IDE form > editor. > > As for the type of property you want to implement, are you sure that > defining a gradient from the form editor is really worth it in your > context? > > A brush property type has been implemented for the Report forms, but > it's because having a visual representation of what you are printing > may > be useful. It handles all brush types (and so gradients), even if > printing gradients should be forbidden by the law of good taste. > > Regards, > > -- > Beno?t Minisini. > > > Yes it handles all types but not all array types just String[], making > it a bit limited. > > For my context it is kinda really wanted, > After my recent education in gradients i'm upgrading my > GradientButton.class to handle multiple gradient points not just 2 and > use the Paint.LinearGradient() method not the one i made before i > discovered the Paint version.. > https://forum.gambas.one/download/file.php?id=1128 > > > In the above image I am Implementing multiple colourstops by using > String[] then converting gambas Color names (using color integer strings > was not really possible to use color selector gui so i kept it simple > and use existing color names)? and working out the StopPoint float value > automatically by division of the number of values. > eg. > GradientButton5.ColorNames = ["Green", "Blue", "Yellow"] > > then in the _Draw() event... > ? Dim Cols As Integer[] = [], Points As Float[] = [] > > ? If $aColorNames Then > ? ? Dim fOnePos As Float = 1 / $aColorNames.Max > ? ? Dim fPos As Float = 0, iCol As Integer > > ? ? For i As Integer = 0 To $aColorNames.Max > ? ? ? Try iCol = Object.GetProperty(Color, $aColorNames[i]) > ? ? ? If Error Then > ? ? ? ?Dim sErr As String = Error.Text > ? ? ? ?Dim sCols As String[] = GetGambasColourNames() > ? ? ? ?Error.Raise($aColorNames[i] & "\n" & sErr & "\nUse only gambas > color names\n" & sCols.Sort().Join(", ")) > ? ? ? Endif > > ? ? ? Cols.Add(iCol) > ? ? ? Points.Add(fPos) > ? ? ? fPos += fOnePos > ? ? Next > ? Else? ' use defaults > ? ? Cols = [Col1, Col2] > ? ? Points = [0, 1] > ? Endif > > Because in the IDE String[] is all i really have to work with for an > array type property so i can set the string list. > > Looking at the ide code i'm wondering if Field,Fields type could be used > for my needs? > > Could you implement Array type? like my first idea of using the existing > String[] editor to edit then converting the strings to respective types? > And possibly a more complicated Color[] type to set multiple colors? > Dang, in my head this just got a lot more complicated :-\ > > > Many thanks > BruceS > Let's put the usefullness of flashy gradient buttons aside. What you would need is actually a brush, not a gradient. The gradient is just a particular case of a brush. And editing a brush (or any other complex property) in the form editor needs: 1) An IDE internal string representation of the property. 2) A method in the Gambas component that converts that string into the real object, making that internal string representation part of the public API. 3) The corresponding property editor in the IDE. 4) The code that deals with the property kind in the form loading routine, saving routine, setting and getting property routines. If you don't understand, look how the Font property kind is handled. Implementing all that is not a five minutes job (hopefully the brush editor already exists in some way for the Report forms), and I usually do it when it's really useful. Anyway I can't do it now. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Wed Aug 10 18:19:32 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 10 Aug 2022 17:19:32 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Wed, 10 Aug 2022 at 15:26, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 10/08/2022 ? 15:46, Bruce Steers a ?crit : > > > > > > On Wed, 10 Aug 2022 at 14:08, Benoit Minisini > > > > wrote: > > > > Le 10/08/2022 ? 14:49, bb a ?crit : > > > On Wed, 2022-08-10 at 13:13 +0100, Bruce Steers wrote: > > >> On Wed, 10 Aug 2022 at 11:53, Bruce Steers > > > > >> wrote: > > >> > > >>> You know how you can put the following in a custom control.. > > >>> > > >>> *Public Const _Properties As String = "*,StringArray"* > > >>> > > >>> *Property StringArray As String[] Use $aStringArray* > > >>> > > >>> Then in the IDE form designer you'll get the StringArray > property > > >>> and get > > >>> an editor to insert strings to the list. > > >>> > > >>> If i use ANY other type like Integer[] or Float[] then it does > not > > >>> work > > >>> the same. i just get a combobox with "none" to select, and if i > do > > >>> select > > >>> none i then have to manually edit the .form file to remove the > def > > >>> as it > > >>> raises an error. > > >>> > > >>> Could the form designer also handle other types? > > >>> Integer[] and Float[] shouldn't be too hard to handle. > > >>> The existing string[] editor could be used then the items > converted > > >>> to > > >>> their respective type array. > > >>> > > >>> Would open up a few things for me. > > >>> > > >>> I'm trying to add gradients to a control and want to handle the > > >>> Colors[] > > >>> and StopPoints[] in the IDE > > >>> > > >>> Can some method be added to a Custom control class that the IDE > can > > >>> use to > > >>> pop up our own editor window ? > > >>> Something like this maybe?.. > > >>> > > >>> *Public Const _Properties As String = > "*,IntegerArray{IntList()}"* > > >>> > > >>> *Private Sub IntList() As Integer[]* > > >>> > > >>> * FGetIntegers.ShowModal()* > > >>> > > >>> * Return FGetIntegers.List* > > >>> > > >>> *End* > > >>> > > >>> then FIntegers pops open my own list editor > > >>> > > >>> Is something like this already possible ? > > >>> > > >>> Respects > > >>> BruceS > > >>> > > >> > > >> I'm thinking my second idea of letting us create a custom > property > > >> editor > > >> window that could return any type required would be a lot more > > useful > > >> than > > >> just making Integer[] Float[] also work in the form designer. > > >> Possibly even less code as you'd just have to check for () in the > > >> _Properties def "*, MyPropertyName{type_is_method()}" then set > the > > >> property > > >> edit button in the IDE to run the method and pass it's return > data > > >> straight > > >> to the property. > > >> > > >> Hmm, When i put it that way it does sound like a fairly simple > > >> addition. I > > >> might just have a browse through the IDE code and see if i can > find > > >> the way. > > >> > > >> Respects > > >> BruceS > > >> > > >> ----[ http://gambaswiki.org/wiki/doc/netiquette > > ]---- > > > Have a look at the "special" property editors used in the Report > > > designer. Although they are implemented inside the IDE, it could > give > > > you the points at which you'd need to apply some surgery to the > IDE. > > > > > > I did something like this years ago that let me design the > property > > > editor inside the component rather than imposing changes on the > IDE. > > > I just had a look at where I knew that I had used it in one > component > > > and unfortunately I have disabled the said code and removed the > > > necessary changes to the IDE - sad as it did work a treat. > > > > > > My use was far above what you are trying but I bit on the "custom > > > property editor". > > > > > > From memory the changes in the IDE were not that extravagant, the > > > tricky bit is getting the IDE to load the component and look for > the > > > property editor in there. > > > > > > hth > > > b > > > > > > > Mmm... No, thanks. I didn't want the IDE to load arbitrary > components, > > and I still have the same opinion (for security reasons at least). > > > > This is why all property types are directly handled by the IDE form > > editor. > > > > As for the type of property you want to implement, are you sure that > > defining a gradient from the form editor is really worth it in your > > context? > > > > A brush property type has been implemented for the Report forms, but > > it's because having a visual representation of what you are printing > > may > > be useful. It handles all brush types (and so gradients), even if > > printing gradients should be forbidden by the law of good taste. > > > > Regards, > > > > -- > > Beno?t Minisini. > > > > > > Yes it handles all types but not all array types just String[], making > > it a bit limited. > > > > For my context it is kinda really wanted, > > After my recent education in gradients i'm upgrading my > > GradientButton.class to handle multiple gradient points not just 2 and > > use the Paint.LinearGradient() method not the one i made before i > > discovered the Paint version.. > > https://forum.gambas.one/download/file.php?id=1128 > > > > > > In the above image I am Implementing multiple colourstops by using > > String[] then converting gambas Color names (using color integer strings > > was not really possible to use color selector gui so i kept it simple > > and use existing color names) and working out the StopPoint float value > > automatically by division of the number of values. > > eg. > > GradientButton5.ColorNames = ["Green", "Blue", "Yellow"] > > > > then in the _Draw() event... > > Dim Cols As Integer[] = [], Points As Float[] = [] > > > > If $aColorNames Then > > Dim fOnePos As Float = 1 / $aColorNames.Max > > Dim fPos As Float = 0, iCol As Integer > > > > For i As Integer = 0 To $aColorNames.Max > > Try iCol = Object.GetProperty(Color, $aColorNames[i]) > > If Error Then > > Dim sErr As String = Error.Text > > Dim sCols As String[] = GetGambasColourNames() > > Error.Raise($aColorNames[i] & "\n" & sErr & "\nUse only gambas > > color names\n" & sCols.Sort().Join(", ")) > > Endif > > > > Cols.Add(iCol) > > Points.Add(fPos) > > fPos += fOnePos > > Next > > Else ' use defaults > > Cols = [Col1, Col2] > > Points = [0, 1] > > Endif > > > > Because in the IDE String[] is all i really have to work with for an > > array type property so i can set the string list. > > > > Looking at the ide code i'm wondering if Field,Fields type could be used > > for my needs? > > > > Could you implement Array type? like my first idea of using the existing > > String[] editor to edit then converting the strings to respective types? > > And possibly a more complicated Color[] type to set multiple colors? > > Dang, in my head this just got a lot more complicated :-\ > > > > > > Many thanks > > BruceS > > > > Let's put the usefullness of flashy gradient buttons aside. What you > would need is actually a brush, not a gradient. The gradient is just a > particular case of a brush. > > And editing a brush (or any other complex property) in the form editor > needs: > > 1) An IDE internal string representation of the property. > > 2) A method in the Gambas component that converts that string into the > real object, making that internal string representation part of the > public API. > > 3) The corresponding property editor in the IDE. > > 4) The code that deals with the property kind in the form loading > routine, saving routine, setting and getting property routines. > > If you don't understand, look how the Font property kind is handled. > > Implementing all that is not a five minutes job (hopefully the brush > editor already exists in some way for the Report forms), and I usually > do it when it's really useful. Anyway I can't do it now. > > Regards, > > -- > Beno?t Minisini No worries Ben, thanks for the info. I'm currently playing with the idea of being able to use any already supported property type like _Properties = "*,MyColor{Color}" for example but in array mode using the existing single property editing routines. something like _Properties = "*,MyColor{Array[Color]}" So a single extra form like FList.form (I called it FArrayChooser) that adds entries on clicking "Insert" like normally clicking a single "Color" property, uses FProperty.class txtProperty_Click() routines to open the relevant chooser, this one should be able to handle all the existing handled types using the existing routines/editing dialogs from FProperty.txtProperty_Click() but in array mode and show the values in string form. Again thanks for the info/pointers , yes this is useful to me more than you i guess. I'll just stick with the string conversion for now. ooh, Hang on ,, i just discovered Ctrl-Shift-C pops open a color selector in the IDE :) lol That changes things, i guess i can add info to use a GradientButton.AddColour() method using code and use Ctrl-Shift-C to easily get the color value :) haha, i love gambas, there's always a way :) Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Fri Aug 12 15:57:32 2022 From: mbelmonte at belmotek.net (Martin) Date: Fri, 12 Aug 2022 15:57:32 +0200 Subject: [Gambas-user] byte to bit & bit to byte Message-ID: Hello. As you know to convert a byte number into bits is done like this: Bin(254) The result is: 11111110 But how do you get 254 from 11111110 ? Regards From vuott at tutanota.com Fri Aug 12 16:22:56 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Fri, 12 Aug 2022 16:22:56 +0200 (CEST) Subject: [Gambas-user] byte to bit & bit to byte In-Reply-To: References: Message-ID: ...maybe: Public Sub Main() ? Dim binario As String ? Dim num As Long?? ' or other primitive datatype ? Dim pos As Byte ? ? binario = "11111110" ?? ? Repeat ??? num += CLong(Val(Mid(binario, Len(binario) - pos, 1)) * (2 ^ pos)) ??? Inc pos ? Until pos = Len(binario) ?? ? Print num ? End 12 ago 2022, 15:57 da mbelmonte at belmotek.net: > Hello. > As you know to convert a byte number into bits is done like this: > Bin(254) > The result is: > 11111110 > > But how do you get 254 from 11111110 ? > > Regards > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From olivier.cruilles at yahoo.fr Fri Aug 12 16:44:54 2022 From: olivier.cruilles at yahoo.fr (Linus) Date: Fri, 12 Aug 2022 10:44:54 -0400 Subject: [Gambas-user] byte to bit & bit to byte In-Reply-To: References: Message-ID: <93224CC3-C40F-4950-9D40-84D6E4F37054@yahoo.fr> Or more simple: Print &x11111110 254 Olivier > Le 12 ao?t 2022 ? 10:22, vuott--- via User a ?crit : > > ...maybe: > > Public Sub Main() > > Dim binario As String > Dim num As Long ' or other primitive datatype > Dim pos As Byte > > binario = "11111110" > > Repeat > num += CLong(Val(Mid(binario, Len(binario) - pos, 1)) * (2 ^ pos)) > Inc pos > Until pos = Len(binario) > > Print num > > End > > > > > > 12 ago 2022, 15:57 da mbelmonte at belmotek.net: > Hello. > As you know to convert a byte number into bits is done like this: > Bin(254) > The result is: > 11111110 > > But how do you get 254 from 11111110 ? > > Regards > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From gambas.fr at gmail.com Sat Aug 13 08:30:10 2022 From: gambas.fr at gmail.com (Fabien Bodard) Date: Sat, 13 Aug 2022 08:30:10 +0200 Subject: [Gambas-user] byte to bit & bit to byte In-Reply-To: <93224CC3-C40F-4950-9D40-84D6E4F37054@yahoo.fr> References: <93224CC3-C40F-4950-9D40-84D6E4F37054@yahoo.fr> Message-ID: Hi, i = val("&x11111100") Le ven. 12 ao?t 2022 ? 16:45, Linus via User a ?crit : > > Or more simple: > > Print &x11111110 > 254 > > Olivier > > Le 12 ao?t 2022 ? 10:22, vuott--- via User a ?crit : > > ...maybe: > > Public Sub Main() > > Dim binario As String > Dim num As Long ' or other primitive datatype > Dim pos As Byte > > binario = "11111110" > > Repeat > num += CLong(Val(Mid(binario, Len(binario) - pos, 1)) * (2 ^ pos)) > Inc pos > Until pos = Len(binario) > > Print num > > End > > > > > > 12 ago 2022, 15:57 da mbelmonte at belmotek.net: > > Hello. > As you know to convert a byte number into bits is done like this: > Bin(254) > The result is: > 11111110 > > But how do you get 254 from 11111110 ? > > Regards > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- -- Fabien Bodard From gambas.fr at gmail.com Sat Aug 13 08:35:07 2022 From: gambas.fr at gmail.com (Fabien Bodard) Date: Sat, 13 Aug 2022 08:35:07 +0200 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: "It handles all brush types (and so gradients), even if printing gradients should be forbidden by the law of good taste. Regards, -- Beno?t Minisini." Gradients are so beautiful :-P From bsteers4 at gmail.com Sat Aug 13 09:59:08 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 13 Aug 2022 08:59:08 +0100 Subject: [Gambas-user] IDE String[] editor copy/paste only does the whole list Message-ID: Is that right? In the IDE when you open up the dialog to edit a String[] property there is copy and paste buttons. I would have thought it was for copying and pasting single items in the list. but looking at the code it just copies all items in the list and paste just pastes them all back again. So it looks like (an assumption maybe) std copy/paste buttons for single items but it's only for copying/pasting entire lists. and the paste must be text/x-gambas-list type so pretty much only for copying lists internally with other String[] dialogs. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sat Aug 13 10:08:50 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 13 Aug 2022 09:08:50 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Sat, 13 Aug 2022 at 07:36, Fabien Bodard wrote: > "It handles all brush types (and so gradients), even if > printing gradients should be forbidden by the law of good taste. > > Regards, > > -- > Beno?t Minisini." > > > Gradients are so beautiful :-P > just look at this sexy button, how can you not love gradients ? ;) BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Untitled.png Type: image/png Size: 4325 bytes Desc: not available URL: From bsteers4 at gmail.com Sat Aug 13 12:24:41 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 13 Aug 2022 11:24:41 +0100 Subject: [Gambas-user] IDE String[] editor copy/paste only does the whole list In-Reply-To: References: Message-ID: On Sat, 13 Aug 2022 at 08:59, Bruce Steers wrote: > Is that right? > > In the IDE when you open up the dialog to edit a String[] property there > is copy and paste buttons. > > I would have thought it was for copying and pasting single items in the > list. > but looking at the code it just copies all items in the list and paste > just pastes them all back again. > > So it looks like (an assumption maybe) std copy/paste buttons for single > items but it's only for copying/pasting entire lists. > and the paste must be text/x-gambas-list type so pretty much only for > copying lists internally with other String[] dialogs. > > It would make sense to change the type to text/plain and rename the buttons, "Copy List" , "Paste List" then internal copying complete lists would still function as normal and also you could paste a list from anywhere you can copy lines of text. Sorry. possibly you have this by design for a reason Ben, i just looked at the feature and thought , what? Am surprised the Copy/Paste buttons are not for single list items, I'm sure that would seem the usual assumption with most people for buttons like that in that sort of gui. At the very least I think changing the button text to "Copy List" , "Paste List" would explain their current function better. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sat Aug 13 13:16:45 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 13 Aug 2022 12:16:45 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Wed, 10 Aug 2022 at 15:26, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 10/08/2022 ? 15:46, Bruce Steers a ?crit : > > > > > > On Wed, 10 Aug 2022 at 14:08, Benoit Minisini > > > > wrote: > > > > Le 10/08/2022 ? 14:49, bb a ?crit : > > > On Wed, 2022-08-10 at 13:13 +0100, Bruce Steers wrote: > > >> On Wed, 10 Aug 2022 at 11:53, Bruce Steers > > > > >> wrote: > > >> > > >>> You know how you can put the following in a custom control.. > > >>> > > >>> *Public Const _Properties As String = "*,StringArray"* > > >>> > > >>> *Property StringArray As String[] Use $aStringArray* > > >>> > > >>> Then in the IDE form designer you'll get the StringArray > property > > >>> and get > > >>> an editor to insert strings to the list. > > >>> > > >>> If i use ANY other type like Integer[] or Float[] then it does > not > > >>> work > > >>> the same. i just get a combobox with "none" to select, and if i > do > > >>> select > > >>> none i then have to manually edit the .form file to remove the > def > > >>> as it > > >>> raises an error. > > >>> > > >>> Could the form designer also handle other types? > > >>> Integer[] and Float[] shouldn't be too hard to handle. > > >>> The existing string[] editor could be used then the items > converted > > >>> to > > >>> their respective type array. > > >>> > > >>> Would open up a few things for me. > > >>> > > >>> I'm trying to add gradients to a control and want to handle the > > >>> Colors[] > > >>> and StopPoints[] in the IDE > > >>> > > >>> Can some method be added to a Custom control class that the IDE > can > > >>> use to > > >>> pop up our own editor window ? > > >>> Something like this maybe?.. > > >>> > > >>> *Public Const _Properties As String = > "*,IntegerArray{IntList()}"* > > >>> > > >>> *Private Sub IntList() As Integer[]* > > >>> > > >>> * FGetIntegers.ShowModal()* > > >>> > > >>> * Return FGetIntegers.List* > > >>> > > >>> *End* > > >>> > > >>> then FIntegers pops open my own list editor > > >>> > > >>> Is something like this already possible ? > > >>> > > >>> Respects > > >>> BruceS > > >>> > > >> > > >> I'm thinking my second idea of letting us create a custom > property > > >> editor > > >> window that could return any type required would be a lot more > > useful > > >> than > > >> just making Integer[] Float[] also work in the form designer. > > >> Possibly even less code as you'd just have to check for () in the > > >> _Properties def "*, MyPropertyName{type_is_method()}" then set > the > > >> property > > >> edit button in the IDE to run the method and pass it's return > data > > >> straight > > >> to the property. > > >> > > >> Hmm, When i put it that way it does sound like a fairly simple > > >> addition. I > > >> might just have a browse through the IDE code and see if i can > find > > >> the way. > > >> > > >> Respects > > >> BruceS > > >> > > >> ----[ http://gambaswiki.org/wiki/doc/netiquette > > ]---- > > > Have a look at the "special" property editors used in the Report > > > designer. Although they are implemented inside the IDE, it could > give > > > you the points at which you'd need to apply some surgery to the > IDE. > > > > > > I did something like this years ago that let me design the > property > > > editor inside the component rather than imposing changes on the > IDE. > > > I just had a look at where I knew that I had used it in one > component > > > and unfortunately I have disabled the said code and removed the > > > necessary changes to the IDE - sad as it did work a treat. > > > > > > My use was far above what you are trying but I bit on the "custom > > > property editor". > > > > > > From memory the changes in the IDE were not that extravagant, the > > > tricky bit is getting the IDE to load the component and look for > the > > > property editor in there. > > > > > > hth > > > b > > > > > > > Mmm... No, thanks. I didn't want the IDE to load arbitrary > components, > > and I still have the same opinion (for security reasons at least). > > > > This is why all property types are directly handled by the IDE form > > editor. > > > > As for the type of property you want to implement, are you sure that > > defining a gradient from the form editor is really worth it in your > > context? > > > > A brush property type has been implemented for the Report forms, but > > it's because having a visual representation of what you are printing > > may > > be useful. It handles all brush types (and so gradients), even if > > printing gradients should be forbidden by the law of good taste. > > > > Regards, > > > > -- > > Beno?t Minisini. > > > > > > Yes it handles all types but not all array types just String[], making > > it a bit limited. > > > > For my context it is kinda really wanted, > > After my recent education in gradients i'm upgrading my > > GradientButton.class to handle multiple gradient points not just 2 and > > use the Paint.LinearGradient() method not the one i made before i > > discovered the Paint version.. > > https://forum.gambas.one/download/file.php?id=1128 > > > > > > In the above image I am Implementing multiple colourstops by using > > String[] then converting gambas Color names (using color integer strings > > was not really possible to use color selector gui so i kept it simple > > and use existing color names) and working out the StopPoint float value > > automatically by division of the number of values. > > eg. > > GradientButton5.ColorNames = ["Green", "Blue", "Yellow"] > > > > then in the _Draw() event... > > Dim Cols As Integer[] = [], Points As Float[] = [] > > > > If $aColorNames Then > > Dim fOnePos As Float = 1 / $aColorNames.Max > > Dim fPos As Float = 0, iCol As Integer > > > > For i As Integer = 0 To $aColorNames.Max > > Try iCol = Object.GetProperty(Color, $aColorNames[i]) > > If Error Then > > Dim sErr As String = Error.Text > > Dim sCols As String[] = GetGambasColourNames() > > Error.Raise($aColorNames[i] & "\n" & sErr & "\nUse only gambas > > color names\n" & sCols.Sort().Join(", ")) > > Endif > > > > Cols.Add(iCol) > > Points.Add(fPos) > > fPos += fOnePos > > Next > > Else ' use defaults > > Cols = [Col1, Col2] > > Points = [0, 1] > > Endif > > > > Because in the IDE String[] is all i really have to work with for an > > array type property so i can set the string list. > > > > Looking at the ide code i'm wondering if Field,Fields type could be used > > for my needs? > > > > Could you implement Array type? like my first idea of using the existing > > String[] editor to edit then converting the strings to respective types? > > And possibly a more complicated Color[] type to set multiple colors? > > Dang, in my head this just got a lot more complicated :-\ > > > > > > Many thanks > > BruceS > > > > Let's put the usefullness of flashy gradient buttons aside. What you > would need is actually a brush, not a gradient. The gradient is just a > particular case of a brush. > > And editing a brush (or any other complex property) in the form editor > needs: > > 1) An IDE internal string representation of the property. > > 2) A method in the Gambas component that converts that string into the > real object, making that internal string representation part of the > public API. > > 3) The corresponding property editor in the IDE. > > 4) The code that deals with the property kind in the form loading > routine, saving routine, setting and getting property routines. > > If you don't understand, look how the Font property kind is handled. > > Implementing all that is not a five minutes job (hopefully the brush > editor already exists in some way for the Report forms), and I usually > do it when it's really useful. Anyway I can't do it now. > > Regards, > > -- > Beno?t Minisini. > I think i could do it okay. I am only interested in a color array , most other arrays like integer can simply be string and converted but for a color array the FColorChooser form is desired for each item. I have currently done this monstrosity ;) https://gitlab.com/bsteers4/gambas/-/commits/array-properties (branch from master) https://gitlab.com/bsteers4/gambas/-/merge_requests/1 (visible all in one changes) that was my idea that all the existing types could be an array. using mostly existing single item code. but as that's developing i'm wanting to show all manner of different types. i changed ListView to GridView so per row can show colors/fonts/etc but then i though it's too much. i personally only have use for a color array. if you have no objections to a color array type being added i think i could easily emulate existing code and add ColorArray as a type as you described above. PS. i got a little distracted with this but am amazed at the excellent work you have done with WebDrawingArea and I will be doing some funky things with it very soon :) PPS. I did Text functions ... https://gitlab.com/bsteers4/gambas/-/commits/webpaint-text may need to implement a WebFont as all i did for font was use a string (css style not gambas style) Wishing well BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Sat Aug 13 17:02:37 2022 From: mbelmonte at belmotek.net (Martin) Date: Sat, 13 Aug 2022 17:02:37 +0200 Subject: [Gambas-user] byte to bit & bit to byte In-Reply-To: References: <93224CC3-C40F-4950-9D40-84D6E4F37054@yahoo.fr> Message-ID: <860a5dd3-af0a-9cd3-35d4-2b98148d7be8@belmotek.net> El 13/8/22 a las 8:30, Fabien Bodard escribi?: > i = val("&x11111100") > > Le ven. 12 ao?t 2022 ? 16:45, Linus via User >> Print &x11111110 >> Olivier >> >> Le 12 ao?t 2022 ? 10:22, vuott--- via User a ?crit : >> Public Sub Main() >> Dim binario As String >> Dim num As Long ' or other primitive datatype >> Dim pos As Byte >> binario = "11111110" >> Repeat >> num += CLong(Val(Mid(binario, Len(binario) - pos, 1)) * (2 ^ pos)) >> Inc pos >> Until pos = Len(binario) >> Print num >> End I want to use bytes to indicate 8 possible groups in a team work in only one field of the table. Now, thanks to your answers, I can encode and decode the byte. Thanks to all. From mbelmonte at belmotek.net Sat Aug 13 22:24:06 2022 From: mbelmonte at belmotek.net (Martin) Date: Sat, 13 Aug 2022 22:24:06 +0200 Subject: [Gambas-user] byte to bit & bit to byte In-Reply-To: <860a5dd3-af0a-9cd3-35d4-2b98148d7be8@belmotek.net> References: <93224CC3-C40F-4950-9D40-84D6E4F37054@yahoo.fr> <860a5dd3-af0a-9cd3-35d4-2b98148d7be8@belmotek.net> Message-ID: Hi, Here is the control "options". https://gambas-es.org/showthread.php?tid=992 https://imgur.com/imuTVSt Thanks again. From jussi.lahtinen at gmail.com Sun Aug 14 00:40:03 2022 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Sun, 14 Aug 2022 01:40:03 +0300 Subject: [Gambas-user] byte to bit & bit to byte In-Reply-To: <860a5dd3-af0a-9cd3-35d4-2b98148d7be8@belmotek.net> References: <93224CC3-C40F-4950-9D40-84D6E4F37054@yahoo.fr> <860a5dd3-af0a-9cd3-35d4-2b98148d7be8@belmotek.net> Message-ID: > I want to use bytes to indicate 8 possible groups in a team work in only > one field of the table. > Now, thanks to your answers, I can encode and decode the byte. > No need to do that. Usually it is done like this (de facto standard in C): Public Const Group1 As Byte = 1 Public Const Group2 As Byte = 2 Public Const Group3 As Byte = 4 Public Const Group4 As Byte = 8 Public Const Group5 As Byte = 16 Public Const Group6 As Byte = 32 ... '' IE values of 2^n, IE values presented with one bit. Dim iByteHoldingGroups As Byte 'Here adding Groups 1, 3 and 6 to the variable iByteHoldingGroups one at the time: iByteHoldingGroups = iByteHoldingGroups OR Group1 iByteHoldingGroups = iByteHoldingGroups OR Group3 iByteHoldingGroups = iByteHoldingGroups OR Group6 'Or multiple at the same time: iByteHoldingGroups = iByteHoldingGroups OR Group1 OR Group3 OR Group6 'Here is how you check what is in the variable iByteHoldingGroups: If iByteHoldingGroups And Group1 Then Print "There is Group1 among the groups." 'Or multiple at the same time: If iByteHoldingGroups And (Group1 OR Group2) Then Print "At least one of the asked groups is among the groups." 'Here is how you remove groups (here Group 1 and 3): iByteHoldingGroups = iByteHoldingGroups - (Group1 OR Group3) Jussi -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Aug 14 14:31:19 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 14 Aug 2022 13:31:19 +0100 Subject: [Gambas-user] WebForm.Debug, where's the output? Message-ID: i set WebForm.Debug = True but i still see no output really stuck trying to find an error in my web app. some recent change (not by me) broke it. the version on my server works okay but not on my pc so i dare not update my servers gambas now. now i just get 505 server error any advice appreciated. BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Aug 14 16:43:46 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 14 Aug 2022 15:43:46 +0100 Subject: [Gambas-user] WebForm.Debug, where's the output? In-Reply-To: References: Message-ID: On Sun, 14 Aug 2022 at 13:31, Bruce Steers wrote: > i set WebForm.Debug = True but i still see no output > > really stuck trying to find an error in my web app. some recent change > (not by me) broke it. > the version on my server works okay but not on my pc so i dare not update > my servers gambas now. > > now i just get 505 server error > > any advice appreciated. > Panic over. and it was me not an update :-\ Seems i added gb.image to the components and that just gave me a non discoverable error that took some tracking down. (after commenting out ALL the code and removing all custom components it still wasn't loading so i had to dig deeper and found gb.image in the components list) can gb.image not be used for making/manipulating images to save to server before loading? Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From isafiur at gmail.com Mon Aug 15 06:52:02 2022 From: isafiur at gmail.com (Safiur Rahman) Date: Mon, 15 Aug 2022 10:37:02 +0545 Subject: [Gambas-user] Loading translation from application/web application Message-ID: Hi I want to change the language of the web page by clicking a button. I have already imported the translation into the project. System.Language = "en_US.UTF-8" WebForm.Reload() This makes no effect. Is there any method to load language while you are running the application? -- Regards Safiur Rahman -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gambasweb.zip Type: application/zip Size: 17945 bytes Desc: not available URL: From bsteers4 at gmail.com Mon Aug 15 10:13:06 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 15 Aug 2022 09:13:06 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Wed, 10 Aug 2022 at 15:26, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: snip > > Could you implement Array type? like my first idea of using the existing > > String[] editor to edit then converting the strings to respective types? > > And possibly a more complicated Color[] type to set multiple colors? > > Dang, in my head this just got a lot more complicated :-\ > > > > > > Many thanks > > BruceS > > > > Let's put the usefullness of flashy gradient buttons aside. What you > would need is actually a brush, not a gradient. The gradient is just a > particular case of a brush. > > And editing a brush (or any other complex property) in the form editor > needs: > > 1) An IDE internal string representation of the property. > > 2) A method in the Gambas component that converts that string into the > real object, making that internal string representation part of the > public API. > > 3) The corresponding property editor in the IDE. > > 4) The code that deals with the property kind in the form loading > routine, saving routine, setting and getting property routines. > > If you don't understand, look how the Font property kind is handled. > > Implementing all that is not a five minutes job (hopefully the brush > editor already exists in some way for the Report forms), and I usually > do it when it's really useful. Anyway I can't do it now. > I had a better idea (much simpler) https://gitlab.com/bsteers4/gambas/-/commits/property-choosers There i have added a popup menu to the lstValue listbox that lets you run various choosers for colors (string or integer) , fonts, pictures and file/dir paths. (all i could think of would be useful) It seemed a much easier solution and fixes my needs :) Not sure if popup menu was the best way to implement it but works cool, Only downside is you cannot see the actual colors just the strings but that's okay. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Mon Aug 15 10:18:30 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 15 Aug 2022 09:18:30 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Mon, 15 Aug 2022 at 09:13, Bruce Steers wrote: > > > On Wed, 10 Aug 2022 at 15:26, Benoit Minisini < > benoit.minisini at gambas-basic.org> wrote: > > snip > > > >> > Could you implement Array type? like my first idea of using the >> existing >> > String[] editor to edit then converting the strings to respective types? >> > And possibly a more complicated Color[] type to set multiple colors? >> > Dang, in my head this just got a lot more complicated :-\ >> > >> > >> > Many thanks >> > BruceS >> > >> >> Let's put the usefullness of flashy gradient buttons aside. What you >> would need is actually a brush, not a gradient. The gradient is just a >> particular case of a brush. >> >> And editing a brush (or any other complex property) in the form editor >> needs: >> >> 1) An IDE internal string representation of the property. >> >> 2) A method in the Gambas component that converts that string into the >> real object, making that internal string representation part of the >> public API. >> >> 3) The corresponding property editor in the IDE. >> >> 4) The code that deals with the property kind in the form loading >> routine, saving routine, setting and getting property routines. >> >> If you don't understand, look how the Font property kind is handled. >> >> Implementing all that is not a five minutes job (hopefully the brush >> editor already exists in some way for the Report forms), and I usually >> do it when it's really useful. Anyway I can't do it now. >> > > I had a better idea (much simpler) > https://gitlab.com/bsteers4/gambas/-/commits/property-choosers > > There i have added a popup menu to the lstValue listbox that lets you run > various choosers for colors (string or integer) , fonts, pictures and > file/dir paths. (all i could think of would be useful) > > It seemed a much easier solution and fixes my needs :) > > Not sure if popup menu was the best way to implement it but works cool, > > Only downside is you cannot see the actual colors just the strings but > that's okay. > > Respects > BruceS > Works like this... http://bws.org.uk/img/screenrecord-2022-08-15_09.14.22.mp4 -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Mon Aug 15 22:06:04 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 15 Aug 2022 22:06:04 +0200 Subject: [Gambas-user] Loading translation from application/web application In-Reply-To: References: Message-ID: <7d54854d-32bb-afc9-5b9a-892f2394fe63@gambas-basic.org> Le 15/08/2022 ? 06:52, Safiur Rahman a ?crit?: > Hi > > I want to change the language of the web page by clicking a button. I > have already imported the translation into the project. > ? System.Language = "en_US.UTF-8" > ? WebForm.Reload() > This makes no effect. Is there any method to load language while you are > running the application? > > > -- > Regards > Safiur Rahman > You must logout, i.e. drop your session. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Tue Aug 16 10:23:46 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 16 Aug 2022 10:23:46 +0200 Subject: [Gambas-user] WebForm.Debug, where's the output? In-Reply-To: References: Message-ID: <5129f03a-be0f-84db-59d3-be1f9e09b2d5@gambas-basic.org> Le 14/08/2022 ? 14:31, Bruce Steers a ?crit?: > i set WebForm.Debug = True but i still see no output > You must look in the javascript console of your browser. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Tue Aug 16 21:31:33 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 16 Aug 2022 20:31:33 +0100 Subject: [Gambas-user] WebForm.Debug, where's the output? In-Reply-To: <5129f03a-be0f-84db-59d3-be1f9e09b2d5@gambas-basic.org> References: <5129f03a-be0f-84db-59d3-be1f9e09b2d5@gambas-basic.org> Message-ID: On Tue, 16 Aug 2022 at 09:24, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 14/08/2022 ? 14:31, Bruce Steers a ?crit : > > i set WebForm.Debug = True but i still see no output > > > > You must look in the javascript console of your browser. > > Regards, > > -- > Beno?t Minisini. > Thank you Ben :) The only clue i had to my error was a report of a module load failure (i had added gb.image component because i thought i could to gb.image processing server side) debugging a web app is not so easy. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Wed Aug 17 13:42:36 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 17 Aug 2022 12:42:36 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Mon, 15 Aug 2022 at 09:18, Bruce Steers wrote: > > > On Mon, 15 Aug 2022 at 09:13, Bruce Steers wrote: > >> >> >> On Wed, 10 Aug 2022 at 15:26, Benoit Minisini < >> benoit.minisini at gambas-basic.org> wrote: >> >> snip >> >> >> >>> > Could you implement Array type? like my first idea of using the >>> existing >>> > String[] editor to edit then converting the strings to respective >>> types? >>> > And possibly a more complicated Color[] type to set multiple colors? >>> > Dang, in my head this just got a lot more complicated :-\ >>> > >>> > >>> > Many thanks >>> > BruceS >>> > >>> >>> Let's put the usefullness of flashy gradient buttons aside. What you >>> would need is actually a brush, not a gradient. The gradient is just a >>> particular case of a brush. >>> >>> And editing a brush (or any other complex property) in the form editor >>> needs: >> >> oh my god you're right. and right about the ReportBrush too. Sorry i didn't get it at first. I can just use a string value set to use {ReportBrush} type and there is everything i needed in a string that I can easily work with. don't even need to add gb.report. Awesome :) Respects. BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Wed Aug 17 14:18:34 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 17 Aug 2022 14:18:34 +0200 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: Le 17/08/2022 ? 13:42, Bruce Steers a ?crit?: > > Let's put the usefullness of flashy gradient buttons aside. > What you > would need is actually a brush, not a gradient. The gradient > is just a > particular case of a brush. > > And editing a brush (or any other complex property) in the > form editor > needs: > > > oh my god you're right. and right about the ReportBrush too. > Sorry i didn't get it at first. > > I can just use a string value set to use {ReportBrush} type and there is > everything i needed in a string that I can easily work with. don't even > need to add gb.report. > > Awesome :) > Respects. > BruceS > It's not enough. The problem is that you must understand how property values are stored in and retrieved from form files. "ReportBrush" is not just the way the property is chosen in the form editor, it's also which code is generated in the form file to initialize the property. You can't reuse it directly. For complex objects like brushes, you usually need an equivalent object in the component. For example, properties with "ReportBrush" kind uses the 'ReportBrush[]' array method of the gb.report(2) component. That logic is located in the 'CControl.GetEachProperty()' method. Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Wed Aug 17 17:45:24 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 17 Aug 2022 16:45:24 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Wed, 17 Aug 2022 at 13:19, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 17/08/2022 ? 13:42, Bruce Steers a ?crit : > > > > Let's put the usefullness of flashy gradient buttons aside. > > What you > > would need is actually a brush, not a gradient. The gradient > > is just a > > particular case of a brush. > > > > And editing a brush (or any other complex property) in the > > form editor > > needs: > > > > > > oh my god you're right. and right about the ReportBrush too. > > Sorry i didn't get it at first. > > > > I can just use a string value set to use {ReportBrush} type and there is > > everything i needed in a string that I can easily work with. don't even > > need to add gb.report. > > > > Awesome :) > > Respects. > > BruceS > > > > It's not enough. The problem is that you must understand how property > values are stored in and retrieved from form files. > > "ReportBrush" is not just the way the property is chosen in the form > editor, it's also which code is generated in the form file to initialize > the property. You can't reuse it directly. > > For complex objects like brushes, you usually need an equivalent object > in the component. For example, properties with "ReportBrush" kind uses > the 'ReportBrush[]' array method of the gb.report(2) component. > > That logic is located in the 'CControl.GetEachProperty()' method. > > Regards, > Yes i spoke too soon in my excitement of your suggestions finally hitting me and thinking i had a really simple solution. It was all working editing in the IDE so I thought everything was great, but then i got an error when running the program (no ReportBrush) So i have imported the ReportBrush.class and now it works like you say, not as a string but as an actual reportbrush object. Still that's something i can use. Shame i cannot disable the color/image options of the reportbrush editor but i'll work around it :) Cheers Ben :) BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Wed Aug 17 22:39:40 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 17 Aug 2022 21:39:40 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Wed, 17 Aug 2022 at 16:45, Bruce Steers wrote: > > > On Wed, 17 Aug 2022 at 13:19, Benoit Minisini < > benoit.minisini at gambas-basic.org> wrote: > >> Le 17/08/2022 ? 13:42, Bruce Steers a ?crit : >> > >> > Let's put the usefullness of flashy gradient buttons aside. >> > What you >> > would need is actually a brush, not a gradient. The gradient >> > is just a >> > particular case of a brush. >> > >> > And editing a brush (or any other complex property) in the >> > form editor >> > needs: >> > >> > >> > oh my god you're right. and right about the ReportBrush too. >> > Sorry i didn't get it at first. >> > >> > I can just use a string value set to use {ReportBrush} type and there >> is >> > everything i needed in a string that I can easily work with. don't even >> > need to add gb.report. >> > >> > Awesome :) >> > Respects. >> > BruceS >> > >> >> It's not enough. The problem is that you must understand how property >> values are stored in and retrieved from form files. >> >> "ReportBrush" is not just the way the property is chosen in the form >> editor, it's also which code is generated in the form file to initialize >> the property. You can't reuse it directly. >> >> For complex objects like brushes, you usually need an equivalent object >> in the component. For example, properties with "ReportBrush" kind uses >> the 'ReportBrush[]' array method of the gb.report(2) component. >> >> That logic is located in the 'CControl.GetEachProperty()' method. >> >> Regards, >> > > Yes i spoke too soon in my excitement of your suggestions finally hitting > me and thinking i had a really simple solution. > It was all working editing in the IDE so I thought everything was great, > but then i got an error when running the program (no ReportBrush) > > So i have imported the ReportBrush.class and now it works like you say, > not as a string but as an actual reportbrush object. Still that's > something i can use. > > Shame i cannot disable the color/image options of the reportbrush editor > but i'll work around it :) > So i did this to get a gradient only dialog... https://gitlab.com/bsteers4/gambas/-/commit/07546d3bbf2a57cf3ba793573a43dc4501407649 I just added an option GradientOnly to the ReportBrush type so you can use MyGradient{ReportBrush:GradientOnly} and it hides the color/image options it removes the first 2 color/image items from the list and offsets all the combo.index calls by 2 if removed. have tested it and tested it alongside another brush property that used all 4 types and no problems using both. Could you accept something like this? Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Thu Aug 18 18:22:51 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 18 Aug 2022 17:22:51 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: On Wed, 17 Aug 2022 at 21:39, Bruce Steers wrote: > > > On Wed, 17 Aug 2022 at 16:45, Bruce Steers wrote: > >> >> >> On Wed, 17 Aug 2022 at 13:19, Benoit Minisini < >> benoit.minisini at gambas-basic.org> wrote: >> >>> Le 17/08/2022 ? 13:42, Bruce Steers a ?crit : >>> > >>> > Let's put the usefullness of flashy gradient buttons aside. >>> > What you >>> > would need is actually a brush, not a gradient. The >>> gradient >>> > is just a >>> > particular case of a brush. >>> > >>> > And editing a brush (or any other complex property) in the >>> > form editor >>> > needs: >>> > >>> > >>> > oh my god you're right. and right about the ReportBrush too. >>> > Sorry i didn't get it at first. >>> > >>> > I can just use a string value set to use {ReportBrush} type and there >>> is >>> > everything i needed in a string that I can easily work with. don't >>> even >>> > need to add gb.report. >>> > >>> > Awesome :) >>> > Respects. >>> > BruceS >>> > >>> >>> It's not enough. The problem is that you must understand how property >>> values are stored in and retrieved from form files. >>> >>> "ReportBrush" is not just the way the property is chosen in the form >>> editor, it's also which code is generated in the form file to initialize >>> the property. You can't reuse it directly. >>> >>> For complex objects like brushes, you usually need an equivalent object >>> in the component. For example, properties with "ReportBrush" kind uses >>> the 'ReportBrush[]' array method of the gb.report(2) component. >>> >>> That logic is located in the 'CControl.GetEachProperty()' method. >>> >>> Regards, >>> >> >> Yes i spoke too soon in my excitement of your suggestions finally hitting >> me and thinking i had a really simple solution. >> It was all working editing in the IDE so I thought everything was great, >> but then i got an error when running the program (no ReportBrush) >> >> So i have imported the ReportBrush.class and now it works like you say, >> not as a string but as an actual reportbrush object. Still that's >> something i can use. >> >> Shame i cannot disable the color/image options of the reportbrush editor >> but i'll work around it :) >> > > So i did this to get a gradient only dialog... > > https://gitlab.com/bsteers4/gambas/-/commit/07546d3bbf2a57cf3ba793573a43dc4501407649 > > I just added an option GradientOnly to the ReportBrush type so you can use > MyGradient{ReportBrush:GradientOnly} and it hides the color/image options > > it removes the first 2 color/image items from the list and offsets all the > combo.index calls by 2 if removed. > > have tested it and tested it alongside another brush property that used > all 4 types and no problems using both. > > Could you accept something like this? > Okay here's the special meatball... https://gitlab.com/bsteers4/gambas/-/commit/196ca091ce5e4b39b266afc68cde4a4acb8c7c43 This also solves my issue as i can make a simple Color array for my gradients. On that branch i have added a new property type called ListOf You can have ListOf:Color ListOf:Font ListOf:Picture ListOf:Path plus some others. All lists must point to a String[] property A new chooser form called FArrayChooser shows font/image/color in gridview list Adding or editing opens up the correct chooser for the type. The following lists should be possible to open their own chooser forms... Case "Font", "FixedFont" Case "WebFont" Case "Color" Case "Picture", "Image", "Animation", "WebImage", "SvgImage" Case "WebAudio" Case "Path" My test class has the following line.. Public Const _Properties As String = "ColorList{ListOf:Color},FontList{ListOf:Font},PictureList{ListOf:Picture},ImgList{ListOf:Image}" They all work as expected. Todo: need to check that moving/copying/pasting items works okay Respects. BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Thu Aug 18 18:29:20 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 18 Aug 2022 18:29:20 +0200 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> Message-ID: <93ce71d7-83c0-fcdd-3c4b-3d113acc8fa0@gambas-basic.org> Le 18/08/2022 ? 18:22, Bruce Steers a ?crit?: > > On that branch i have added a new property type called ListOf > Maybe it would be better to automatically detect property kind or datatype that ends with "[]", and act accordingly? -- Beno?t Minisini. From bsteers4 at gmail.com Thu Aug 18 19:38:24 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 18 Aug 2022 18:38:24 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: <93ce71d7-83c0-fcdd-3c4b-3d113acc8fa0@gambas-basic.org> References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> <93ce71d7-83c0-fcdd-3c4b-3d113acc8fa0@gambas-basic.org> Message-ID: On Thu, 18 Aug 2022 at 17:30, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 18/08/2022 ? 18:22, Bruce Steers a ?crit : > > > > On that branch i have added a new property type called ListOf > > > > Maybe it would be better to automatically detect property kind or > datatype that ends with "[]", and act accordingly? > > -- > Beno?t Minisini. > Yes that's probably better. okay removed ListOf and added some Case Like "*\\[]" conditions (Like *[] is used "after" any others check for something ending in []) So then any unhandled (by you) array types will go through the FArrayChooser dialog and if not handled there it prints a message that type is unhandled. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at westwoodsvcs.com Fri Aug 19 00:57:30 2022 From: brian at westwoodsvcs.com (Brian G) Date: Thu, 18 Aug 2022 15:57:30 -0700 (PDT) Subject: [Gambas-user] Hi, Has there been a recent change to the byte code Message-ID: <531253583.71841.1660863450574.JavaMail.zimbra@westwoodsvcs.com> I am running 3.17.3 on my desktop clients I compiled from the daily, and I am getting a bytecode too new. In the ide my choices of forcing the byte code are 3.15 and 3.18 I am confused..... Not sure what to do "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 Aug 20 11:08:06 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 20 Aug 2022 10:08:06 +0100 Subject: [Gambas-user] edits not saving Message-ID: Anyone else getting little edits of a file are not saving? Ie, maybe removing a line or commenting out a line. the file does not get its "changed" flag set so it does not save. So I've been pressing returns then delete to make a modification that does make it seen as changed, then it saves as expected. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sat Aug 20 11:25:30 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 20 Aug 2022 10:25:30 +0100 Subject: [Gambas-user] edits not saving In-Reply-To: References: Message-ID: On Sat, 20 Aug 2022 at 10:08, Bruce Steers wrote: > Anyone else getting little edits of a file are not saving? > > Ie, maybe removing a line or commenting out a line. the file does not get > its "changed" flag set so it does not save. > > So I've been pressing returns then delete to make a modification that does > make it seen as changed, then it saves as expected. > PS. this only seems to happen when a project first loads. Ie... Load up project, comment out a line with a ' The Title in the tab does not get an asterisk * and file will not save changes. Press delete to delete the comment char and the asterisk appears. Save file now works... Then comment out the line again and the asterisk DOES appear and all is working as expected from now on. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sat Aug 20 11:35:22 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 20 Aug 2022 10:35:22 +0100 Subject: [Gambas-user] m4/pkg.m4 (branch diverger) Message-ID: the m4/pkg.m4 causes a problem if i install the master branch from my local repository this file appears. I have to delete it every time so i do not diverge my upstream master branch when i pull/push to update it. must it be added to .gitignore or something? Respects. BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sat Aug 20 11:41:02 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sat, 20 Aug 2022 10:41:02 +0100 Subject: [Gambas-user] m4/pkg.m4 (branch diverger) In-Reply-To: References: Message-ID: On Sat, 20 Aug 2022 at 10:35, Bruce Steers wrote: > > the m4/pkg.m4 causes a problem > > if i install the master branch from my local repository this file appears. > I have to delete it every time so i do not diverge my upstream master > branch when i pull/push to update it. > correction, my fork master branch not the upstream one. It caused a branch divergence problem for me a little while ago and i ended up deleting and restoring my master branch from upstream , since then i have not been able to set up pull mirroring on gitlab so i have to do it manually :( Respects -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Sat Aug 20 16:37:25 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 20 Aug 2022 16:37:25 +0200 Subject: [Gambas-user] Hi, Has there been a recent change to the byte code In-Reply-To: <531253583.71841.1660863450574.JavaMail.zimbra@westwoodsvcs.com> References: <531253583.71841.1660863450574.JavaMail.zimbra@westwoodsvcs.com> Message-ID: <6d749b5e-30ef-2959-4465-a01c2aea1cae@gambas-basic.org> Le 19/08/2022 ? 00:57, Brian G a ?crit?: > I am running 3.17.3 on my desktop clients > > I compiled from the daily, and I am getting a bytecode too new. > > In the ide my choices of forcing the byte code are 3.15 and 3.18 > > I am confused..... Not sure what to do > > "Failure is the key to success; > ?each mistake teaches us something" ?.. Morihei Ueshiba > Brian G > Yes, commit https://gitlab.com/gambas/gambas/-/commit/600a4d961d62de76db545dbe2f4afdd625a9d654 Other bytecodes changes are planned for the 3.18. > I am confused..... Not sure what to do If you are sure that you are not using any specific 3.18 bytecode (at the moment just the write-only properties), you can force the bytecode of your projects to '3.15' so that they run on the stable version. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Sat Aug 20 16:35:06 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 20 Aug 2022 16:35:06 +0200 Subject: [Gambas-user] edits not saving In-Reply-To: References: Message-ID: <7c876382-870f-e7bf-e91f-f40eb3195e63@gambas-basic.org> Le 20/08/2022 ? 11:25, Bruce Steers a ?crit?: > > > On Sat, 20 Aug 2022 at 10:08, Bruce Steers > wrote: > > Anyone else getting little edits of a file are not saving? > > Ie, maybe removing a line or commenting out a line.? the file does > not get its "changed" flag set so it does not save. > > So I've been pressing returns then delete to make a modification > that does make it seen as changed, then it saves as expected. > > > PS. this only seems to happen when a project first loads. > Ie... > Load up project, comment out a line with a ' > The Title in the tab does not get an asterisk * and file will not save > changes. > Press delete to delete the comment char and the asterisk appears. > Save file now works... > Then comment out the line again and the asterisk DOES appear and all is > working as expected from now on. > > Respects > BruceS > It should be fixed by the last commit (some code I forgot to commit). Regards, -- Beno?t Minisini. From bsteers4 at gmail.com Sun Aug 21 08:03:23 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 21 Aug 2022 07:03:23 +0100 Subject: [Gambas-user] About property editing (idea No3) Message-ID: I have a 3rd idea you might accept or not Ben. It fixes my issue and possibly do what the other Ben was wanting too. Plus it's a much simpler modification I think. New _Property type Extern (I called it that, you may think better) https://gitlab.com/bsteers4/gambas/-/commit/d301a905b89d8ee79d7d02d5e9d83c98cf4d2097 With that commit I can use this... Public Const _Properties As String = "*,ColorList{Extern:.hidden/coloredit.gbs}" Property ColorList As String[] Use $aTextList and .hidden/coloredit.gbs is an executable script that takes the value string as the arg and returns the edited return string. (linefeed separated string lists) it just uses Exec [Project.Dir &/ path, $sOldVal] To sNewVal so it can be any executable file. if the command gives an error code the property is not updated. Ps. If i edit an executable gbs script in my project folder using the IDE it removes the executable flag on save :( Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Aug 21 12:55:41 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 21 Aug 2022 11:55:41 +0100 Subject: [Gambas-user] edits not saving In-Reply-To: <7c876382-870f-e7bf-e91f-f40eb3195e63@gambas-basic.org> References: <7c876382-870f-e7bf-e91f-f40eb3195e63@gambas-basic.org> Message-ID: On Sat, 20 Aug 2022 at 15:43, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Le 20/08/2022 ? 11:25, Bruce Steers a ?crit : > > > > > > On Sat, 20 Aug 2022 at 10:08, Bruce Steers > > wrote: > > > > Anyone else getting little edits of a file are not saving? > > > > Ie, maybe removing a line or commenting out a line. the file does > > not get its "changed" flag set so it does not save. > > > > So I've been pressing returns then delete to make a modification > > that does make it seen as changed, then it saves as expected. > > > > > > PS. this only seems to happen when a project first loads. > > Ie... > > Load up project, comment out a line with a ' > > The Title in the tab does not get an asterisk * and file will not save > > changes. > > Press delete to delete the comment char and the asterisk appears. > > Save file now works... > > Then comment out the line again and the asterisk DOES appear and all is > > working as expected from now on. > > > > Respects > > BruceS > > > > It should be fixed by the last commit (some code I forgot to commit). > Does the change event get raised on load even if the object is locked because suddenly my text editor is telling me i've changes text when i haven't. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Aug 21 18:39:03 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 21 Aug 2022 17:39:03 +0100 Subject: [Gambas-user] edits not saving In-Reply-To: References: <7c876382-870f-e7bf-e91f-f40eb3195e63@gambas-basic.org> Message-ID: On Sun, 21 Aug 2022 at 11:55, Bruce Steers wrote: > > > On Sat, 20 Aug 2022 at 15:43, Benoit Minisini < > benoit.minisini at gambas-basic.org> wrote: > >> Le 20/08/2022 ? 11:25, Bruce Steers a ?crit : >> > >> > >> > On Sat, 20 Aug 2022 at 10:08, Bruce Steers > > > wrote: >> > >> > Anyone else getting little edits of a file are not saving? >> > >> > Ie, maybe removing a line or commenting out a line. the file does >> > not get its "changed" flag set so it does not save. >> > >> > So I've been pressing returns then delete to make a modification >> > that does make it seen as changed, then it saves as expected. >> > >> > >> > PS. this only seems to happen when a project first loads. >> > Ie... >> > Load up project, comment out a line with a ' >> > The Title in the tab does not get an asterisk * and file will not save >> > changes. >> > Press delete to delete the comment char and the asterisk appears. >> > Save file now works... >> > Then comment out the line again and the asterisk DOES appear and all is >> > working as expected from now on. >> > >> > Respects >> > BruceS >> > >> >> It should be fixed by the last commit (some code I forgot to commit). >> > > Does the change event get raised on load even if the object is locked > because suddenly my text editor is telling me i've changes text when i > haven't. > Respects > BruceS > If i change line 1584 of CDocument.class in gb.form.editor to.... If Not Object.IsLocked(hView) Then hView._RaiseChange Then my editor works okay again. I tried to make my editor not get the change event on load but could not. changing the CDocument.class worked though. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From hans at gambas-buch.de Sun Aug 21 18:45:35 2022 From: hans at gambas-buch.de (Hans Lehmann) Date: Sun, 21 Aug 2022 18:45:35 +0200 Subject: [Gambas-user] DataBrowser & DataControl Message-ID: <58a777ae-41fe-4f76-7d07-57e9cd3cd64a@gambas-buch.de> Hello. I am looking for solutions for the following tasks for which I have not yet found a solution: I use the controls DataBrowser and DataControl for the display as well as the input and output of database data. When I enter and save a new record or delete a record, the DataControls are subsequently empty and no record is selected. Tasks: After deleting, the predecessor record should be selected as long as there is still a predecessor. After inserting a new record, the new record should be selected. With kind regards Hans From loewen.amj at gmail.com Mon Aug 22 11:10:18 2022 From: loewen.amj at gmail.com (=?UTF-8?Q?Andr=c3=a9_LOEWEN?=) Date: Mon, 22 Aug 2022 11:10:18 +0200 Subject: [Gambas-user] showModal() ersion 3.17.3 Message-ID: <26e9981f-4ac1-6596-4644-8f49bebbbb44@gmail.com> Hello, I noticed that in version 3.17.3 the behavior of .showModal() has changed. webForm1.showModal() opens webForm1 as expected, however, the user can no longer make any entries in that form, he cannot close the form and thus the website is blocked. The problem can be avoided if a focus is set to a text control or a button control in webForm1_Open. for instance: Public Sub webForm1_Open() ?? ?... ?? ?WebButton1.setFocus() End Is this a bug or a feature? Kind Regards Andr? From bsteers4 at gmail.com Mon Aug 22 13:55:21 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 22 Aug 2022 12:55:21 +0100 Subject: [Gambas-user] edits not saving In-Reply-To: References: <7c876382-870f-e7bf-e91f-f40eb3195e63@gambas-basic.org> Message-ID: On Sun, 21 Aug 2022 at 17:39, Bruce Steers wrote: > > > On Sun, 21 Aug 2022 at 11:55, Bruce Steers wrote: > >> >> >> On Sat, 20 Aug 2022 at 15:43, Benoit Minisini < >> benoit.minisini at gambas-basic.org> wrote: >> >>> Le 20/08/2022 ? 11:25, Bruce Steers a ?crit : >>> > >>> > >>> > On Sat, 20 Aug 2022 at 10:08, Bruce Steers >> > > wrote: >>> > >>> > Anyone else getting little edits of a file are not saving? >>> > >>> > Ie, maybe removing a line or commenting out a line. the file does >>> > not get its "changed" flag set so it does not save. >>> > >>> > So I've been pressing returns then delete to make a modification >>> > that does make it seen as changed, then it saves as expected. >>> > >>> > >>> > PS. this only seems to happen when a project first loads. >>> > Ie... >>> > Load up project, comment out a line with a ' >>> > The Title in the tab does not get an asterisk * and file will not save >>> > changes. >>> > Press delete to delete the comment char and the asterisk appears. >>> > Save file now works... >>> > Then comment out the line again and the asterisk DOES appear and all >>> is >>> > working as expected from now on. >>> > >>> > Respects >>> > BruceS >>> > >>> >>> It should be fixed by the last commit (some code I forgot to commit). >>> >> >> Does the change event get raised on load even if the object is locked >> because suddenly my text editor is telling me i've changes text when i >> haven't. >> Respects >> BruceS >> > > If i change line 1584 of CDocument.class in gb.form.editor to.... > > If Not Object.IsLocked(hView) Then hView._RaiseChange > > Then my editor works okay again. > > I tried to make my editor not get the change event on load but could not. > changing the CDocument.class worked though. > I managed to fix my editor by adding a Wait 0.1 after the file load to clear the Changed event out of the event loop. Seemed no matter what i did to set my own changed flag to false on load the editors Changed event fired afterwards. Using Wait fixed it. I'm going back a few years but i remember VB had a DoEvents() method that let the event loop run while in an event handler. can Wait be considered the same? I've sometimes found using Wait on it's own without 0.1 has caused a program lock up but using a time fraction very much works like DoEvents() If the Answer is "No you should not really use Wait like that" (Ben you've often mentioned i have used Wait where i should not) then can we get a DoEvents() function? Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Mon Aug 22 14:31:23 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 22 Aug 2022 14:31:23 +0200 Subject: [Gambas-user] edits not saving In-Reply-To: References: <7c876382-870f-e7bf-e91f-f40eb3195e63@gambas-basic.org> Message-ID: Le 22/08/2022 ? 13:55, Bruce Steers a ?crit?: > > > Does the change event get raised on load even if the object is > locked because suddenly my text editor is telling me i've > changes text when i haven't. > Respects > BruceS > > [...] You must call the TextEditor Reset() method once you have finished loading the editor contents. It will prevent the 'Change' event to be raised. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Mon Aug 22 14:38:02 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 22 Aug 2022 14:38:02 +0200 Subject: [Gambas-user] DataBrowser & DataControl In-Reply-To: <58a777ae-41fe-4f76-7d07-57e9cd3cd64a@gambas-buch.de> References: <58a777ae-41fe-4f76-7d07-57e9cd3cd64a@gambas-buch.de> Message-ID: Le 21/08/2022 ? 18:45, Hans Lehmann a ?crit?: > Hello. > > I am looking for solutions for the following tasks for which I have not > yet found a solution: > > I use the controls DataBrowser and DataControl for the display as well > as the input and output of database data. > When I enter and save a new record or delete a record, the DataControls > are subsequently empty and no record is selected. > > Tasks: > > After deleting, the predecessor record should be selected as long as > there is still a predecessor. > After inserting a new record, the new record should be selected. > > With kind regards > > Hans > You should implement your own DataBrowser then, with a DataView and your own buttons, so that you can do exactly what you want after an insertion or a deletion. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Mon Aug 22 15:27:05 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 22 Aug 2022 15:27:05 +0200 Subject: [Gambas-user] showModal() ersion 3.17.3 In-Reply-To: <26e9981f-4ac1-6596-4644-8f49bebbbb44@gmail.com> References: <26e9981f-4ac1-6596-4644-8f49bebbbb44@gmail.com> Message-ID: <5c03ea76-effb-3fbe-41b8-94cb503cdc26@gambas-basic.org> Le 22/08/2022 ? 11:10, Andr? LOEWEN a ?crit?: > Hello, > > I noticed that in version 3.17.3 the behavior of .showModal() has changed. > > webForm1.showModal() opens webForm1 as expected, however, the user can > no longer make any entries in that form, he cannot close the form and > thus the website is blocked. > > The problem can be avoided if a focus is set to a text control or a > button control in webForm1_Open. > > for instance: > > Public Sub webForm1_Open() > ?? ?... > ?? ?WebButton1.setFocus() > End > > Is this a bug or a feature? > > Kind Regards > > Andr? > Can you send a project that reproduces the problem? -- Beno?t Minisini. From bsteers4 at gmail.com Tue Aug 23 12:52:51 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 23 Aug 2022 11:52:51 +0100 Subject: [Gambas-user] Custom controls, Non-String arrays in the IDE In-Reply-To: References: <20704014-f3ae-117f-1ae4-21db9cf59a54@gambas-basic.org> <3f4dbd14-7c9a-ee32-53bd-741fc9ca0fdc@gambas-basic.org> <93ce71d7-83c0-fcdd-3c4b-3d113acc8fa0@gambas-basic.org> Message-ID: On Thu, 18 Aug 2022 at 18:38, Bruce Steers wrote: > > > On Thu, 18 Aug 2022 at 17:30, Benoit Minisini < > benoit.minisini at gambas-basic.org> wrote: > >> Le 18/08/2022 ? 18:22, Bruce Steers a ?crit : >> > >> > On that branch i have added a new property type called ListOf >> > >> >> Maybe it would be better to automatically detect property kind or >> datatype that ends with "[]", and act accordingly? >> >> -- >> Beno?t Minisini. >> > > Yes that's probably better. > okay removed ListOf and added some Case Like "*\\[]" conditions (Like *[] > is used "after" any others check for something ending in []) > > So then any unhandled (by you) array types will go through the > FArrayChooser dialog and if not handled there it prints a message that type > is unhandled. > Updated this and submitted merge (it's guaranteed not to be correct ;) lol) - NEW: make ArrayChooser gui from FList gui - NEW: use various array types as _Properties in the IDE like ColorList{Color[]} and FontList{Font[]} etc to set a String[] list using the corresponding chooser gui with ArrayChooser. - NEW: additional array type File[], Synonym for Path[] for IDE property purposes, gives dialog file selector. - NEW: additional array type for IDE property purposes, Dir[], Folder[] , gives dialog directory selector. - NEW: additional array type for IDE property purposes, FixedFont[] , like Font[] but only shows fixed font selector. - NEW: additional array type for IDE property purposes, Audio[] , a synonym for WebAudio[]. - NEW: Enable drag-n-drop on ArrayChooser for files. single or multiple files dropped on list will be appended. - NEW: Show colors/fonts/images in ArrayChooser list. (WebFont size only shows if px, pt or em sizes are used) - NEW: if invalid array type is used then pop up a message showing available types. Supported Array[] types are... "Picture", "Image", "Animation", "WebImage", "SvgImage", "Font", "FixedFont", "WebFont", "Color", "WebAudio", "Audio", "Path", "File", "Folder", "Dir" To be honest i'm trailing off of actually needed this now lol but i still think it's a handy option to be able to utilize the various choosers for lists of various types. The route i'm now taking is changing the GradientButton into the BrushButton and using ReportBrush and letting it use all the types, Color (kinda pointless) , Image (nice img background) and Gradients (monochrome gives nice effect) PS. i thought the idea to be able to call a script/app in the project dir was very very useful idea for custom control editing. the changes to the IDE were minimal and it allows you to sit back and let the programmers take care of their own editing needs. Much Respect BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Tue Aug 23 18:47:59 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 23 Aug 2022 17:47:59 +0100 Subject: [Gambas-user] Hand drawn WebButton using WebDrawingArea and gradients Message-ID: Bwahahahaha IT'S ALIIIIVE!!!!!! hehe. Finally i have a hand made web button (supreme respects to Ben for all he's done with WebDrawingArea) All i was missing was Paint.FillText and Paint.Font So i've implemented my own for now. My FillText() implementation sucks as I have no Align property and also there is no no way to get the length of a text string in the client browser. "Best guess" method for now. but got a working (ish) button here with the old black/white border switching for pressed state effect. a Text property and gradient fill bg. http://bws.org.uk/cgi-bin/WebDrawingArea.gambas Respects. BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Tue Aug 23 19:02:00 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 23 Aug 2022 18:02:00 +0100 Subject: [Gambas-user] Hand drawn WebButton using WebDrawingArea and gradients In-Reply-To: References: Message-ID: On Tue, 23 Aug 2022 at 17:47, Bruce Steers wrote: > Bwahahahaha IT'S ALIIIIVE!!!!!! > hehe. > > Finally i have a hand made web button (supreme respects to Ben for all > he's done with WebDrawingArea) > > All i was missing was Paint.FillText and Paint.Font So i've implemented my > own for now. > > My FillText() implementation sucks as I have no Align property and also > there is no no way to get the length of a text string in the client browser. > > "Best guess" method for now. > > but got a working (ish) button here with the old black/white border > switching for pressed state effect. a Text property and gradient fill bg. > http://bws.org.uk/cgi-bin/WebDrawingArea.gambas > > Respects. > BruceS > also gotta work out how to disable the browsers default right click menu for canvas that gives "save image" options if possible for this kind of use. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Wed Aug 24 11:20:54 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 24 Aug 2022 10:20:54 +0100 Subject: [Gambas-user] WebDrawingArea having trouble getting / setting size Message-ID: Hi all So i'm trying to make a custom button using WebDrawingArea Everything seemed to mostly work (had to manually set width as it did not detect it just height. but was okay once set) Next i copied the code into another doc and made it Inherit WebControl and modified to work. but it doesn't :( Now it cannot get the width again. Paint.Width remains 0 thus messing up my drawing commands :( Any ideas? Many thanks BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- H4sIAAAAAAAAA+28CTyUffc/fo19C5GtxJC1JgZjKztliezKvo7dWMa+jiWRQil7UUqyJlla7FuS hCyR7HuFyJLB7xrSdvc89/P//u/nvn+/19cps3y2cz6fc877nHNdM3MGaaHgZu5lh7KRdUOa8wP/ DYKDJCoquvUM0q/PW68FEEJwASERYWFRYQAuIIgQEAKgwv8VaX4hD7S7uRsUCrg5O7v/u3F/1v// KJ35Wf985pbuds6ov9YO/jP9C4oKCIsKCQgJgPoXEkUI7Or/76Bf9W9l54a0dHd28/kLefyp/kFl f9M/XATUP2LL/+F/oQz/kv6X699QAYl2cHd2gZ5Aubv5GJMpWzqjJPn4+ezAZz4XlA3ZPy3gLv1X 6Vf/tzF3sjBH/xP4D8Z/QVE4QlhwC/8F4Lv4/3fQr/q3tbOyQv6T8X8L/4VEBXfj/99Cv+p/B/f/ Sh7/Xv+CIgKiIr/GfxAOduP/30GRGqcV95Dtx4X5PcpKCloAAAFwfyRE4JORW5Y1+ESAllPWIQHJ n8QqAgCggLKCrI536ofryo5Wyr4Dm3udW64lvb1g3N/Zr9sv2dHfcSMexi90CD8cWi1IYCgIrVrq r1ixWhkMBQ5U9HDXEq9ZVVWsmZFU9BKvcukfsj1Z9NnE2Liz2EVZMO7Fhw97peqiEvjjlAUfjcpV zBJzKFlX+PMLrg73jZAvUW3UV+LJUteH8fsBBLIwKhqAQNNMCaBWCGaDyFAThhMAsvsY/7uNAgV+ IUH7Ns48CmJ/ULlHZOOY+qZ1nDS6UVXKZq4t5yK+Vlbal8SOCYuM5YU2HzH82xIB2FFhceIwDWlu 09aYqMIm9P2pxol8bs4qpgNrVbSme8VaK3k6J8wFvSSapVpP5DqVf3be7CiqXJ7ll7oCRVXh9Tgy lpV6ztvdTl1JkpIWX2WypBZclhIwtr2YdmT9XNq870ebDa8AKbaTcbBNE17XC80SBediwsKuTt9s OL6x+tlBS0XmweLKor8bgm+9PIK3uxv+LGhBcWB9njU1gED2YtleBhny4KKH0vB+vESR1bsVMZcc hrQnCA4UUX+SbvVt7RGuqlqZ0q9/+QhlshYjLb3+eHo2td6la4Y2WTqIwsb+U5oNKXNphcd0S8vm PCvLuvfa+wwSOVcnCPS2b24BU09uzGmvd6Pdqgb4cbPazlrEzyKXVdkJgcvHUZ88xPlcPhmclZMj UeUM6scWF5dIeWDDrgmImNwbEN34MulNytveeuWgtK+kMyR1ec73+hXHrk33L9zsEXtF9xMYmQrd L27gT8XGGejayXvafxKiFNbPtB2Owm5i57WisX7xfgJB4lLzaql0OYySrY3Fn5mSpaVPk/qo5Kiz UGW1toxOyqsLiLwcs93ktb/0wWuzX1F6dTbBj1sTkX8U+GSgqpKuKXTfZMSyYCLImlZouVTkUjFR 8zu/cD09/tNfDgCZzGmrQ+IO8mubSayBhx/DXbFXJ87tS1IvSGMtpeaKaT3o99IHEt8AcZugvls5 scBSG0i8cT8l16livpWHRSa10agd0/I4+NLrg88c3hc2tTZyB4mkM2GDDnK2Pgw6tso9AsR1t5oe Eoa9/LxZNMD9MuPc89Ge4nPwJJ9n0a1BiW99FBuLOrpCWSY5xb0/F5szcu2f6QvCKu6jgr4cbDgK rJ/NiQ6T8czdaPo0y6pWca86z05KOsVbsBPba8G4MMv9ULA27NrlL5tacKXLrIwHmveptvI8K5zH f2ZBejiktXPgik33/hNrHSMLyawZs/xrB22CGicke4kH2JUtysYea6I0JDCJL43Ig7uyiZJ1pTh7 gwJHTVnRH1ufzhYMxLWOTBTcGQEMFooil5HxYS824mO1LZnuNjY+qGzEv8RMg0fBfDFmjesYZaw+ mzYscob9RMhIFxqQKVeeByyOoYuAT/EyRc8VpTZ7bltY7l98ivXc8D12hjJVhPo24+ryF4MMf/+P ZW/9xur03e+j2q8wxkwuFEoELCWPThcbyVgI9hZI5WjNqtSqvyY1kh1R92N+6ptsHDMMqUPQa5EZ FTDavm44CpFc9ViUThuQOjWTs3x6ZfPL6kOLWLTwvZft77SL9tK6Yvw53732lsvuF095RjBZEBfZ NqB6sVw6bU8iCalq3tEyyncyhPgQDG5R0EdjhSTtkdHFZK1Yj8unAz+vrYRdH3cWOihmRqO9MOvT EsNb8ZBZUvpofmwMZFLlqSYi0KiZnFeQLV3KdP+jBMEAPkmbL0+iiSdb817e4ehcEbNZ4+NfEAPV elP6UD1+hDLIYVBI2h5J6yB8w36yjaPi2eaEWaxqpqariLWy1azyeUE1yxkHK4iHSP560Qh3LtBw 1leSCBMqRMnrk72qmCbJ2mo2qLLQ3BYafCRK0QXOiEG0F96ZtSkKOp8QMGmWHj4MUbjxqBHgYu28 cg8WTGo9v8nWIDxfxhpT6CgTv8Zgr6IymksSKbApHQUhoeRlTBzVrwt0u5hU9czYSHHmnMSaPMlN 4c2ytLTNAJYYMRp9uIb8PCBXdHWsqvNKpIHPvnXp1s3Wh5tM11xhy0JR+IyHSoPRo+/4i0K5i4CM Z9KhVhb7LBlzBmzMVveNKty4oT4/pN5NeL+wm15WipEEtDRG1w9jVRM85eh7ZVxQmkV/AeHNAu5L GIKEu+cwVw8VmZwqFGhJY9fyaAXG7grdqyHB0BBMiRMSiJVdUFOibLpG/Wp/yp0QJWtBjgS9WGDC 7QUeI+GxRml1T6kGnf4avDCZSj+KoB61t24BEiz3xzd5Mcvj0ngWuo9KgDLKaw8gLpHBd7nrJ4uL YJim1MB3YW3XQmWOFWqnmfhNXWlq8z/FXalCpeIyp+l+IwYGeEyWNcH1j71Y9Wafv/VWqpkBAovo tzFlopJeuVQ4MT3TN7sxMSD1+BYJt15w0Cr3ge7HUfmzeM9mJA9HR2Y331XfQLjlB3hxadOy2qhu uEskFfAzJprpn0svwVsUvxbeuDJKXMVxpvFO46j0zL2mguKnr7vHM9zTK+h7VlY/BUcRSvbmzZtB ZQHRITzV5nvGV640syXVvUoT6w6rvH7nU8+z9dOm+5PG/RFc8Znzn1yBptFn7JgXMMx754svPNcN KqzZNn08sHL6nLAP2EPQ9ps255R8JaZc76okMchcARrzJnp6fMrmHGhzmj8bY3jFV3M0StTgSWaM ZM/Cahm1Z8Wlpda1T2HuRdnA219nLN+WVRQ//I6po+HR8K33Rrxaz+ctgxGcPGg9BV+YFnlIpI6W stW9ZtUF/ldLrYVri6SkgMXFO4SQu0O9RLcJJEg4DEgma1i5Gi/4L44maFSi8+64GtQ+f6gZcWHO wbzm5IL4pT1KkQKy6VHBV8dZbyIqL9CScLVDOfGhOocvRyKuRTh+4j886MUSKssgvRG3WfxWllr0 hXRl15OE/QSpJ5s0TwgGYgqbqFR5PykXH7ZZ/dTbgazx/RRjt/FeIQPv0Po7fy7zXrexF7pmh+WD Xy8qZq/q8x1zvc5ZTiDgrPcc75VYPISXliJAxI3QTQ8437VkEDdBdFM7QHxPq1vBPVZB0aHPNozI /WEvHuFfkeV/PwRTow3JWbTyvPT6BTGQt3rZgIfdOZu6bg9arf6BGz2moXgPnGTlslLL5NtR9VCv kSjPB9gBBTJnuagJ7k0F+5ixh098o2PUNtoOV7/VMhfxDWLJ5Gy+lR1AMkyWe5swvfCo8FSI0tEy TTkzd9lI0iATxS9FAz4GTw8phpjlHmhaeS6Rt3qt/iUUmt5N8Eyn2abrnIL9Uoxp0OhC3Dg3fZVx MYCIRgJa0IuNCZ3Wleod2KnR1kZKrjxME9f1kWTpzf0HSvc/cIh4+5k7Y/32amRftYohsL9PKxgD vfKc7NnE1MKq58H61qMDnXShsRljjb5JBRuG1/kLVhX1gsOAsAv4WSFsF7n8pOLShYN8+dqxdU6D Xe/32Boy50tevtu930tOfmLd/SAm7c6Hrntd/VM+nY/ci2J4k8KEXipS57zMuw8gMm/2upwrZDyx eHM9MIludVI5dXVR1Rq/ZRry6UT41KiumkrsdQYLDp3bBiaJX7C08VUXRldJhx/k+lOY0TTrJItd GEvkbxUwGRI1YUh/Ng1xU13a80KQ/K5/YMDHVM7YgrmMJvW3cqhrhOkCe4r3yuw7tDCmjiSAG5xI ZLWQiqpiDKUeccB+9nE3xrwuUNOjOm0f+Gk10vBZXhGAeH4wVskt5cv17LnjY3dj1AOvG+gExaQF PbgtFrVkM0tsFzjchT5yFLhkBweYXa+ITL1IGBmfgaSPEDJ2LjnU8y1QhrAbsiUanuXg5gpaeqS8 QFuaaOgAsVWVV5sUa+oeVi/Ywyi8wmzzVjDR2yl5nDvieE1eCYBIdWU0yozHmKClUYQykxLrZQeA 0Txg8Con1MfAr6rBnppkmM9lBmRbfe14LIcYknDUMNLB+gHBbQER8FzyXfHpq6Z76lIFlPjYCNIi uk4piVcoeOVSAs8tXqWdC46pJ9F5mKZZFVOGfpusUqUvIBZavRBnnMfGvC4Z+PQGNqOysZLmwhKt V9LxvfiJYQIYNBFbu9MTd2SVFaGZHmeiKQEikGW73wZiK2aZ8SVAVZ8cLtya5ncdIaUJfARNtknF jzP06oh1xcc9WRs3HtzYTE47pRTp1+eBfTlg8uRdJMkw8wbvRmvP9S/qG7OzJioe/frkMrVvvIkw Y10UWZWtrfRG9KSR8Mi9z0kq10PXuo8zyb5IOu4EGW27HJDkOd90A79hhiC/MJufRiCEI3hflTS2 vBKfiwplu0ggwPpR9WDViYvxq5lBA4PZUmyEWB7Z1MdMrEGLfCYDD6BrTR7n1ajRd+D0MicNqODl cVR8Bz9QXWHUvGLl3OfYNZ8i/UWY4zo/L1opV+JcIYCw/FDr8tk2CGa5oinIxe9YWzW7ueEMKSTm Iurezy0LCxnWB2iNPLFaeLI0yPGKcMjKWuWafFk04ZuBJ48gNHXMvKmEsRMPWvzkBVAfJ1Y3FGeH L4l6vvappezcs7cU7wFgzRjE0XpjperZLDHAxCxLRraxtzRUzhBgYOOkvtAxHnjjxax6EZmFN4GB mMxbejIwWT5xcaFYKnZ57fqiGj6UiQ/scj0USwivhtGaZmA3NIvTFqkmROEhifjd9EAtR1mk69tj Ivs9sOMxG74fmSBMnvEiLCFlZFYQI0gffI44aM7Q8oR8u7M8l00jGYkF3aOFqGBU8ovZ0uuFE4RJ m3VHwwiqOLfl7ubWWwUROHOQ1XWt7CH5nPTmnAu71FKMsz2slB4nN90DIJ+clnqj7YGiLPWZkBBM t4KvE8YiqO7oORjGQa5aelgEbUcOtVt3ZxmBkliQGhkAb9uem4bwcIzi7ZRk45/0McfH8bGuKwUJ kgQWkdib66wJkmF35Oh/LtUeyXFCi5+wf6Spr0gjZyXgIDtdPWvjBiG5VfXKIh19H0beaU9X4sTv x1NHR1JLvR7IqrnvqB/PEXJSDDpLL8d7ud+rsKKi4v1N6jPp/aiR+ZHGSfesMyP6sYAYcV8J2BV9 /fp1JNW5Mnar8utUhJBIC+25tSQ9fJpzmZPLQkgcn1gAGoEnj4eBklHs9MOAEB44B/BzJymu8Soh 9IIaKOEDXKfGKfitwX1rgVzkuP48Ig4ytbZZGzI8mvrMwWUhD4LHhCS8l0kilZRWXPGk6UksguF7 ldq7aUiV7n20bmCkIGJMrTajKKkeSmTObxpKJoK9NHMheqnXt6kWppBIQsJb1Op2oCEgBQpxIVcK C2MgZ17bu/QFsrQGoSSCHAuk4Fd5fYg+gpYTUA29aeV2FYbP2SzTUexSYDFi0lldnh2a6VAtLF5W 2EvLq0rQaxKmRHL1KD5nRxndSIVaLHBW9mEDFU2wCfVIXYzr6DkxxrAJcuAyGRBYAvTcO9YD67ON h+U+op+OjrzSdEaliIx3L3lkNMNQTgbEgm1er/acrnXsvtIKTSUgFxoZO2cZvC6LKYgmWnksWSd6 nc2gltrk6mNAeRqPJOkxBKN6sFcBXidnxsgJF6ttg9ct0FKhDu/rOkX/LuuJ9+vcwdC8wx+7ma8e tUQiHGAc4ZohDMasQRtyHot5x1N6Dh8/xfKmPzQEc0QBRoA9mz7Cq705VXien3LNu51puI+WlTsQ MdLNf5lj+i57k4k5kF0SHCobYSkdzso9SYR8W/DINv6qg9mnMVt9Xs4wAl/ZizbcLFJ2n+dWhwC6 ZgwDt5kjpf5ayECrFSSXOhB2v5tqbmwICFqdJlA/Jg8eODjB/OrbZ+WHId6FVTk3YsADW40879V1 ZCVluXvuegvZR92DOh/GSAC2awOV4OSJ1pj5onI+Tz+pd/ZXq9JDko8M33nLBB4TYM4OJ6F9vxTg 74Oo4iaWxFpURiUYsxbGiubftmBro6KlqCE4X0sdyhPcxCTHtpeL5rguMV0fxgl2klrpntQI9GJh H9Wcfk6MOqUvuHEL6gZqmkFVJORs9ZFl1H4a4EgVVHXutlCdTR5L4AO/EOdj8u5PvfnipGPCaIjy ZCMqvX0u1ppHmDCO1OYdZhF5fv8UOQ0AhMXa7pHH1pPfWU3zkqSQ+3zQ9oM6fVWLPJ5ZpG1aUOns SJEelfTA7FBULcQg1MU8/x4BPIKGIoNAk93MTbhWJRPSbIa+RHobST7HHpxhHoEzgE5ZKlOWPa/m DynIhRS1jU4gVp2ZyfD45jOf+29kQHCi8VMSi5EO3/Gvp6lSph6JC2WxYNMsUushSvFTlcGbXNm7 YV8QlfbhXpliYww1F14qhH7i/h5KITVtLeo5azZyM9JJiaDGqLmxm59WK6coCu6sLtCOZE9o0IWz wSwjWh7sSRESIzrv4DJ3IJf2FV1UIAwURUJq/2DCmrF/oJiMA2NNDCGg2zqYyBxdbX6/85522SnQ GfCOteKUl1Bwei5qne/Yu05h6VCyKwIiZFmRR26o4k167w187BeioOSo54gY1xDPEt5sXX68smrC kFb8pefD6ptRYiCUFzKaqAJQi1LlERnhycLuD1DNtcxTqx+rhfVKk6dCoqs1C9WuHtXtawUIIi9w g6coC6Mmh7BdJmy5nboeJHqR5un7L1m9XDdY/EDXe69zUKcgie5V8kAUYa9JRKOiPNa/IErdMOD9 Ev5irdV775ex+aaDiWfs5NpwWBQvw39xvt6cNa1U575Dl23lUmT3KZF3+vwjsv315cn4SmalDIPI 1sbm/JgSBgtGSORVfQ11fkaaT8NHpt5XFbIOLdRKHY4PvoBMtzfd9NxLI7Y/fGUKxVD5Vl04SLoK rnL6oIMtAwaGeSR7MJg+Ymk9Zp0x5rjK2rI1yRfXTOzQY8thk/rqFAfOp6Wa1dZvwpEuizViNhsx YZH1TPbRpHELjsh+6IW9nCCCkepeXr4tqVBbOJel32Ctb2TXgvE89ZSn+jLDUDNoHoVp9hs3glQW HCgaXvsSdSRmADxL66r6GMKNzc/ZFYf464osqVrVJby1EQMcXDZZb7hAU16pDuV6Z1hgVm41xBEx f+YJ90q2ZFWOCSaaoSZKoSSsZDyxJ18s6zjXbYLHsmH9N+oiNeqFGdaPnNcMmTBmneEkd+Kvmyn0 u3MWc0FZiXnPIazVMkFlz+zQgh7rk3XXtCCaUCFkQA/RRZ8xYLZ33V/5GeFZqKa9XikRG+V5tsdC 9pvJTsOaRRdnB3JGRvw8nuqhQaPl95MC1bjySeMRja+gfupN+xTvvOnh9ZbDJUdEgHRhimt3Xn0W iKAJa1o9ExNWF8l6U5jCFU7h+l6xh6fv/sU3UgVKDmvE5rmIzSFAemBmGNTOUuYKNi4RXOlAVu/J 8efUomD8IxxuJMXFgy+Qp0z2a9emWl0LpgeJnRHz86cPOr82VpAbTHlJnVbyxTtwGOmDVmsSnPPt rz9vKIydlKWl6jICqhbyiWXUnoMgpOlWCLQ7EC+WHSkJ/nSRRkaJbu7tB+KV5gTuldH0840fQEAf NGopEBCX7xTQLFajAdAhBFV48x2Tm4FBJaRmB5jBY3TOv4aDQxaRZh5D5gJfqQrJ+bnbklWXGW4c S/BkAjfOkvvIuwdmUxCgy5L+MVEMIe79DDpaPw9In35dRgwxKXjCEH2cnkYW5kKjIDZ5fmU4Kybt g8d8mWRVGzxMtNaGWKeqyDolS5wrlzDvFM9+DoBeiZqcmUJHKAb6yJtGxwk/JhmJsz+9NyffaF06 /vRs0iaohqe2JU1Xz98ZK86EKDRlcSxjXc+Di5NYJz4FGYlR4JZXN70+CNqe5xrkNBfsWtSrkNyT 9FVv06GDeKS0wZb8DYWsrYi9z+ODRbtVvJ9o1iQfbw95rKvXlyJ185bCrQN1YowEuANulZaef7U/ qyc0+7hZ4hjrfk68RpMwS2k5xJjvsSdDjXjl8IZqaF1po0nmqqm77n3+JDbCpEaEDr08UpCHRIzq Gd5ZMI4yKggQmV+0Cq9h7Ua4VI4PB7acc4jGflRQWrmMYVVL0zHJJfN56FrZyQLQgAF75XZnLYpf JlGJhI3/9QZGcIpYM0T2KvTGp3COD4NFIJzVtwGmB/eAWqgDA9cIQkz81Ho1B/2ECtDDlcspzPto BkQ+aKSOnYzzSadJRuYDSPIDnOQvOf0Hzyq51zJOZt95KKy4nvJE9uIZO6KqYYmjrBVnSTi0ak6d oQiP/DQbqgCN0OWvMaHO+HDO+93n+fohaA7qPdH8C8uXtekvgrpHszJlGx/dgZBTgqZ65bbmPJS+ 7Bm+mQbX3EOJsmomo6jaYrErGjfuGZ8vrIrKT3tEqXkrjMpmeh2AvvQJEkEF577oiaFxD2VUrKVe CwUK2qdrQUvNM4+Ig56UVrXOdhYjjxMCMxrhRoU3goOJqfF4raQ0ALlCZj9Kd2q2nh6woYivNmfy zzVRRhI75iY4KihjlFTTHAtjJ8+RfpKEQOgMbcvoAajqaNJsN8m9bJK+WpI0VkqXVE/ed7NHIPf7 tHlrTHrLJx4nEsn3CxeOJ9pJ4yWvL4DJ8JELBBjECW50lC/QmTty6XHUeiAGRW3pouw0k8x8XLfT vDRl6cBTW1hkrPebz/OVrKxVwpcuk1NHOhZdSUnEYmhcWq6cs25KDjJ8AKYdD/e7BMMbzNw+R9TX 7115gVQKs79wmSz4gtNg3knSg/w1G1AZ6YsdnwYWClqTko32nMn7eIpjDpbAKUYFST/QMFlSMN5t SpSCzn3yvCapFOD5sq7KV4UnwPig0+kytd3Mx6LIMJWczyGMDvmkcTmqMp0icx99Cc1hOvdbYhpV gltrRMSSp0aD8qZrouJOETIwnOPDGJiGEWq4KAEw6gZGWD6LYzizP+hnmTNEixWBmGRoCujpoior 7zzpMIcXJJlPzg0TmPM1m8GJ+kZ5kohEmulZXp/quSfucjTQUmpNbSSROQV5IIXTj5PwtTEOM8w1 5DCFbx73+eLQl6qP7sCBKT2TLxKpQo66zDhcWnbgk3L4PO9hE5EgyfrBPFGXJB4W/fnBpe4Zvnd2 8fPV1nRENivHWjrW5jszPi/UCIiVHBYpOcwBjO8hhDDIpObXd08JlBsts4dfriptlBJREXnnePUV j/79ssPE1hqFmCv6cm9EwHT70pVz1/NDS0TZABUV4Kmm17xZXtiShj5dge9GcbuH6CWUt1bxJfdZ Odqup6VHjqysq9JX4ZHQ6h6oHKB6tcROUWOVSW8WylNdREul21jld4DO8apj7iOuiwj69KPB4Q7D T1J0n2ry8zJA+4WoNYTxS24aAQ1XdeezJ0amCsFK0TixiAT2UtNLVXi1Yz9wGEjmBzcQ8TFYlMRS QnJJp3nmYWAQfT0tp31aFQO3lJT0+1oBsXeo+PuXTzYWcw4mExl1VFn7fPFZnH4aKouxaWSpENuf 9TTARajvUv++kur7JiX39Us0CykMIGVAFmdP6mUgep2xsnd2OIFYMpWgCDUnPn0bDWLfCEPjJKFA mGNNjxnoCSr+JR6rvh7vzijiY98sUIJaaFuyZm285aKKv3yYEsxyxcYvGivmqxXi8o1xJQ4OEKnK K2K4r7OZpHoz0PerskMWawlaoyWV7mWvYM8OFieHWjedbNI5YHO2IeuMKTvHLZ0ZP9cQME0Es/u0 0i8ruZ2NUfkxSrnRUwVthCpgtpuv3Bu0NxZIPPT47ru4l9TE+MWz73I/VC6Q3IvvrXi/OpfGufJY qK72JBNVl4p3+bhZhmPGOKMLBSWpbunAHouHRGwmnroLsXcb5d8v4bk/Jblc9ii7POW21X7vvPHh 4uSo9tyAxggHWX2MuOBFGgk1v80jA5v2pjfCDC5377FYlNNdRL/P8Vj2myDF3KQBCh5X9FJiQ1j8 m+UUN3W7LQ+kIMmXnmZsJm9VCi8uBzKOuPpFgJHxy1DL1Vcq9zxpAwOHh1yoh5szXhM+K545PVpG PqjYpHJijbtQTBHED80S8L+ml+365i0oBE5Mw7aXPJhWugHVmvaIeDBXQY6dbPhIQampMHOc5ZNb /puPLaOFpdnGySPfiFOTI0O8JJDZrcnL/IeRzVWhj6OIHT6+OHg+MiVYD/9lMFQzxexhONsX85AI rs0kOA9k7qTBvbMP6HPiLmyk3YQOMj9b3jStN1jTDZbVPdzlKI9ETPOpRIlskgdKa1OYURIUgklx ujCJtX2GsQ5M/sRG6RFKMFon8x3dNEYsOrUGR/V60pL1L2FBPLrk/kl7atMCzMIp6+TG3iuuL0fa 6Tjig4Dg/UT/ZIuA3VArDXSr04I6M2BRGVA9J+sh4tsDGwEzJLITmwl4hJAJmSvxH02QoqnsZnec KkufU5oUPOrJ73GJ110znQui0gfQMiqdrfwqdarHZ/ftKfebN7xEI/Kc/jm902Y5jIcITnybIEyj z7KVHUhF7KckWgxhlJUwrMScsAQhyCy70K43RsYZ8o5qJGn64MOpTTDLPD4zVv9wg+tlGEFV6qt1 rM3Nj4krLk/IGhgrJN5nCJN0tMjrETe8duu3VhZ+jxNEDV+T/RWYAD+WVGiMeSlN7E58iHzWWXd+ w5pQOAVVjZQb2GA2Uy0GRHscP3A9t0sDE8CaIVXhpUX2RbniWBvNa2G+ujeQWSIWJTcR5ZZuZZm9 WegMK0vJ/oeH6GmelAOKJgjtOO2+wbNotbcFT7zReWHXs0/NbCRQgGcDWNr7HekwMyPlw75kDrV8 8p6nqEy/ASVddTeP5Ya7RPFF0cSgNVQ8ar8WWhXBTNtyZVrhqX5JoX5hoa7eOsmR+Hu+5A146sey CwZFG+UprM920HTVAAAFL+6zAPZGymqby11Heg7nWHOdUl+nwwZmxpuhMULxdqf5T4dCJqrSHzr3 C8ybtdSf7pRt0jm+4pjgxOzDFj5FbyQLe21fpQClp4m8anPDJK17kILIEr5ia8OeN5Wn09FHpFgv qOGlijCiVetuONmbpk4efOHO/qiScpIPS9Rr68AafuekTuoCk0eTc0fx3LuThLNOOq9c8uimVs+8 X0sywoibCV4bP2xI9EU2ZDBkxGPMTDSi0OTBnEHLiU6ReXB4Y8X0+6K+ZddXZz48PR4YRit9Uvri UD3e5cQbToNTpxXy7dKvRt+1YMrqJepipnXIFxw7kH8u3OGWRU6L2PVUDRAijgeclsvmU+Rm2Xjf Rxno8+qEA7WcEXUBXEz+jVb5RuUTzeonM0gdp+drBXhgQKYEQ36LAFiUPlxdDRYASNpleofgdaHC Z8q7BQqPOq4UgiWTecHEILSfM2vkxJTI23uAkk65rAmJS2bJG8+LpBAzdRKgW+7Qh2pTQd1j0epi i8qPM+YLWUf6aKlAHB7q0KNqjS5POsY80xk4m5sjYp2C9EO2B56oTGvCS8RfLf/g6ccwFdRZ41A6 YVk6PhhalizZyhTqkH1J8rndRwklgltWbwlfGUZH6YAMh6m4LIWeAPQ2+inzyq9FRgRusFDN3209 hivEn5SbZe5RZsJkOgx3e06vfO7uetBUub8jDQdAzKE2FQswOlQgrlAt7NPuCyAuxCSdVnrJqBqN PoAkET8B3J6tpAQFb7vMgEzeBGOHfwdTpm70ROXAMIVuX9XMZ5qKJ/r1GQ/Hg9proPHESMh4FbLP cKZi3W8dOC/fKVlm3VohFi6btKYVHV1JSm7YyFVxbP/gpuTsIFjPePpll7+BGabcq5dC+nsVhYhq dwSNXQgkC5SOI4QTO4ZaZjha5gxnfchj1O5dvThCey/EAUz9nI/JI07RgzXfG6tHSuaC8cmvu1MX ff01cVdWHhJBcDXX7c7GAkpf78Bb/htRCGl17QuGyAOzznqg99L10aX0BuRBwViLQWbte+fbJHf0 Uq7pQ7gSntgSO9a/kvxQXrwhOu/OyvN1jWKhzaedja1Lj3EXmWwZW0YX8O0/iRqTOwurrHjfDacq yc5+nXRWfLJSkJiiAQzJXUbkYAQzpDtAHDpXYxxMpBly9yCVbl9d3yXB7JIkz6brBW9yPWlo5tiD 46ANzTdi+CnXVkAGoFtTEg2p0pp2HoSD/jybnzA/pLeHKgXpeMbx09qZfWClxW44W2Fysi8GHnGF nFAmkcQdSwIGWaxbJXmogP993XMOveiDDlc9BQLbPs83ybLG9OFLHF9ygWvINunnUHt04SJf5Wdf fNbZ14X6enFpmZv2crJV4unXrht81qsBS/8T3fKNUbGp2ohDt5+TgHFE6vh7GyaM0tXC+KXmCdVV bLeszR6sO51pXxTu2piaTYS6YQCYpYDF05CxBau8bpPtYGBLPbGh7tNK3foUB84yLlOnD6a4a6gY ca1CCgnHq217LPzdXtWa8GMYosifEEwdPAcW/NALrqMnVmyfhF/PzighrBz3v1Ckdkrev59lcCa6 t8KxgHWwLgZXIifYWmeHBi5nUwaupEfGeE2XmWqTB6xc2Iel7mCDwBVh8kfTyk3R80sGTB/MER0s AZrsbfPsdZEyV+yneS6D4HqV75nA4KgnoUhiNsOrC3oqMnLse58/jaGN1CAJi5zWek31eiOE3w9S gQL31li7kH8+n9VUhW26mEi4se50Z/VyicPKpMme2dwEMF1LpOWthFO0zS7vDR8aq3h2pB1VyuCZ 10dGihG/FWqh1l2zXJIzF0ewDr/hE3ean9677XPbHlpQG/MGndWhwgzLHSIGM8gDDtGRD5BWIYAG VyAHx1OldIaGycyUSBZftq0Lu2wGoUBjRa+jOzXX3K3R9q77Jg64SlCRKnnFYdneu4cn7VGpaeVA 40hjTBuqlN/nTs5NQkpXEVwC+bL1jBMtWAVT3CIAw4x8v+xESNjjw9W6LScMQ6n9AsDaCdNvgvmQ felzexig1OLEpgWhJgfjZz+UDpDnBBZ9Q3JQjNlnljsP0hZ0Mvs754TPDuQMlV8im44mnbjYIlkD V3jS37CxsXEt/9RbiX0ERsAxwY+NeHmyEQoqEqico7U2skpWKZfCm6hB4BnFG1UJbzQCeC8/I2WA Oulkd9EaBVTiHXKaXgVzbdaKtirFPuGnnTy8RZslH6YNt67J8wHNg/cpOAmk3mazqfSFK95Tlzo1 48LWmV0N3SvW4AYqsR1heuiSg3+Zfn3jcQ8J++zkc3c8lsqJcMhJeBYKqmzNUBdOlLqy95aCWSlr urSlqtmbMq5Gz/oGMEnHXuo+sPLyJOFxOmLdPqOksfK6sfRoGXKFAhqKFORDSbrrJRQ3yIKjLPGa MbKEX+yjI/3oiGOSOf1jv2CdXxuf9Sfs9TWO6pNYmpGnrwoxB7pO0QeObCSTDT+il3L6zEdHe3af 77Uh36YaLxFdhgGqUntvDa82mP59sQ9jXn1gHobXJvtYK/lY0R5KXmQvNHRoNfI8iro2hrb4btWV BjvXcK1e1vtTBt73x4fX8w5XFGlWZ1gztVw5rFaRh06LJImnqLq8byOQi9xMGZ7Flc7qqKupfoYy MJ6v4s1MjlN9wtjeq074VNN87/QLBkNbDr+zzyrGOuRHTh+cHHFuAjzaQg6db2Z53v5ofbPFMCJ/ zEsNP/9ezperXR6q0WAF0WsSFue+ty232aUAQZ8laNLPf9/iAJgMgfY20v+ZDAT66tOdwZaf+hKG U2QcNrIn05Pe34T5NbO0t7NB7uNdVe1EFH1MxF0eac6PKYgm8n7LMpzyklrRJLEE+/jNjD1rJdhb pFnTd4mGRbi5zBQNVihtLkdfM197ZzhFKCl0SzhI6E3tyU80yDfGS7HxlKQYOpluUh0n2j46YhDA hQ1LP4gUDlAJROg8ymclJyjMnokJU7jlB7nhiiIq1748TZvVF5ZwFJ8zLsOKqQfW541WIwXKA011 Gd6hLhUkvcaqFcZkv6/iZMAQVB2+KexWWzwHxoOCbmPsl9MHnaTlHKiHzajNChjShSmKAgiIbnru PU0OaXhtQHDEicrES9Ux3un9a2aJrIT72h73b5QQ8BtmukFg+B8Pv+9Bh6rab4BLX2HwcuDDu0p4 lm2xN/jKnS8rBQlHSe5lE8U8nXwIKCV8JJrKlu3P0lbz96hYIKgqz76U6XDTiuneHRcvLkn4iQXu tSyydqzPM7yz5ov2NQ+QVYMUIEwQf6YJ4fCA0Izh1T0qGcQQ2IycCmPSYqhidNqnVXKyuvGJ8AfF 1HZsCGKTgwPQY3TaO+eOHzPNdL06TNUSAgCkRCIe59NuySQHeSoBbyGLn94+jCwTnEg4dmtMDmyz FR48CO1jSB8Ed3DyQcyFSStCaffZG+EhmLrrbB3YwnYsXTuWQY4PcJ1h6sDOKy3EtQYJcAARhlR2 GznyeJiy4tjxSilcA7ndxoy8rMxwl4DuAvft1QK8YoJDqIPxFBrqlLo3pAMjL4iFc8q/KvfxeUYI Re25u4D1y4qwbMd2YwgAVwfGbiy/Vou61KYHFOJC6ct9YNi6bNok4PbqBDEhpFV2FmnTZ5Nbw8ZX r7s83YwIUk3ezGQjH2S+xSN3t0N/CU52KnOV9uAH7pagjlgAqkffjl04r4dPc+R8F/ba7dCTT88X W1EhXVVzvowD+kDd85vCQaGIzbdsEJlcirjkNP+NVXl9wAIpdmeVFpwZDgNfDwoGHyLiiWRRuaWY HATZZwJgTdYqYX4kBIWIjw1d/ASyRqRbdy95SJSoCcN/vVN4tBp3X5A6dvt+INgg8G2AUS/hykLC KAF1nXFwCAZcATyOr/cWX9wxxmzSY42zCdgjjuPp//0fmN2+ZbuJf7y+d8wn1aQd96lj5RNgai1n FvIPfvB5l7bo18//O5qjbP7qbwH/D77/iYAL737/4++gX/Xv4uZsj7T8a3f6Z/pHwBG/fP8bARfZ /f7H30KHoIpb3/iDamwrHnrSzhEJFeKDk2mD5+Lu4SKpg0S7/2wlZHpIN7SdM0oSzgfnQ5DJOzu5 OKOQKHdJGws+D3c7x59b0HY2KHPHP47i80Ja/Nz6uwY+Gw87Mh1zC207X6SkIJkqCE8e5jZISSTK VFebTMsDJWvtjnSTtHSBcvCcVFY9wQvl9zR34/fy8uK3dXdy5Le0sTtqYYfiJ9Mwt3QAJ7pJCpB5 oJG27u4uaKSb59b7f1oH/yT9wf89LBztLP/57/8hELv4/3fQr/pHu/3Fygf+v/3+B0JYCKd/QeHd 3//4W+h3+v8j4vNZOpqj0f9THn+mfxFQ2d/0Lwi2C4iKigjvxv+/g7h34v+WhqHWYPQnI9PYCgJQ efDBQd7ZA+UOlUVDlVHuSDB+fuvV9rCAglYi5+aBtpXzcHd3RgmYbs3g4SWDQsH/yqgflwAbwNFK YEwW4MM9QiWh7BK2glLbU6E2zu7bg5FWUHYo14+8ucAGdzsnJFqCHxzPjlv8BMqKDJeguINy/CCO qR3Kzn2H/Ra/k85uTnwKSAsPG5CfjpsH8tvsn3eBG2eq7oJEgbO3JVU1t0CCouogvd3Bqb9slO+M nZW77ZZkOGF/7VVC2tnYbgsOg/12hIa5Hcr93y+yNWR7JbItkf8r+v8P/R/MxKzBI/qf8fgT/xfA +fxP+C8IFwKbdv3/b6Bv+T/OA74n/2R+O16x8wx6xSE1Z0+ktqW5I9KKBw6Dw0REYcIiOG874e1i jrL67mFyYK5t4wY6L65N3tnR2Y1PFWfHim7mPmC3rJsbmMYjncAsH+z/+o4PLCpAdwYrBShUzdzN xg71fT1tF3NL0BK/N/h9w5KdF1sO/6OAAjABmIgwTJh3q+erG/NsQY4STlgr0LpRUItt9PFA45b/ 2ea30QY3PWCHo7wzyh30SqSb4E/vfsNb9AfeX9EAxDshQRdv9q22X0/sXx2KkrObnS+Oz/YG/3AQ XwX7ETh+eb816I9HIyACE+L92reNQ6B8AnD4joC/F/t3gv9wuGo+0G2m7NtLB3yXcBtOv736nVRi OLHEv4sl6whWjjvngXvNJw+++XrcAb/VC+LP9CIghFOMOO9vlRBAFvC/rhb8Hf7/bED//3I/HP0J /iNEBIV2fv9HREhQFJf/CQrt4v/fQr/N/0DHcHZzh5KRKaNskW527ugdt3JzdvyeHTqj0O5QUw03 ZxccciPRuCRR291tG5/YD8NwsMD+y2icrZ2xA9Hmp7FfQeOXsdp2TnaOoG5+Goqzza+jyb6y9tkG oO/DdNFIKAca1/h9iBbS3Ar6Q9b1Q0L7mzFfse+nrNfNztPcHVzYQsMNiUaDaSrYK+fs7Ig0R/3Q qQSijdu/6LTVs0N64Xp+uZz2fYC6xdYpgk9b16ZATXji8G8rGf4pZTVFIb12Et2v60pCT4OPPy/N o4YE80g3cA1e3LrsuIE4JAebd0D/24jtlu3Ob9j/vfdrJsq9w4/vV/Tcln5bip0N/J7/9zXknN2s kG7/JjXHjTI9gUP9b7v9dsTfZoFMtJDWoFZs/+USqkhzT+Tvljhp7oj+D9dQc/ZAIxWcvbZqBHAP ytbQ02DVstXMp4q0dofq2CJRoBW5e7ihtiuQ78byQ8D8gdW/YaTr8l3c74vsiAvy/r6LbbbmdqDZ b1vKf7QdnJlsVztbJg9maCjkjlEIbXNWsHOCor/5y7Z3fW22+9WNwFnb6+yY0dbk74708+w/ONi3 6V/tbLuC3D7hr7y2toneEVHVHP2dFzjwawe4VdDOwHxle7iOm8/OdDATBXnx4BTFsz0YBj0qyMv7 M6uvgm3z+uYGW8y+SYbj9rXrd+y+zfqB33bbDkOyrUMw13AGN7zl8Ccdnc3dDY3BOYZwPgEYFM6H wD2IwqACxmTbyt6xgS0+O1Nx43EDhXAPIrgHcXD89kFuhfBvx4rTrrkbmIBb2YHeyCMAThMG/8TA P7sd4Qy3U3VtZ2swU0ciUWDp6oN0dHT2Yod9zeLlfcxRO6+/DTOG7cjzgzVpIS3dwQzWEcmDExD2 VQnfmPF+GwiWHI7bKvj63hn1FXhwr741/7ybLQl4tuVQMHdz0EJa8e6Ylrq1NRr5i2nBd1zmp1Pc GSoJFfhJHFzk4NkOIKAC4NAjOyNhUJ4d7fJDBXnBDpHvnbw4TNjZPNrd2Q25cx3ij/4l+EM7Lj/V cQZz0x/P5sdJ250Cv2n+atlHoYLf+reOQPWPzrV9Vmds7dy3QeiPAPJ11u8Kth22oA87OyB5lK15 vp3kjjXIOYI1H+zrIry8f9zfN1n/bC/fDwL35veH8S8G/Fa+bZF+khOU7ysmfo28Jz1QW797/EOG YIrLBnh4f8oBoDvg/iPS/buVtsX8D5b6r1/n+Vf0h/x/+67fX8rjz67/Cvxw/UcYIbj1+39wxG7+ /3fQb+7uksFx/7Zu7ZLt3NH9fh/3x7u3X+/Z/nCn9n9d/bxLu7RLu7RLu7RLu7RLu7RLu7RLu7RL u7RLu7RLu7RLu7RLu/R/G/0f0hppcQB4AAA= From bagoneo at libero.it Thu Aug 25 14:31:01 2022 From: bagoneo at libero.it (gian) Date: Thu, 25 Aug 2022 14:31:01 +0200 Subject: [Gambas-user] WebDrawingArea having trouble getting / setting size In-Reply-To: References: Message-ID: Il 24/08/22 11:20, Bruce Steers ha scritto: > Hi all > So i'm trying to make a custom button using WebDrawingArea > > Everything seemed to mostly work (had to manually set width as it did > not detect it just height. but was okay once set) > > Next i copied the code into another doc and made it Inherit WebControl > and modified to work.? but it doesn't :( > Now it cannot get the width again. > Paint.Width remains 0 thus messing up my drawing commands :( > Any ideas? > > Many thanks Hi, If I run your program I get the error: 'Unknown symbol Font in class Paint' Regards Gianluigi From bsteers4 at gmail.com Thu Aug 25 14:52:09 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 25 Aug 2022 13:52:09 +0100 Subject: [Gambas-user] WebDrawingArea having trouble getting / setting size In-Reply-To: References: Message-ID: On Thu, 25 Aug 2022 at 13:41, gian via User wrote: > Il 24/08/22 11:20, Bruce Steers ha scritto: > > Hi all > > So i'm trying to make a custom button using WebDrawingArea > > > > Everything seemed to mostly work (had to manually set width as it did > > not detect it just height. but was okay once set) > > > > Next i copied the code into another doc and made it Inherit WebControl > > and modified to work. but it doesn't :( > > Now it cannot get the width again. > > Paint.Width remains 0 thus messing up my drawing commands :( > > Any ideas? > > > > Many thanks > > > Hi, > > If I run your program I get the error: > 'Unknown symbol Font in class Paint' > Doh, oh yeah sorry Gian i have added Font and FillText to my gb.web.gui and forgot :-\ Thanks for looking though BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Thu Aug 25 15:11:28 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Thu, 25 Aug 2022 14:11:28 +0100 Subject: [Gambas-user] WebDrawingArea having trouble getting / setting size In-Reply-To: References: Message-ID: On Thu, 25 Aug 2022 at 13:41, gian via User wrote: > Il 24/08/22 11:20, Bruce Steers ha scritto: > > Hi all > > So i'm trying to make a custom button using WebDrawingArea > > > > Everything seemed to mostly work (had to manually set width as it did > > not detect it just height. but was okay once set) > > > > Next i copied the code into another doc and made it Inherit WebControl > > and modified to work. but it doesn't :( > > Now it cannot get the width again. > > Paint.Width remains 0 thus messing up my drawing commands :( > > Any ideas? > > > > Many thanks > > > Hi, > > If I run your program I get the error: > 'Unknown symbol Font in class Paint' > Commenting out lines 85-90 of the WebBrushButton.class where the text is done will fix it :) Thanks again BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Thu Aug 25 15:48:17 2022 From: bagoneo at libero.it (gian) Date: Thu, 25 Aug 2022 15:48:17 +0200 Subject: [Gambas-user] WebDrawingArea having trouble getting / setting size In-Reply-To: References: Message-ID: <583c6964-2123-d4c5-2bde-b7799923723a@libero.it> Il 25/08/22 15:11, Bruce Steers ha scritto: > > > On Thu, 25 Aug 2022 at 13:41, gian via User > wrote: > > Il 24/08/22 11:20, Bruce Steers ha scritto: > > Hi all > > So i'm trying to make a custom button using WebDrawingArea > > > > Everything seemed to mostly work (had to manually set width as it > did > > not detect it just height. but was okay once set) > > > > Next i copied the code into another doc and made it Inherit > WebControl > > and modified to work.? but it doesn't :( > > Now it cannot get the width again. > > Paint.Width remains 0 thus messing up my drawing commands :( > > Any ideas? > > > > Many thanks > > > Hi, > > If I run your program I get the error: > 'Unknown symbol Font in class Paint' > > > Commenting out lines 85-90 of the WebBrushButton.class where the text is > done will fix it :) > > Thanks again > BruceS > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi, I am not familiar with the subject but looking at the page sources it seems that the error may be here: gw.image.preload(['/cgi-bin/WebDrawingArea.gambas/message/error.png', '/cgi-bin/WebDrawingArea.gambas/message/info.png', '/cgi-bin/WebDrawingArea.gambas/message/question.png', '/cgi-bin/WebDrawingArea.gambas/message/warning.png', '/cgi-bin/WebDrawingArea.gambas/gw-arrow-down.png', '/cgi-bin/WebDrawingArea.gambas/gw-arrow-left.png', '/cgi-bin/WebDrawingArea.gambas/gw-arrow-right.png', '/cgi-bin/WebDrawingArea.gambas/gw-arrow-up.png', '/cgi-bin/WebDrawingArea.gambas/gw-close.png']); gw.drawingarea.init('@1.WebDrawingArea1'); gw.image.preload(['message/error.png', 'message/info.png', 'message/question.png', 'message/warning.png', 'gw-arrow-down.png', 'gw-arrow-left.png', 'gw-arrow-right.png', 'gw-arrow-up.png', 'gw-close.png']); gw.drawingarea.init('@1.View'); Regards Gianluigi From tercoide at hotmail.com Thu Aug 25 16:57:33 2022 From: tercoide at hotmail.com (martin p cristia) Date: Thu, 25 Aug 2022 11:57:33 -0300 Subject: [Gambas-user] Wrong windows placements In-Reply-To: References: Message-ID: Hi, guys: since last system upgrade, window and control popups are at incorrect positions (see pic attatched) Happens in X11+QT5 and Wayland+GTK3+ modes. Also, writing code in Wayland+GTK3 hungs the IDE. [System] Gambas=3.17.90 OperatingSystem=Linux Kernel=5.15.0-46-generic Architecture=x86_64 Distribution=Ubuntu 22.04.1 LTS Desktop=UBUNTU Font=Ubuntu,11 Scale=8 Theme=proxy Language=es_AR.UTF-8 Memory=7856M [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.29 GStreamer=libgstreamer-1.0.so.0.2003.0 GTK+2=libgtk-x11-2.0.so.0.2400.33 GTK+3=libgtk-3.so.0.2404.29 OpenGL=libGL.so.1.7.0 Poppler=libpoppler.so.111.0.0 Poppler=libpoppler.so.118.0.0 Poppler=libpoppler.so.73.0.0 QT5=libQt5Core.so.5.15.3 SDL=libSDL-1.2.so.0.11.4 SQLite=libsqlite3.so.0.8.6 [Environment] DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus DESKTOP_SESSION=ubuntu DISPLAY=:0 EDITOR=gedit GB_GUI=gb.qt5 GDMSESSION=ubuntu GIO_LAUNCHED_DESKTOP_FILE=/usr/share/applications/gambas3.desktop GIO_LAUNCHED_DESKTOP_FILE_PID=266726 GJS_DEBUG_OUTPUT=stderr GJS_DEBUG_TOPICS=JS ERROR;JS LOG GNOME_DESKTOP_SESSION_ID=this-is-deprecated GNOME_SETUP_DISPLAY=:1 GNOME_SHELL_SESSION_MODE=ubuntu GPG_TTY=no es un `tty' GTK_MODULES=gail:atk-bridge HOME= IM_CONFIG_PHASE=1 INVOCATION_ID=da2eb6296a024beda964cec7c6e5ab18 JOURNAL_STREAM=8:51968 LANG=es_AR.UTF-8 LANGUAGE=es_AR.UTF-8 LC_ADDRESS=en_US.UTF-8 LC_ALL=es_AR.UTF-8 LC_IDENTIFICATION=en_US.UTF-8 LC_MEASUREMENT=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_NAME=en_US.UTF-8 LC_NUMERIC=en_US.UTF-8 LC_PAPER=en_US.UTF-8 LC_TELEPHONE=en_US.UTF-8 LC_TIME=en_US.UTF-8 LOGNAME= MANAGERPID=2263 PAPERSIZE=letter PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin PWD= QT_ACCESSIBILITY=1 QT_IM_MODULE=ibus QT_LOGGING_RULES=*.debug=false QT_QPA_PLATFORM=xcb SESSION_MANAGER=local/:@/tmp/.ICE-unix/2359,unix/:/tmp/.ICE-unix/2359 SHELL=/bin/bash SHLVL=0 SSH_AGENT_LAUNCHER=gnome-keyring SSH_AUTH_SOCK=/run/user/1000/keyring/ssh SYSTEMD_EXEC_PID=2378 TZ=:/etc/localtime USER= USERNAME= WAYLAND_DISPLAY=wayland-0 XAUTHORITY=/run/user/1000/.mutter-Xwaylandauth.UQ4QQ1 XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg XDG_CURRENT_DESKTOP=ubuntu:GNOME XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop XDG_MENU_PREFIX=gnome- XDG_RUNTIME_DIR=/run/user/1000 XDG_SESSION_CLASS=user XDG_SESSION_DESKTOP=ubuntu XDG_SESSION_TYPE=wayland XMODIFIERS=@im=ibus _=/usr/bin/gnome-session force_s3tc_enable=true -- Saludos Ing. Martin P Cristia -------------- next part -------------- A non-text attachment was scrubbed... Name: Captura desde 2022-08-25 10-32-32.png Type: image/png Size: 186886 bytes Desc: not available URL: From benoit.minisini at gambas-basic.org Thu Aug 25 17:04:17 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 25 Aug 2022 17:04:17 +0200 Subject: [Gambas-user] Wrong windows placements In-Reply-To: References: Message-ID: Le 25/08/2022 ? 16:57, martin p cristia a ?crit?: > Hi, guys: > > since last system upgrade, What does it mean exactly? -- Beno?t Minisini. From vuott at tutanota.com Thu Aug 25 22:37:27 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Thu, 25 Aug 2022 22:37:27 +0200 (CEST) Subject: [Gambas-user] Problem with gb.media Message-ID: Hello, I have found the following problem with gb.media. If I start this very simple code to listen only to the audio of a video (with audio) file, it works regularly: Public Sub Main() Dim pl As New MediaPipeline Dim src As MediaControl Dim bin, con, res, ask As MediaControl Dim vsk As MediaControl Dim filevideo As String filevideo = "/path/of/file/Video-audio" src = New MediaControl(pl, "filesrc") src["location"] = filevideo bin = New MediaControl(pl, "decodebin") con = New MediaControl(pl, "audioconvert") res = New MediaControl(pl, "audioresample") ask = New MediaControl(pl, "autoaudiosink") src.LinkTo(bin) bin.LinkLaterTo(con) con.LinkTo(res) res.LinkTo(ask) ???? '? vsk = New MediaControl(pl, "xvimagesink") pl.Play Wait 0 pl.Close End ----------------------- BUT, if I activate this command line: ?????? vsk = New MediaControl(pl, "xvimagesink") the audio of the video file is no longer audible. I point out that that MediaControl element ("autoaudiosink") is NOT connected to others with the .Linkto () method !!! It seems that, the mere creation of an instance of MediaControl element ("autoaudiosink"), interferes with the audio part of the pipeline. Regards vuott -------------- next part -------------- An HTML attachment was scrubbed... URL: From vuott at tutanota.com Thu Aug 25 22:46:56 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Thu, 25 Aug 2022 22:46:56 +0200 (CEST) Subject: [Gambas-user] Problem with gb.media In-Reply-To: References: Message-ID: Excuse me, errata corrige : ?? Wait 30??? ' or other positive value not "Wait 0" ! 25 ago 2022, 22:37 da user at lists.gambas-basic.org: > Hello, > I have found the following problem with gb.media. > > If I start this very simple code to listen only to the audio of a video (with audio) file, it works regularly: > > Public Sub Main() > > Dim pl As New MediaPipeline > Dim src As MediaControl > Dim bin, con, res, ask As MediaControl > Dim vsk As MediaControl > Dim filevideo As String > > filevideo = "/path/of/file/Video-audio" > > src = New MediaControl(pl, "filesrc") > src["location"] = filevideo > bin = New MediaControl(pl, "decodebin") > con = New MediaControl(pl, "audioconvert") > res = New MediaControl(pl, "audioresample") > ask = New MediaControl(pl, "autoaudiosink") > > src.LinkTo(bin) > bin.LinkLaterTo(con) > con.LinkTo(res) > res.LinkTo(ask) > > ???? '? vsk = New MediaControl(pl, "xvimagesink") > > pl.Play > > Wait 0 > > pl.Close > > End > ----------------------- > > BUT, if I activate this command line: > > ?????? vsk = New MediaControl(pl, "xvimagesink") > > the audio of the video file is no longer audible. > I point out that that MediaControl element ("autoaudiosink") is NOT connected to others with the .Linkto () method !!! > It seems that, the mere creation of an instance of MediaControl element ("autoaudiosink"), interferes with the audio part of the pipeline. > > Regards > vuott > -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Thu Aug 25 23:08:42 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 25 Aug 2022 23:08:42 +0200 Subject: [Gambas-user] Problem with gb.media In-Reply-To: References: Message-ID: <659fb2ab-c4db-3bd0-7049-7c7d4833b044@gambas-basic.org> Le 25/08/2022 ? 22:37, vuott--- via User a ?crit?: > Hello, > I have found the following problem with gb.media. > > If I start this very simple code to listen only to the audio of a video > (with audio) file, it works regularly: > > Public Sub Main() > > Dim pl As New MediaPipeline > Dim src As MediaControl > Dim bin, con, res, ask As MediaControl > Dim vsk As MediaControl > Dim filevideo As String > > filevideo = "/path/of/file/Video-audio" > > src = New MediaControl(pl, "filesrc") > src["location"] = filevideo > bin = New MediaControl(pl, "decodebin") > con = New MediaControl(pl, "audioconvert") > res = New MediaControl(pl, "audioresample") > ask = New MediaControl(pl, "autoaudiosink") > > src.LinkTo(bin) > bin.LinkLaterTo(con) > con.LinkTo(res) > res.LinkTo(ask) > > ???? '? vsk = New MediaControl(pl, "xvimagesink") > > pl.Play > > Wait 0 > > pl.Close > > End > ----------------------- > > BUT, if I activate this command line: > > ?????? vsk = New MediaControl(pl, "xvimagesink") > > the audio of the video file is no longer audible. > I point out that that MediaControl element ("autoaudiosink") is NOT > connected to others with the .Linkto () method !!! > It seems that, the mere creation of an instance of MediaControl element > ("autoaudiosink"), interferes with the audio part of the pipeline. > > Regards > vuott > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- I think it's only the GStreamer behaviour. Did you test the same pipeline with GStreamer directly? -- Beno?t Minisini. From bagoneo at libero.it Fri Aug 26 00:26:47 2022 From: bagoneo at libero.it (gian) Date: Fri, 26 Aug 2022 00:26:47 +0200 Subject: [Gambas-user] Date format in DataControl Message-ID: <4b81174d-0282-c30b-d0b4-9ff68f2cccc4@libero.it> Hi, does anyone know a way to format the date in a DataControl. In the DataBrowser it seems possible, but with the DataControl I can't do it. I attach the test Regards Gianluigi -------------- next part -------------- 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 From tercoide at hotmail.com Fri Aug 26 00:42:48 2022 From: tercoide at hotmail.com (martin p cristia) Date: Thu, 25 Aug 2022 19:42:48 -0300 Subject: [Gambas-user] Wrong windows placements In-Reply-To: References: Message-ID: System upgrade from Ubuntu 20.04 to 22.04 wich came with Wayland. I had that since april, but just informed it yesterday. > What does it mean exactly? > -- Saludos Ing. Martin P Cristia From bsteers4 at gmail.com Fri Aug 26 04:57:26 2022 From: bsteers4 at gmail.com (Bruce Steers) Date: Fri, 26 Aug 2022 03:57:26 +0100 Subject: [Gambas-user] Wrong windows placements In-Reply-To: References: Message-ID: On Thu, 25 Aug 2022 at 23:43, martin p cristia wrote: > System upgrade from Ubuntu 20.04 to 22.04 wich came with Wayland. I had > that since april, but just informed it yesterday. > > What does it mean exactly? > > > -- > Saludos > Wayland sucks. I'd use x11 for better functionality. https://linuxconfig.org/how-to-enable-disable-wayland-on-ubuntu-22-04-desktop -------------- next part -------------- An HTML attachment was scrubbed... URL: From vuott at tutanota.com Fri Aug 26 08:03:21 2022 From: vuott at tutanota.com (vuott at tutanota.com) Date: Fri, 26 Aug 2022 08:03:21 +0200 (CEST) Subject: [Gambas-user] Problem with gb.media In-Reply-To: <659fb2ab-c4db-3bd0-7049-7c7d4833b044@gambas-basic.org> References: <659fb2ab-c4db-3bd0-7049-7c7d4833b044@gambas-basic.org> Message-ID: Hello Beno?t, I have this Pipeline that uses the "Decodebin" plugin: "filesrc location=/path/of/file/video ! decodebin name=decoder decoder. ! queue ! audioconvert ! audioresample ! autoaudiosink decoder.! xvimagesink" for me it works on Terminal and it also works on Gambas with "Extern", by using the external functions of Gstreamer: Library "libgstreamer-1.0" Private Enum GST_STATE_VOID_PENDING = 0, GST_STATE_NULL, GST_STATE_READY, GST_STATE_PAUSED, GST_STATE_PLAYING ' gst_init (int *argc, char **argv[]) ' Initializes the GStreamer library, setting up internal path lists, registering built-in elements, and loading standard plugins. Private Extern gst_init(argc As Pointer, argv As Pointer) ' GstElement * gst_parse_launch (const gchar *pipeline_description, GError **error) ' Create a new pipeline based on command line syntax. Private Extern gst_parse_launch(description As String, GError As Pointer) As Pointer ' GstStateChangeReturn gst_element_set_state(GstElement *element, GstState state) ' Sets the state of the element. Private Extern gst_element_set_state(element As Pointer, state As Integer) As Integer ' void gst_object_unref(gpointer object) ' Decrements the reference count on object. Private Extern gst_object_unref(gobject As Pointer) Public Sub Main() ? Dim video As Pointer ???? ? gst_init(0, 0) ? video = gst_parse_launch("filesrc location=/path/of/file/video ! decodebin name=decoder decoder. ! queue ! " & "audioconvert ! audioresample ! autoaudiosink decoder.! xvimagesink", 0) ????????? ? gst_element_set_state(video, GST_STATE_PLAYING) ? ? Wait 30 ? gst_object_unref(video) End ----------------- But... I don't know how to manage the following parts of that Pipeline with the resources of the gb.media Component: ? name = decoder decoder. ? autoaudiosink decoder. 25 ago 2022, 23:08 da benoit.minisini at gambas-basic.org: > Le 25/08/2022 ? 22:37, vuott--- via User a ?crit?: > >> Hello, >> I have found the following problem with gb.media. >> >> If I start this very simple code to listen only to the audio of a video (with audio) file, it works regularly: >> >> Public Sub Main() >> >> Dim pl As New MediaPipeline >> Dim src As MediaControl >> Dim bin, con, res, ask As MediaControl >> Dim vsk As MediaControl >> Dim filevideo As String >> >> filevideo = "/path/of/file/Video-audio" >> >> src = New MediaControl(pl, "filesrc") >> src["location"] = filevideo >> bin = New MediaControl(pl, "decodebin") >> con = New MediaControl(pl, "audioconvert") >> res = New MediaControl(pl, "audioresample") >> ask = New MediaControl(pl, "autoaudiosink") >> >> src.LinkTo(bin) >> bin.LinkLaterTo(con) >> con.LinkTo(res) >> res.LinkTo(ask) >> >> ???? '? vsk = New MediaControl(pl, "xvimagesink") >> >> pl.Play >> >> Wait 0 >> >> pl.Close >> >> End >> ----------------------- >> >> BUT, if I activate this command line: >> >> ?????? vsk = New MediaControl(pl, "xvimagesink") >> >> the audio of the video file is no longer audible. >> I point out that that MediaControl element ("autoaudiosink") is NOT connected to others with the .Linkto () method !!! >> It seems that, the mere creation of an instance of MediaControl element ("autoaudiosink"), interferes with the audio part of the pipeline. >> >> Regards >> vuott >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> > > I think it's only the GStreamer behaviour. Did you test the same pipeline with GStreamer directly? > > -- > Beno?t Minisini. > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bagoneo at libero.it Fri Aug 26 09:24:17 2022 From: bagoneo at libero.it (gian) Date: Fri, 26 Aug 2022 09:24:17 +0200 Subject: [Gambas-user] Date format in DataControl In-Reply-To: <4b81174d-0282-c30b-d0b4-9ff68f2cccc4@libero.it> References: <4b81174d-0282-c30b-d0b4-9ff68f2cccc4@libero.it> Message-ID: <3f8ce05c-060c-b9e3-5649-cb9bb8370e0b@libero.it> Il 26/08/22 00:26, gian via User ha scritto: > Hi, > > does anyone know a way to format the date in a DataControl. > In the DataBrowser it seems possible, but with the DataControl I can't > do it. > > I attach the test > > Regards > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hello list, could you pretend that I never posted this question and trash the example attached above? ? Thank you for your understanding Gianluigi From benoit.minisini at gambas-basic.org Fri Aug 26 10:08:47 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 26 Aug 2022 10:08:47 +0200 Subject: [Gambas-user] Problem with gb.media In-Reply-To: References: <659fb2ab-c4db-3bd0-7049-7c7d4833b044@gambas-basic.org> Message-ID: <8c96bcec-ac92-cdbd-74f7-5a91f6b92008@gambas-basic.org> Le 26/08/2022 ? 08:03, vuott--- via User a ?crit?: > Hello Beno?t, > I have this Pipeline that uses the "Decodebin" plugin: > > "filesrc location=/path/of/file/video ! decodebin name=decoder decoder. > ! queue ! audioconvert ! audioresample ! autoaudiosink decoder.! > xvimagesink" This is not the same pipeline that your Gambas code. -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Fri Aug 26 10:15:48 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 26 Aug 2022 10:15:48 +0200 Subject: [Gambas-user] Wrong windows placements In-Reply-To: References: Message-ID: Le 26/08/2022 ? 00:42, martin p cristia a ?crit?: > System upgrade from Ubuntu 20.04 to 22.04 wich came with Wayland. I had > that since april, but just informed it yesterday. Do yo use the development version? -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Fri Aug 26 11:02:37 2022 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 26 Aug 2022 11:02:37 +0200 Subject: [Gambas-user] Wrong windows placements In-Reply-To: References: Message-ID: Le 26/08/2022 ? 10:15, Benoit Minisini a ?crit?: > Le 26/08/2022 ? 00:42, martin p cristia a ?crit?: >> System upgrade from Ubuntu 20.04 to 22.04 wich came with Wayland. I >> had that since april, but just informed it yesterday. > > Do yo use the development version? > I have no problem with combo-box on Ubuntu 22.04 + Wayland + Qt5 or GTK+3. Regards, -- Beno?t Minisini. -------------- next part -------------- A non-text attachment was scrubbed... Name: image.jpg Type: image/jpeg Size: 192964 bytes Desc: not available URL: From tercoide at hotmail.com Fri Aug 26 14:17:40 2022 From: tercoide at hotmail.com (martin p cristia) Date: Fri, 26 Aug 2022 09:17:40 -0300 Subject: [Gambas-user] Wrong windows placements In-Reply-To: References: Message-ID: Yes. I will provide more info and ScreenShots since it seems to happen with one program only. > Do yo use the development version? -- Saludos Ing. Martin P Cristia From charlie at cogier.com Sat Aug 27 11:07:43 2022 From: charlie at cogier.com (Charlie Ogier) Date: Sat, 27 Aug 2022 10:07:43 +0100 Subject: [Gambas-user] Class Import feature request Message-ID: Hi, It would be nice when importing a Class into a program that, if it exists, the *.hidden/control/classname.png* is also imported. Thanks, Charlie -------------- next part -------------- An HTML attachment was scrubbed... URL: From hans at gambas-buch.de Sat Aug 27 16:35:52 2022 From: hans at gambas-buch.de (Hans Lehmann) Date: Sat, 27 Aug 2022 16:35:52 +0200 Subject: [Gambas-user] Error DataBrowser? Message-ID: <72f10bd9-692c-d324-95df-6514bfd836a1@gambas-buch.de> Hello. In a SQLite database table, there exists the field : "flow_name" TEXT NOT NULL UNIQUE, The DB fields are to be sorted: DataSource1.Sort = "flow_name". If I change the value of the field "flow_name" for example from 'nanu' to 'manu' and then save the changed record, an error message is displayed: `Cannot modify record: Abort due to constraint violation`. However, the record is still displayed with the changed value in the DataBrowser after closing the error message! Notable: If the record is sorted by a field other than "flow_name", the error does NOT occur. What now - what to do? With kind regards Honsek From t.lee.davidson at gmail.com Wed Aug 31 00:42:54 2022 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Tue, 30 Aug 2022 18:42:54 -0400 Subject: [Gambas-user] Error DataBrowser? In-Reply-To: <72f10bd9-692c-d324-95df-6514bfd836a1@gambas-buch.de> References: <72f10bd9-692c-d324-95df-6514bfd836a1@gambas-buch.de> Message-ID: On 8/27/22 10:35, Hans Lehmann wrote: > Hello. > > In a SQLite database table, there exists the field : > > "flow_name" TEXT NOT NULL UNIQUE, > > The DB fields are to be sorted: > > DataSource1.Sort = "flow_name". > > If I change the value of the field "flow_name" for example from 'nanu' to 'manu' and then save the changed record, an error > message is displayed: > > `Cannot modify record: Abort due to constraint violation`. > > However, the record is still displayed with the changed value in the DataBrowser after closing the error message! > > Notable: > If the record is sorted by a field other than "flow_name", the error does NOT occur. > > What now - what to do? > File a bug report? -- Lee