From vojtech.cihak at atlas.cz Fri Jul 1 12:07:25 2016 From: vojtech.cihak at atlas.cz (=?utf-8?q?Vojt=C4=9Bch_=C4=8Cih=C3=A1k?=) Date: Fri, 01 Jul 2016 12:07:25 +0200 Subject: [Lazarus] =?utf-8?q?Grid_Cell_Editors?= Message-ID: <20160701120725.700A8C74@atlas.cz> Hello,   I use TStringGrid with my own cell editors and I would like to implement following feature: Column of edited cell will be automaticaly enlarged when cell editor appears (and auto-shrinked afterwards).   But I do not use goAlwaysShowEditor and grid triggers OnSelectEditor events even if it actually is not going to show editor. (the first click selects cell, triggers OnSelectEditor but no editor is shown yet,  the second click on the selected cell triggers OnSelectEditor again and now editor appears).   I need to detect in OnSelectEditor whether the grid is really going to show the editor.   So far I have this:   TStrGridAccess = class(TStringGrid);  {for access to protected properties}   if (TStrGridAccess(Sender).FGridState=gsSelecting) and not TStringGrid(Sender).EditorMode   and not (gfNeedsSelectActive in TStrGridAccess(Sender).GridFlags) then writeln('Now!');    It seems to be reliable but of course, it's a hack. Is there a better way?   Thanks, V. From vojtech.cihak at atlas.cz Fri Jul 1 12:11:10 2016 From: vojtech.cihak at atlas.cz (=?utf-8?q?Vojt=C4=9Bch_=C4=8Cih=C3=A1k?=) Date: Fri, 01 Jul 2016 12:11:10 +0200 Subject: [Lazarus] =?utf-8?q?Grid_Cell_Editors?= In-Reply-To: 000000005e480004110000e34ff4 References: 000000005e480004110000e34ff4 Message-ID: <20160701121110.A5B6879A@atlas.cz> Now I see I did a bugreport about it in 2012 :-)   http://bugs.freepascal.org/view.php?id=23173 ______________________________________________________________ > Od: Vojtěch Čihák > Komu: Lazarus mailing list > Datum: 01.07.2016 12:07 > Předmět: [Lazarus] Grid Cell Editors > ... _______________________________________________ Lazarus mailing list Lazarus at lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus -------------- next part -------------- An HTML attachment was scrubbed... URL: From tony.whyman at mccallumwhyman.com Fri Jul 1 12:16:16 2016 From: tony.whyman at mccallumwhyman.com (Tony Whyman) Date: Fri, 1 Jul 2016 11:16:16 +0100 Subject: [Lazarus] Grid Cell Editors In-Reply-To: <20160701120725.700A8C74@atlas.cz> References: <20160701120725.700A8C74@atlas.cz> Message-ID: <577642F0.1060800@mccallumwhyman.com> Vojtěch, The protected virtual method TCustomGrid.DoEditorShow is a good place to put any actions you want to take place just before the editor is shown - but you need to override the method to do this and add your code before the inherited method is called. This is how I created a DBGrid that changed the row height before showing the editor. You probably need to create your own custom component to do this properly. Regards Tony Whyman MWA On 01/07/16 11:07, Vojtěch Čihák wrote: > Hello, > > I use TStringGrid with my own cell editors and I would like to implement following feature: > Column of edited cell will be automaticaly enlarged when cell editor appears (and auto-shrinked afterwards). > > But I do not use goAlwaysShowEditor and grid triggers OnSelectEditor events even if it actually is not going to show editor. > (the first click selects cell, triggers OnSelectEditor but no editor is shown yet, > the second click on the selected cell triggers OnSelectEditor again and now editor appears). > > I need to detect in OnSelectEditor whether the grid is really going to show the editor. > > So far I have this: > > TStrGridAccess = class(TStringGrid); {for access to protected properties} > > if (TStrGridAccess(Sender).FGridState=gsSelecting) and not TStringGrid(Sender).EditorMode > and not (gfNeedsSelectActive in TStrGridAccess(Sender).GridFlags) then writeln('Now!'); > > It seems to be reliable but of course, it's a hack. Is there a better way? > > Thanks, V. From werner.pamler at freenet.de Fri Jul 1 19:31:42 2016 From: werner.pamler at freenet.de (Werner Pamler) Date: Fri, 1 Jul 2016 19:31:42 +0200 Subject: [Lazarus] Package issues Message-ID: Package hell is back... After somehow getting around the compilation issues with fpspreadsheet, not knowing how, I somehow ran into another trap with tvplanit. As you may know from the forum I am refurbishing the Turbo Power libraray VisualPlanIt for use in Lazarus. At the moment there are three packages: * laz_visualplanit.lpk: the main component package, * laz_visualplanit_sqlite3.lpk: an extension with a datastore for sqlite3 (requires laz_visualplanit), and * laz_visualplanit_zeos.lpk: another extension with a datastore for zeos database components (requires laz_visualplanit). They share the same source folder, and compile into the same units folder - maybe this is a problem, but the same works for TAChart. The three packages do compile fine separately. But the final step, installation into the IDE, crashes. Compilation of Lazarus stops in lazarus.lpi with the message "lazarus.pp(1,1) Fatal: Cannot find laz_visualplanit used by Lazarus, incompatible ppu=D:\Prog_Lazarus\svn\lazarus-ccr\components\tvplanit\packages\lib\i386-win32\laz_visualplanit.ppu, multiple packages: laz_visualplanit, laz_visualplanit_sqlite3". Then I, blindly, erase folders with compiled units, do a clean rebuild, sometimes a normal rebuild. And all of a sudden, after some time, the compilation ends sucessfully. Since I am actively working with these components, however, I run into the same situation when I have to rebuild Lazarus again. At the moment to only way to get a working system it to remove the two dependent packages, laz_visialplanit_sqlite3 and laz_visualplanit_zeos, from the installation list. Therefore, I suspect that compiling all three packages into the same folder could be the culprit. If somebody wants to see this by himself: the sources are in Lazarus-ccr, folder components/tvplanit. I hope the issue is reproducible on other systems... Any idea? -------------- next part -------------- An HTML attachment was scrubbed... URL: From michael at freepascal.org Fri Jul 1 19:58:31 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Fri, 1 Jul 2016 19:58:31 +0200 (CEST) Subject: [Lazarus] Package issues In-Reply-To: References: Message-ID: On Fri, 1 Jul 2016, Werner Pamler wrote: > Package hell is back... > > After somehow getting around the compilation issues with fpspreadsheet, not > knowing how, I somehow ran into another trap with tvplanit. As you may know > from the forum I am refurbishing the Turbo Power libraray VisualPlanIt for > use in Lazarus. > > At the moment there are three packages: > > * laz_visualplanit.lpk: the main component package, > * laz_visualplanit_sqlite3.lpk: an extension with a datastore for > sqlite3 (requires laz_visualplanit), and > * laz_visualplanit_zeos.lpk: another extension with a datastore for > zeos database components (requires laz_visualplanit). > > They share the same source folder, and compile into the same units folder - > maybe this is a problem, but the same works for TAChart. > > The three packages do compile fine separately. But the final step, > installation into the IDE, crashes. Compilation of Lazarus stops in > lazarus.lpi with the message > > "lazarus.pp(1,1) Fatal: Cannot find laz_visualplanit used by > Lazarus, incompatible > ppu=D:\Prog_Lazarus\svn\lazarus-ccr\components\tvplanit\packages\lib\i386-win32\laz_visualplanit.ppu, > multiple packages: laz_visualplanit, laz_visualplanit_sqlite3". > > Then I, blindly, erase folders with compiled units, do a clean rebuild, > sometimes a normal rebuild. And all of a sudden, after some time, the > compilation ends sucessfully. Since I am actively working with these > components, however, I run into the same situation when I have to rebuild > Lazarus again. At the moment to only way to get a working system it to remove > the two dependent packages, laz_visialplanit_sqlite3 and > laz_visualplanit_zeos, from the installation list. Therefore, I suspect that > compiling all three packages into the same folder could be the culprit. You should never do this, it is bad practice. I install all packages always in separate directories. Did you try un-checking the option 'add package unit to uses section' ? Michael. From michael at freepascal.org Fri Jul 1 19:58:31 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Fri, 1 Jul 2016 19:58:31 +0200 (CEST) Subject: [Lazarus] Package issues In-Reply-To: References: Message-ID: On Fri, 1 Jul 2016, Werner Pamler wrote: > Package hell is back... > > After somehow getting around the compilation issues with fpspreadsheet, not > knowing how, I somehow ran into another trap with tvplanit. As you may know > from the forum I am refurbishing the Turbo Power libraray VisualPlanIt for > use in Lazarus. > > At the moment there are three packages: > > * laz_visualplanit.lpk: the main component package, > * laz_visualplanit_sqlite3.lpk: an extension with a datastore for > sqlite3 (requires laz_visualplanit), and > * laz_visualplanit_zeos.lpk: another extension with a datastore for > zeos database components (requires laz_visualplanit). > > They share the same source folder, and compile into the same units folder - > maybe this is a problem, but the same works for TAChart. > > The three packages do compile fine separately. But the final step, > installation into the IDE, crashes. Compilation of Lazarus stops in > lazarus.lpi with the message > > "lazarus.pp(1,1) Fatal: Cannot find laz_visualplanit used by > Lazarus, incompatible > ppu=D:\Prog_Lazarus\svn\lazarus-ccr\components\tvplanit\packages\lib\i386-win32\laz_visualplanit.ppu, > multiple packages: laz_visualplanit, laz_visualplanit_sqlite3". > > Then I, blindly, erase folders with compiled units, do a clean rebuild, > sometimes a normal rebuild. And all of a sudden, after some time, the > compilation ends sucessfully. Since I am actively working with these > components, however, I run into the same situation when I have to rebuild > Lazarus again. At the moment to only way to get a working system it to remove > the two dependent packages, laz_visialplanit_sqlite3 and > laz_visualplanit_zeos, from the installation list. Therefore, I suspect that > compiling all three packages into the same folder could be the culprit. You should never do this, it is bad practice. I install all packages always in separate directories. Did you try un-checking the option 'add package unit to uses section' ? Michael. From werner.pamler at freenet.de Fri Jul 1 21:34:12 2016 From: werner.pamler at freenet.de (Werner Pamler) Date: Fri, 1 Jul 2016 21:34:12 +0200 Subject: [Lazarus] Package issues In-Reply-To: References: Message-ID: > You should never do this, it is bad practice. > > I install all packages always in separate directories. > > Did you try un-checking the option 'add package unit to uses section' ? > > Michael. No, it does not help. But keeping sources and compiled units folder apart, in fact, seems to resolve the issue. I followed the example of LazReport which consists of several packages as well, but every package has its own source and destination folders. I still wonder why the IDE compiles correctly with TAChart - it constists of the main package TAChartLazarusPkg and several dependent packages such as TAChartWMF or TAChartFPVectorial. None of these has "Add package unit to uses section" unchecked. All sources and packages are in the same source folder and compile into the same destination folder. I never had any compilation issues with TAChart. From michael at freepascal.org Fri Jul 1 22:55:17 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Fri, 1 Jul 2016 22:55:17 +0200 (CEST) Subject: [Lazarus] Package issues In-Reply-To: References: Message-ID: On Fri, 1 Jul 2016, Werner Pamler wrote: > >> You should never do this, it is bad practice. >> >> I install all packages always in separate directories. >> >> Did you try un-checking the option 'add package unit to uses section' ? >> >> Michael. > > No, it does not help. > > But keeping sources and compiled units folder apart, in fact, seems to > resolve the issue. I followed the example of LazReport which consists of > several packages as well, but every package has its own source and > destination folders. > > I still wonder why the IDE compiles correctly with TAChart - it > constists of the main package TAChartLazarusPkg and several dependent > packages such as TAChartWMF or TAChartFPVectorial. None of these has > "Add package unit to uses section" unchecked. All sources and packages > are in the same source folder and compile into the same destination > folder. I never had any compilation issues with TAChart. Does tvplanit contain interdependent units ? That could explain the problem. Michael. From luizamericop at gmail.com Fri Jul 1 23:27:40 2016 From: luizamericop at gmail.com (Luiz Americo Pereira Camara) Date: Fri, 1 Jul 2016 18:27:40 -0300 Subject: [Lazarus] Package issues In-Reply-To: References: Message-ID: 2016-07-01 14:31 GMT-03:00 Werner Pamler : > Package hell is back... > > After somehow getting around the compilation issues with fpspreadsheet, > not knowing how, I somehow ran into another trap with tvplanit. As you may > know from the forum I am refurbishing the Turbo Power libraray VisualPlanIt > for use in Lazarus. > > At the moment there are three packages: > > - laz_visualplanit.lpk: the main component package, > - laz_visualplanit_sqlite3.lpk: an extension with a datastore for > sqlite3 (requires laz_visualplanit), and > > If you are using sqldb, no need to have a separated package since is already in the fcl/fpc and the library is loaded dynamically. Those that don't use sqlite3 will not be affected Luiz -------------- next part -------------- An HTML attachment was scrubbed... URL: From werner.pamler at freenet.de Sat Jul 2 00:11:06 2016 From: werner.pamler at freenet.de (Werner Pamler) Date: Sat, 2 Jul 2016 00:11:06 +0200 Subject: [Lazarus] Package issues In-Reply-To: References: Message-ID: <0640bbf3-a99b-9517-f57b-80826a21a851@freenet.de> > Does tvplanit contain interdependent units ? > That could explain the problem. > > Michael. What do you mean by "interdependent"? Circular dependence? No. laz_visualplanit is the "base", it does not call any units of the sqlite and zeos packages. Sqlite and zeos packages, of course, require units from the "base" package. From nc-gaertnma at netcologne.de Sat Jul 2 02:18:09 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Sat, 2 Jul 2016 02:18:09 +0200 Subject: [Lazarus] Package issues In-Reply-To: References: Message-ID: <20160702021809.42e216f2@limapholos.matflo.wg> On Fri, 1 Jul 2016 19:31:42 +0200 Werner Pamler wrote: >[...] > They share the same source folder[...] In general this won't work, because you risk that the compiler may recompile a ppu, invalidating a dependent ppu. It works only in some special cases, for example - if they do not use the same units - or if they have different output directories and the packages are mutually exclusive > - maybe this is a problem, but the same works for TAChart. > > The three packages do compile fine separately. But the final step, > installation into the IDE, crashes. Compilation of Lazarus stops in > lazarus.lpi with the message > > "lazarus.pp(1,1) Fatal: Cannot find laz_visualplanit used by > Lazarus, incompatible > ppu=D:\Prog_Lazarus\svn\lazarus-ccr\components\tvplanit\packages\lib\i386-win32\laz_visualplanit.ppu, > multiple packages: laz_visualplanit, laz_visualplanit_sqlite3". Yes, the IDE even warns that the ppu has two creators. > Then I, blindly, erase folders with compiled units, do a clean rebuild, > sometimes a normal rebuild. And all of a sudden, after some time, the > compilation ends sucessfully. >[...] > Any idea? With careful compilation order you can compile such a construct. But as soon as you change a uses clause you can get into trouble again. Solution: Either merge the packages or split the source directories. Mattias From nc-gaertnma at netcologne.de Sat Jul 2 02:22:56 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Sat, 2 Jul 2016 02:22:56 +0200 Subject: [Lazarus] Package issues In-Reply-To: References: Message-ID: <20160702022256.1d4a3e0f@limapholos.matflo.wg> On Fri, 1 Jul 2016 21:34:12 +0200 Werner Pamler wrote: >[...] > I still wonder why the IDE compiles correctly with TAChart - it > constists of the main package TAChartLazarusPkg and several dependent > packages such as TAChartWMF or TAChartFPVectorial. Because these packages are mutually exclusive. You never use both in an application. Mattias From nc-gaertnma at netcologne.de Sat Jul 2 02:30:42 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Sat, 2 Jul 2016 02:30:42 +0200 Subject: [Lazarus] Package issues In-Reply-To: <0640bbf3-a99b-9517-f57b-80826a21a851@freenet.de> References: <0640bbf3-a99b-9517-f57b-80826a21a851@freenet.de> Message-ID: <20160702023042.32ce9688@limapholos.matflo.wg> On Sat, 2 Jul 2016 00:11:06 +0200 Werner Pamler wrote: > > Does tvplanit contain interdependent units ? > > That could explain the problem. > > > > Michael. > > What do you mean by "interdependent"? Circular dependence? No. For example first package uses unit A, which uses unit B. So compiler creates a.ppu and b.ppu. Second package uses only unit B. When the compiler recompiles unit B, the a.ppu can become invalid. Mattias From ptrg at freemail.hu Sat Jul 2 09:30:16 2016 From: ptrg at freemail.hu (=?UTF-8?B?UMOpdGVyIEfDoWJvcg==?=) Date: Sat, 2 Jul 2016 09:30:16 +0200 Subject: [Lazarus] Has Project Groups support been fixed? In-Reply-To: <5a90ced2-13a2-2b78-da4d-3cef261e407d@geldenhuys.co.uk> References: <5a90ced2-13a2-2b78-da4d-3cef261e407d@geldenhuys.co.uk> Message-ID: <57776D88.4020106@freemail.hu> There are bug reports about this issue that you can watch: 1. http://bugs.freepascal.org/view.php?id=29198 2. http://bugs.freepascal.org/view.php?id=29675 2016-06-30 16:37 keltezéssel, Graeme Geldenhuys írta: > Hi, > > Before I attempt to update my Lazarus on a work related VM, has the > recent Project Groups (unexpected crashes somewhere in the IDE) been > fixed? The primary reason for wanting to update Lazarus is to use > Project Groups, but if the issues are not solved yet, I'll delay that > update on that VM to keep it stable. > > Regards, > Graeme > -- Péter Gábor ptrg at freemail.hu From werner.pamler at freenet.de Sat Jul 2 10:32:59 2016 From: werner.pamler at freenet.de (Werner Pamler) Date: Sat, 2 Jul 2016 10:32:59 +0200 Subject: [Lazarus] Package issues In-Reply-To: <20160702022256.1d4a3e0f@limapholos.matflo.wg> References: <20160702022256.1d4a3e0f@limapholos.matflo.wg> Message-ID: <607df0f0-a9ea-8d0b-700d-6bdfa40137a2@freenet.de> Am 02.07.2016 um 02:22 schrieb Mattias Gaertner: > On Fri, 1 Jul 2016 21:34:12 +0200 > Werner Pamler wrote: > >> [...] >> I still wonder why the IDE compiles correctly with TAChart - it >> constists of the main package TAChartLazarusPkg and several dependent >> packages such as TAChartWMF or TAChartFPVectorial. > Because these packages are mutually exclusive. You never use both in > an application. > > Mattias No. Why shouldn't it be possible to store a chart as wmf *AND* as svg? From nc-gaertnma at netcologne.de Sat Jul 2 11:30:21 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Sat, 2 Jul 2016 11:30:21 +0200 Subject: [Lazarus] Package issues In-Reply-To: <607df0f0-a9ea-8d0b-700d-6bdfa40137a2@freenet.de> References: <20160702022256.1d4a3e0f@limapholos.matflo.wg> <607df0f0-a9ea-8d0b-700d-6bdfa40137a2@freenet.de> Message-ID: <20160702113021.780ca0bc@limapholos.matflo.wg> On Sat, 2 Jul 2016 10:32:59 +0200 Werner Pamler wrote: > Am 02.07.2016 um 02:22 schrieb Mattias Gaertner: > > On Fri, 1 Jul 2016 21:34:12 +0200 > > Werner Pamler wrote: > > > >> [...] > >> I still wonder why the IDE compiles correctly with TAChart - it > >> constists of the main package TAChartLazarusPkg and several dependent > >> packages such as TAChartWMF or TAChartFPVectorial. > > Because these packages are mutually exclusive. You never use both in > > an application. > > > > Mattias > No. Why shouldn't it be possible to store a chart as wmf *AND* as svg? You are right. Probably it works because they both use TAChartLazarusPkg, which compiles all shared units, which pins the compilation order. Mattias From werner.pamler at freenet.de Sat Jul 2 12:46:32 2016 From: werner.pamler at freenet.de (Werner Pamler) Date: Sat, 2 Jul 2016 12:46:32 +0200 Subject: [Lazarus] Package issues In-Reply-To: <20160702113021.780ca0bc@limapholos.matflo.wg> References: <20160702022256.1d4a3e0f@limapholos.matflo.wg> <607df0f0-a9ea-8d0b-700d-6bdfa40137a2@freenet.de> <20160702113021.780ca0bc@limapholos.matflo.wg> Message-ID: <9aa79c80-fd4d-9871-2350-25dd6d248ddb@freenet.de> Am 02.07.2016 um 11:30 schrieb Mattias Gaertner: > You are right. > Probably it works because they both use TAChartLazarusPkg, which > compiles all shared units, which pins the compilation order. > > Mattias Unless there's an unintentional usage of some unit, tvplanit should be the same. Anyway, it looks quite mysterious to me, and I think that TAChart could be a time-bomb leading once to the same issues. What's the opinion here to separate it into different folders as well, just to be on the safe side? It will force users of trunk to reinstall TAChart though. From mailinglists at geldenhuys.co.uk Sun Jul 3 01:45:38 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Sun, 3 Jul 2016 00:45:38 +0100 Subject: [Lazarus] Has Project Groups support been fixed? In-Reply-To: <57776D88.4020106@freemail.hu> References: <5a90ced2-13a2-2b78-da4d-3cef261e407d@geldenhuys.co.uk> <57776D88.4020106@freemail.hu> Message-ID: On 2016-07-02 08:30, Péter Gábor wrote: > There are bug reports about this issue that you can watch: Yup, those are the bugs I experience before with Project Groups. Thanks for listing the Mantis reports. I took a chance and installed Project Groups and it works for now, but I haven't restarted Lazarus IDE since. I normally just pause the VM at the end of a working day. If I have some spare time over the weekend or nights I'll see if I can track down the cause of the errors. Project Groups are immensely useful, especially in my case where I work in a large project consisting of 15+ smaller projects. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From jesusrmx at gmail.com Sun Jul 3 07:13:24 2016 From: jesusrmx at gmail.com (Jesus Reyes A.) Date: Sun, 03 Jul 2016 00:13:24 -0500 Subject: [Lazarus] Grid Cell Editors In-Reply-To: <20160701121110.A5B6879A@atlas.cz> References: <20160701121110.A5B6879A@atlas.cz> Message-ID: En Fri, 01 Jul 2016 05:11:10 -0500, Vojtěch Čihák escribió: > > Now I see I did a bugreport about it in 2012 :-) > > > http://bugs.freepascal.org/view.php?id=23173 > > Sorry for that. Please attach a sample project with a specific problem to be resolved, which can't be resolved because the current implementation make it impossible. As it's deduced on the linked report, perhaps we have to change the inner working of the grid and there will be no remedy but to break some code (er.. breaking is also theoretically), if it has the due merits, of course we will do it. Jesus Reyes A. -------------- next part -------------- An HTML attachment was scrubbed... URL: From vfclists at gmail.com Mon Jul 4 21:46:12 2016 From: vfclists at gmail.com (vfclists .) Date: Mon, 4 Jul 2016 20:46:12 +0100 Subject: [Lazarus] Is the menu for AnchorDockingDsgn gone? Message-ID: I have done a few builds of Lazarus trunk today, and in all of them the menu for AnchorDockingDsgn 0.5 appears to be missing, unless it has been moved somewhere else. It is the menu for saving and loading the Window layout. I also see that there is now a Code and a Design window. Is that why the menu is gone now? Is there a new docking scheme installed by default in Lazarus trunk? -- Frank Church ======================= http://devblog.brahmancreations.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From terry at haimann.us Mon Jul 4 22:43:11 2016 From: terry at haimann.us (Terry A. Haimann) Date: Mon, 04 Jul 2016 15:43:11 -0500 Subject: [Lazarus] TImage Question Message-ID: <1467664991.3326.2.camel@Hercules> Is is possible to select (with the mouse) a portion of an image on timage and copy it to the clipboard? Thanks in advance, Terry From leledumbo_cool at yahoo.co.id Tue Jul 5 00:49:20 2016 From: leledumbo_cool at yahoo.co.id (leledumbo) Date: Mon, 4 Jul 2016 15:49:20 -0700 (MST) Subject: [Lazarus] Is the menu for AnchorDockingDsgn gone? In-Reply-To: References: Message-ID: <1467672560301-4048880.post@n3.nabble.com> > It is the menu for saving and loading the Window layout. > > I also see that there is now a Code and a Design window. Is that why the > menu is gone now? It's been changed to a concept of multiple desktops, which can auto save active layout, import and export whatever saved layout and also set one specifically for debugging. See: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-IDE-Desktops-redesign-td4047450.html#a4047456 -- View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-Is-the-menu-for-AnchorDockingDsgn-gone-tp4048878p4048880.html Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. From leledumbo_cool at yahoo.co.id Tue Jul 5 00:51:56 2016 From: leledumbo_cool at yahoo.co.id (leledumbo) Date: Mon, 4 Jul 2016 15:51:56 -0700 (MST) Subject: [Lazarus] TImage Question In-Reply-To: <1467664991.3326.2.camel@Hercules> References: <1467664991.3326.2.camel@Hercules> Message-ID: <1467672716577-4048881.post@n3.nabble.com> > Is is possible to select (with the mouse) a portion of an image on timage and copy it to the clipboard? Sure, just make a good use of OnMouseDown, OnMouseUp and TImage properties and (sub)methods: uses ClipBrd; {$R *.lfm} var StartX,StartY,EndX,EndY: Integer; { TForm1 } procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin StartX := X; StartY := Y; end; procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var bmp: TBitmap; w,h: LongInt; begin EndX := X; EndY := Y; bmp := TBitmap.Create; with bmp do try w := Abs(EndX - StartX); h := Abs(EndY - StartY); bmp.SetSize(w,h); bmp.Canvas.CopyRect( Rect(0,0,w,h), Image1.Canvas, Rect(StartX,StartY,EndX,EndY) ); Clipboard.Assign(bmp); finally bmp.Free; end; end; -- View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-TImage-Question-tp4048879p4048881.html Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. From michalis.kambi at gmail.com Tue Jul 5 01:06:58 2016 From: michalis.kambi at gmail.com (Michalis Kamburelis) Date: Tue, 5 Jul 2016 01:06:58 +0200 Subject: [Lazarus] TImage Question In-Reply-To: <1467672716577-4048881.post@n3.nabble.com> References: <1467664991.3326.2.camel@Hercules> <1467672716577-4048881.post@n3.nabble.com> Message-ID: 2016-07-05 0:51 GMT+02:00 leledumbo : > with bmp do The "with" statement here is not necessary, as far as I see:) Michalis From terry at haimann.us Tue Jul 5 01:15:01 2016 From: terry at haimann.us (Terry A. Haimann) Date: Mon, 04 Jul 2016 18:15:01 -0500 Subject: [Lazarus] TImage Question In-Reply-To: <1467672716577-4048881.post@n3.nabble.com> References: <1467664991.3326.2.camel@Hercules> <1467672716577-4048881.post@n3.nabble.com> Message-ID: <1467674101.4667.0.camel@Hercules> Thank You, I'll give that a try. On Mon, 2016-07-04 at 15:51 -0700, leledumbo wrote: > > Is is possible to select (with the mouse) a portion of an image on > timage and copy it to the clipboard? > > Sure, just make a good use of OnMouseDown, OnMouseUp and TImage properties > and (sub)methods: > > uses > ClipBrd; > > {$R *.lfm} > > var > StartX,StartY,EndX,EndY: Integer; > > { TForm1 } > > procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; > Shift: TShiftState; X, Y: Integer); > begin > StartX := X; > StartY := Y; > end; > > procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton; > Shift: TShiftState; X, Y: Integer); > var > bmp: TBitmap; > w,h: LongInt; > begin > EndX := X; > EndY := Y; > > bmp := TBitmap.Create; > with bmp do > try > w := Abs(EndX - StartX); > h := Abs(EndY - StartY); > bmp.SetSize(w,h); > bmp.Canvas.CopyRect( > Rect(0,0,w,h), > Image1.Canvas, > Rect(StartX,StartY,EndX,EndY) > ); > Clipboard.Assign(bmp); > finally > bmp.Free; > end; > end; > > > > -- > View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-TImage-Question-tp4048879p4048881.html > Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. From larrydalton71 at gmail.com Tue Jul 5 05:23:14 2016 From: larrydalton71 at gmail.com (Larry Dalton) Date: Mon, 4 Jul 2016 22:23:14 -0500 Subject: [Lazarus] date function db_date(); Message-ID: I use the following function to read a date from a Libre Office dbase file. The field is stored as a string, ie '04/08/2016'. function db_date(const dog_base:tdbf;const t_field:string):tdatetime; var test_date:tdatetime; test_bool:boolean; test_string:string; begin {starts function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} test_bool:=dog_base.FieldByName(t_field).Value<>null; if test_bool then test_date:=dog_base.FieldByName(t_field).AsDateTime else test_date:=now; result:=test_date; end; {ends function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} I am running lazarus 1.6, on both Windows 8 and Linux Mint 17. The above function works fine on the Windows 8 box, but on the Linux Mint box, I get the following error: “04/08/2016” is not a valid date format. Why does it work on Windows but not Linux? How can I rewrite it to work on both? -------------- next part -------------- An HTML attachment was scrubbed... URL: From michael at freepascal.org Tue Jul 5 08:47:15 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Tue, 5 Jul 2016 08:47:15 +0200 (CEST) Subject: [Lazarus] date function db_date(); In-Reply-To: References: Message-ID: On Mon, 4 Jul 2016, Larry Dalton wrote: > I use the following function to read a date from a Libre Office dbase file. > The field is stored as > > a string, ie '04/08/2016'. > > > function db_date(const dog_base:tdbf;const t_field:string):tdatetime; > > var test_date:tdatetime; > > test_bool:boolean; > > test_string:string; > > begin {starts function db_date(const dog_base:tdbf;const > t_field:string):tdatetime;} > > test_bool:=dog_base.FieldByName(t_field).Value<>null; > > if test_bool then test_date:=dog_base.FieldByName(t_field).AsDateTime > > else test_date:=now; > > result:=test_date; > > end; {ends function db_date(const dog_base:tdbf;const > t_field:string):tdatetime;} > > I am running lazarus 1.6, on both Windows 8 and Linux Mint 17. The above > function works fine on the Windows 8 box, but on the Linux Mint box, I get > the following error: “04/08/2016” is not a valid date format. Why does it > work on Windows but not Linux? How can I rewrite it to work on both? under linux, add the clocale unit to the uses clause of your project. Make sure that the locale is set to the correct locale. Alternatively, set DefaultFormatSettings.ShortDateFormat:='dd/mm/yyyy'; DefaultFormatSettings.DateSeparator:='/'; at the start of your program or input routine. Yet another way would be to use the scandatetime function test_date:=scanDateTime('dd/mm/yyyy',dog_base.FieldByName(t_field).AsString); See http://www.freepascal.org/docs-html/rtl/dateutils/scandatetime.html Michael. From michael at freepascal.org Tue Jul 5 08:47:15 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Tue, 5 Jul 2016 08:47:15 +0200 (CEST) Subject: [Lazarus] date function db_date(); In-Reply-To: References: Message-ID: On Mon, 4 Jul 2016, Larry Dalton wrote: > I use the following function to read a date from a Libre Office dbase file. > The field is stored as > > a string, ie '04/08/2016'. > > > function db_date(const dog_base:tdbf;const t_field:string):tdatetime; > > var test_date:tdatetime; > > test_bool:boolean; > > test_string:string; > > begin {starts function db_date(const dog_base:tdbf;const > t_field:string):tdatetime;} > > test_bool:=dog_base.FieldByName(t_field).Value<>null; > > if test_bool then test_date:=dog_base.FieldByName(t_field).AsDateTime > > else test_date:=now; > > result:=test_date; > > end; {ends function db_date(const dog_base:tdbf;const > t_field:string):tdatetime;} > > I am running lazarus 1.6, on both Windows 8 and Linux Mint 17. The above > function works fine on the Windows 8 box, but on the Linux Mint box, I get > the following error: “04/08/2016” is not a valid date format. Why does it > work on Windows but not Linux? How can I rewrite it to work on both? under linux, add the clocale unit to the uses clause of your project. Make sure that the locale is set to the correct locale. Alternatively, set DefaultFormatSettings.ShortDateFormat:='dd/mm/yyyy'; DefaultFormatSettings.DateSeparator:='/'; at the start of your program or input routine. Yet another way would be to use the scandatetime function test_date:=scanDateTime('dd/mm/yyyy',dog_base.FieldByName(t_field).AsString); See http://www.freepascal.org/docs-html/rtl/dateutils/scandatetime.html Michael. From leledumbo_cool at yahoo.co.id Tue Jul 5 13:22:09 2016 From: leledumbo_cool at yahoo.co.id (leledumbo) Date: Tue, 5 Jul 2016 04:22:09 -0700 (MST) Subject: [Lazarus] TImage Question In-Reply-To: References: <1467664991.3326.2.camel@Hercules> <1467672716577-4048881.post@n3.nabble.com> Message-ID: <1467717729977-4048886.post@n3.nabble.com> > The "with" statement here is not necessary, as far as I see:) My bad, I was about to get rid the whole bmp, but realize that I need the variable for Clipboard.Assign and I forget to remove the with :p -- View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-TImage-Question-tp4048879p4048886.html Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. From juha.manninen62 at gmail.com Tue Jul 5 13:24:16 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Tue, 5 Jul 2016 14:24:16 +0300 Subject: [Lazarus] An occasional crash after BuildModes were added and deleted Message-ID: Hello I think I fixed a nasty crash bug in r52628. It happened occasionally after BuildModes manager window was closed, for example when "Debug" and Release" modes were added and the "Default" mode was deleted. Did anybody else see the Access violations? This will be merged to fixes branch. Please test. Juha From zeljko at holobit.net Tue Jul 5 13:53:59 2016 From: zeljko at holobit.net (zeljko) Date: Tue, 5 Jul 2016 13:53:59 +0200 Subject: [Lazarus] An occasional crash after BuildModes were added and deleted In-Reply-To: References: Message-ID: <9d4d49d4-ebfc-ce93-459e-6e799c3bdc9b@holobit.net> On 07/05/2016 01:24 PM, Juha Manninen wrote: > Hello > > I think I fixed a nasty crash bug in r52628. > It happened occasionally after BuildModes manager window was closed, > for example when "Debug" and Release" modes were added and the > "Default" mode was deleted. > Did anybody else see the Access violations? Yes, but forgot to open issue. AV happens when you try to move up/down build modes also. zeljko From larrydalton71 at gmail.com Tue Jul 5 14:21:11 2016 From: larrydalton71 at gmail.com (Larry Dalton) Date: Tue, 5 Jul 2016 07:21:11 -0500 Subject: [Lazarus] date function db_date(); Message-ID: <48AE83C0-485F-43CE-8E6F-55C50272BF7A@gmail.com> I use the following function to read a date from a Libre Office dbase file. The field is stored as a string, ie '04/08/2016'. function db_date(const dog_base:tdbf;const t_field:string):tdatetime; var test_date:tdatetime; test_bool:boolean; test_string:string; begin {starts function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} test_bool:=dog_base.FieldByName(t_field).Value<>null; if test_bool then test_date:=dog_base.FieldByName(t_field).AsDateTime else test_date:=now; result:=test_date; end; {ends function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} I am running lazarus 1.6, on both Windows 8 and Linux Mint 17. The above function works fine on the Windows 8 box, but on the Linux Mint box, I get the following error: “04/08/2016” is not a valid date format. Why does it work on Windows but not Linux? How can I rewrite it to work on both? -------------- next part -------------- An HTML attachment was scrubbed... URL: From larrydalton71 at gmail.com Tue Jul 5 19:20:03 2016 From: larrydalton71 at gmail.com (Larry Dalton) Date: Tue, 5 Jul 2016 12:20:03 -0500 Subject: [Lazarus] date function db_date(); Message-ID: I use the following function to read a date from a Libre Office dbase file. The field is stored as a string, ie '04/08/2016'. function db_date(const dog_base:tdbf;const t_field:string):tdatetime; var test_date:tdatetime; test_bool:boolean; test_string:string; begin {starts function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} test_bool:=dog_base.FieldByName(t_field).Value<>null; if test_bool then test_date:=dog_base.FieldByName(t_field).AsDateTime else test_date:=now; result:=test_date; end; {ends function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} I am running lazarus 1.6, on both Windows 8 and Linux Mint 17. The above function works fine on the Windows 8 box, but on the Linux Mint box, I get the following error: “04/08/2016” is not a valid date format. Why does it work on Windows but not Linux? How can I rewrite it to work on both? -------------- next part -------------- An HTML attachment was scrubbed... URL: From vfclists at gmail.com Wed Jul 6 15:51:47 2016 From: vfclists at gmail.com (vfclists .) Date: Wed, 6 Jul 2016 14:51:47 +0100 Subject: [Lazarus] Is the menu for AnchorDockingDsgn gone? In-Reply-To: References: Message-ID: On 4 July 2016 at 20:46, vfclists . wrote: > > > I have done a few builds of Lazarus trunk today, and in all of them the > menu for AnchorDockingDsgn 0.5 appears to be missing, unless it has been > moved somewhere else. > > It is the menu for saving and loading the Window layout. > > I also see that there is now a Code and a Design window. Is that why the > menu is gone now? > > Is there a new docking scheme installed by default in Lazarus trunk? > Ignore the last two questions. I was using the Codebot version from getlazarus.org, but the question about theh AnchorDockingDsgn 0.5 remains though? -- Frank Church ======================= http://devblog.brahmancreations.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From dezlov at gmail.com Wed Jul 6 16:06:36 2016 From: dezlov at gmail.com (Denis Kozlov) Date: Wed, 6 Jul 2016 15:06:36 +0100 Subject: [Lazarus] Is the menu for AnchorDockingDsgn gone? Message-ID: On 6 July 2016 at 14:51, vfclists . wrote: > > On 4 July 2016 at 20:46, vfclists . wrote: > >> I have done a few builds of Lazarus trunk today, and in all of them the >> menu for AnchorDockingDsgn 0.5 appears to be missing, unless it has been >> moved somewhere else. >> >> It is the menu for saving and loading the Window layout. >> > > The menu for saving and loading anchored window layout is in *Main Menu > Tools > Desktops* (Lazarus 1.7 r52643). Denis -------------- next part -------------- An HTML attachment was scrubbed... URL: From jmlandmesser at gmx.de Wed Jul 6 17:43:45 2016 From: jmlandmesser at gmx.de (John Landmesser) Date: Wed, 6 Jul 2016 17:43:45 +0200 Subject: [Lazarus] date function db_date(); In-Reply-To: References: Message-ID: <2d173863-8b1b-a6ef-3af0-650c883fc3d3@gmx.de> On 05.07.2016 19:20, Larry Dalton wrote: > > I use the following function to read a date from a Libre Office dbase > file. The field is stored as > > a string, ie '04/08/2016'. > > > function db_date(const dog_base:tdbf;const t_field:string):tdatetime; > > var test_date:tdatetime; > > test_bool:boolean; > > test_string:string; > > begin {starts function db_date(const dog_base:tdbf;const > t_field:string):tdatetime;} > > test_bool:=dog_base.FieldByName(t_field).Value<>null; > > if test_bool then test_date:=dog_base.FieldByName(t_field).AsDateTime > > else test_date:=now; > > result:=test_date; > > end; {ends function db_date(const dog_base:tdbf;const > t_field:string):tdatetime;} > > I am running lazarus 1.6, on both Windows 8 and Linux Mint 17. The > above function works fine on the Windows 8 box, but on the Linux Mint > box, I get the following error: “04/08/2016” is not a valid date > format. Why does it work on Windows but not Linux? How can I rewrite > it to work on both? > > > I think thats due to "locales" defined the right way on Windows, but differs on Linux. Have a look at: http://www.freepascal.org/docs-html/rtl/sysutils/dateseparator.html -------------- next part -------------- An HTML attachment was scrubbed... URL: From larrydalton71 at gmail.com Wed Jul 6 19:34:44 2016 From: larrydalton71 at gmail.com (Larry Dalton) Date: Wed, 6 Jul 2016 12:34:44 -0500 Subject: [Lazarus] date function db_date(); In-Reply-To: <2d173863-8b1b-a6ef-3af0-650c883fc3d3@gmx.de> References: <2d173863-8b1b-a6ef-3af0-650c883fc3d3@gmx.de> Message-ID: <37323530-0C2D-48F6-BA15-2043DC069872@gmail.com> Apparently that is the problem. Sent from my iPhone > On Jul 6, 2016, at 10:43, John Landmesser wrote: > >> On 05.07.2016 19:20, Larry Dalton wrote: >> I use the following function to read a date from a Libre Office dbase file. The field is stored as >> a string, ie '04/08/2016'. >> >> function db_date(const dog_base:tdbf;const t_field:string):tdatetime; >> var test_date:tdatetime; >> test_bool:boolean; >> test_string:string; >> begin {starts function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} >> test_bool:=dog_base.FieldByName(t_field).Value<>null; >> if test_bool then test_date:=dog_base.FieldByName(t_field).AsDateTime >> else test_date:=now; >> result:=test_date; >> end; {ends function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} >> I am running lazarus 1.6, on both Windows 8 and Linux Mint 17. The above function works fine on the Windows 8 box, but on the Linux Mint box, I get the following error: “04/08/2016” is not a valid date format. Why does it work on Windows but not Linux? How can I rewrite it to work on both? > > > I think thats due to "locales" defined the right way on Windows, but differs on Linux. > > Have a look at: > > http://www.freepascal.org/docs-html/rtl/sysutils/dateseparator.html > > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus -------------- next part -------------- An HTML attachment was scrubbed... URL: From vfclists at gmail.com Wed Jul 6 20:59:03 2016 From: vfclists at gmail.com (vfclists .) Date: Wed, 6 Jul 2016 19:59:03 +0100 Subject: [Lazarus] Is the menu for AnchorDockingDsgn gone? In-Reply-To: References: Message-ID: On 6 July 2016 at 15:06, Denis Kozlov wrote: > On 6 July 2016 at 14:51, vfclists . wrote: > >> >> On 4 July 2016 at 20:46, vfclists . wrote: >> >>> I have done a few builds of Lazarus trunk today, and in all of them the >>> menu for AnchorDockingDsgn 0.5 appears to be missing, unless it has been >>> moved somewhere else. >>> >>> It is the menu for saving and loading the Window layout. >>> >> >> > The menu for saving and loading anchored window layout is in *Main Menu > > Tools > Desktops* (Lazarus 1.7 r52643). > > Denis > > Thanks, a lot of people are going to get caught out by this change. -- Frank Church ======================= http://devblog.brahmancreations.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Thu Jul 7 13:27:18 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 12:27:18 +0100 Subject: [Lazarus] Conditional Breakpoints - again Message-ID: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> Hi, Just over a year ago I asked about Conditional Breakpoints and using an expression. The result was it was broken, unnoticed by other developers and eventually a [work-around] fix applied. Now I'm revisiting Conditional Breakpoints, but this time referring to the HintCount property. Is that implemented at all? See attached screenshot and items (1) and (2). From my testing it seems it isn't working at all. The breakpoint is always triggered on every iteration. My work-around is again the same as it was a year ago - item (3) in the screenshot. Defined a temporary variable, set or change it's value, then have a IF statement and assign a breakpoint inside the IF statement. [Apologies Martin Fr for this rant - it is no reflection on you or your fantastic contributions in this area] I don't get it - how do anybody else debug using Lazarus? It seems all that actually works is setting standard breakpoints and stepping through code one line at a time. Everything else is buggy or not functional at all. Also I think everything related to debugging that doesn't work should be disabled permanently until it is actually implemented or functioning. eg: The Conditional Breakpoints dialog. I think pretty much everything in there doesn't work! So having those controls enabled just gives a false sense of functionality. [ end of rant ] Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot.png Type: image/png Size: 56118 bytes Desc: not available URL: From mailinglists at geldenhuys.co.uk Thu Jul 7 13:45:43 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 12:45:43 +0100 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> Message-ID: On 2016-07-07 12:27, Graeme Geldenhuys wrote: > See attached > screenshot and items (1) and (2). From my testing it seems it isn't > working at all. The breakpoint is always triggered on every iteration. Oops, attached the wrong screenshot. Here is the correct (annotated) one. Regards, Graeme -------------- next part -------------- A non-text attachment was scrubbed... Name: screenshot01.png Type: image/png Size: 21296 bytes Desc: not available URL: From listbox at martoks-place.de Thu Jul 7 14:02:26 2016 From: listbox at martoks-place.de (Martok) Date: Thu, 7 Jul 2016 14:02:26 +0200 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> Message-ID: <49072649-859a-ae38-c859-812492c47452@martoks-place.de> Hi, > Just over a year ago I asked about Conditional Breakpoints and using an > expression. The result was it was broken, unnoticed by other developers > and eventually a [work-around] fix applied. Apologies for sidetracking, but could you give a pointer to the old discussion/fix? I've recently spent far too long on getting a breakpoint set up (activation by groups appears to be not quite right as well), but ended up doing... > My work-around is again the same as it was a year ago - item (3) in the > screenshot. Defined a temporary variable, set or change it's value, then > have a IF statement and assign a breakpoint inside the IF statement. ... exactly that. Regards, Martok From fluisgirardi at gmail.com Thu Jul 7 14:36:11 2016 From: fluisgirardi at gmail.com (Fabio Luis Girardi) Date: Thu, 7 Jul 2016 09:36:11 -0300 Subject: [Lazarus] Improvement: Lazarus editor (synedit) Message-ID: Hi! Currently Lazarus Editor (synedit), with a text selected, If I press ( It erases my selection and replace it by ( Is much harder to change this to, when press ( do (my selection), instead of erase and replace my selection by ( ? If it's easy to do, somebody can point me where I have to change to get this feature? This is a very useful feature when writing conditions on if and while statements. -- The best regards, Fabio Luis Girardi PascalSCADA Project http://sourceforge.net/projects/pascalscada http://www.pascalscada.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Thu Jul 7 14:45:50 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 13:45:50 +0100 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <49072649-859a-ae38-c859-812492c47452@martoks-place.de> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <49072649-859a-ae38-c859-812492c47452@martoks-place.de> Message-ID: <7eabf0cf-0985-a0f5-e4f3-4e05143ba38f@geldenhuys.co.uk> On 2016-07-07 13:02, Martok wrote: > Apologies for sidetracking, but could you give a pointer to the old > discussion/fix? https://www.mail-archive.com/lazarus%40lists.lazarus.freepascal.org/msg47420.html Regards, Graeme From mailinglists at geldenhuys.co.uk Thu Jul 7 14:48:57 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 13:48:57 +0100 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: References: Message-ID: <465087ea-8d65-5720-e471-7121bef6d412@geldenhuys.co.uk> On 2016-07-07 13:36, Fabio Luis Girardi wrote: > This is a very useful feature when writing conditions on if and while > statements. Does Lazarus IDE support Macros? If so, that could be an even easier solution producing the same end result. Make a selection, trigger the macro with a custom keyboard shortcut, and the macro does the rest by using the selection. Regards, Graeme From el.es.cr at gmail.com Thu Jul 7 15:31:03 2016 From: el.es.cr at gmail.com (Lukasz Sokol) Date: Thu, 7 Jul 2016 14:31:03 +0100 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: References: Message-ID: <376fa001-cdf4-bdd3-ced4-5aac5da15c87@gmail.com> On 07/07/16 13:36, Fabio Luis Girardi wrote: > Hi! > > Currently Lazarus Editor (synedit), with a text selected, If I press > > ( > > It erases my selection and replace it by ( > > Is much harder to change this to, when press ( do (my selection), instead of erase and replace my selection by ( ? > > If it's easy to do, somebody can point me where I have to change to get this feature? > > This is a very useful feature when writing conditions on if and while statements. > In 1.4.4 I have select text -> right click -> Source -> Enclose selection...* but it does not have ( ) as options, maybe newer ones have ? * and it has keyboard shortcuts to reach it too -L. > -- > The best regards, > > Fabio Luis Girardi > PascalSCADA Project > http://sourceforge.net/projects/pascalscada > http://www.pascalscada.com From mailinglists at geldenhuys.co.uk Thu Jul 7 15:44:44 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 14:44:44 +0100 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: <376fa001-cdf4-bdd3-ced4-5aac5da15c87@gmail.com> References: <376fa001-cdf4-bdd3-ced4-5aac5da15c87@gmail.com> Message-ID: <42add371-e795-f84d-8193-c15928683f08@geldenhuys.co.uk> On 2016-07-07 14:31, Lukasz Sokol wrote: > select text -> right click -> Source -> Enclose selection...* but it does not have ( ) as options, Wow, and so I learned another new feature of Lazarus IDE. :) Some of those options I’ll be using often from now onwards. Regards, Graeme From lazarus at mfriebe.de Thu Jul 7 16:03:24 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Thu, 7 Jul 2016 15:03:24 +0100 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> Message-ID: <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> On 07/07/2016 12:27, Graeme Geldenhuys wrote: > Hi, > > Just over a year ago I asked about Conditional Breakpoints and using an > expression. The result was it was broken, unnoticed by other developers > and eventually a [work-around] fix applied. iirc it works for certain datatypes only. And while it was improved, that is still true. > Now I'm revisiting Conditional Breakpoints, but this time referring to > the HintCount property. Is that implemented at all? See attached > screenshot and items (1) and (2). From my testing it seems it isn't > working at all. The breakpoint is always triggered on every iteration. It works for me. But it seems that the hit counter starts at 0 when the debug process is started, and then is not reset. (well delete, the breakpoint should reset it) So If you have hit the breakpoint before setting the hitcount, those hits do count. And once you reached the count, it will stop each time (so it is a >= condition) This obviously could be improved by showing the current count, and have a reset button. Or change the value into a count down, (but then it is show initial and current value, and reset to initial) From fluisgirardi at gmail.com Thu Jul 7 16:15:28 2016 From: fluisgirardi at gmail.com (Fabio Luis Girardi) Date: Thu, 7 Jul 2016 11:15:28 -0300 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: <376fa001-cdf4-bdd3-ced4-5aac5da15c87@gmail.com> References: <376fa001-cdf4-bdd3-ced4-5aac5da15c87@gmail.com> Message-ID: 2016-07-07 10:31 GMT-03:00 Lukasz Sokol : > > In 1.4.4 I have > > select text -> right click -> Source -> Enclose selection...* but it does > not have ( ) as options, > > maybe newer ones have ? > > No, Lazarus trunk don't have ( ) as option. -- The best regards, Fabio Luis Girardi PascalSCADA Project http://sourceforge.net/projects/pascalscada http://www.pascalscada.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Thu Jul 7 16:18:02 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 15:18:02 +0100 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> Message-ID: On 2016-07-07 15:03, Martin Frb wrote: > But it seems that the hit counter starts at 0 when the debug process is > started, and then is not reset. (well delete, the breakpoint should > reset it) Ah, it must have been the reset issue I had. I can now confirm both of those behaviours. Indeed, the counter starts at 0, and does not reset. I've updated the wiki page to reflect these comments. http://wiki.lazarus.freepascal.org/IDE_Window:Breakpoints#Breakpoint_properties Thanks for the information, and apologies for the rant. I'm having a bad debugging day today. :-/ Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From lazarus at mfriebe.de Thu Jul 7 16:21:01 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Thu, 7 Jul 2016 15:21:01 +0100 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: References: Message-ID: On 07/07/2016 13:36, Fabio Luis Girardi wrote: > > Is much harder to change this to, when press ( do (my selection), > instead of erase and replace my selection by ( ? > http://wiki.lazarus.freepascal.org/IDE_Window:_Editor_Macros http://wiki.lazarus.freepascal.org/Editor_Macros_PascalScript Assign the below macro to the ( key/keycombo begin if caller.SelAvail then begin caller.SelText := '('+caller.SelText+')'; end else ecChar('('); end. From listbox at martoks-place.de Thu Jul 7 16:32:19 2016 From: listbox at martoks-place.de (Martok) Date: Thu, 7 Jul 2016 16:32:19 +0200 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> Message-ID: <94815369-bb9d-08c3-c780-7379ca5a0c96@martoks-place.de> Hi, @Graeme: thanks. My original issues appear to be working now, at least in a test case - although I'm using a custom patched (unrelated bug that upstream refused to fix) gdb 7.11 now, so maybe they changed something in the versions between as well. > But it seems that the hit counter starts at 0 when the debug process is > started, and then is not reset. (well delete, the breakpoint should > reset it) Just checked with Delphi: they reset the counter every time the breakpoint is hit, so it effectively means "every Nth hit". Hits before the one that gets handled are logged as "Iteration 1 of N" etc. Changing the value in Breakpoint Properties window also resets the counter. Makes more sense than a manual button I'd say? Regards, Martok From mailinglists at geldenhuys.co.uk Thu Jul 7 16:40:09 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 15:40:09 +0100 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <94815369-bb9d-08c3-c780-7379ca5a0c96@martoks-place.de> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> <94815369-bb9d-08c3-c780-7379ca5a0c96@martoks-place.de> Message-ID: On 2016-07-07 15:32, Martok wrote: > Makes more sense than a manual button I'd say? Agreed. Regards, Graeme From lazarus at mfriebe.de Thu Jul 7 17:02:15 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Thu, 7 Jul 2016 16:02:15 +0100 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <94815369-bb9d-08c3-c780-7379ca5a0c96@martoks-place.de> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> <94815369-bb9d-08c3-c780-7379ca5a0c96@martoks-place.de> Message-ID: On 07/07/2016 15:32, Martok wrote: > > Just checked with Delphi: they reset the counter every time the breakpoint is > hit, so it effectively means "every Nth hit". Hits before the one that gets > handled are logged as "Iteration 1 of N" etc. > Changing the value in Breakpoint Properties window also resets the counter. > > Makes more sense than a manual button I'd say? > > Please create a feature request on Mantis From mse00000 at gmail.com Thu Jul 7 17:10:05 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Thu, 7 Jul 2016 17:10:05 +0200 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> Message-ID: <201607071710.06184.mse00000@gmail.com> On Thursday 07 July 2016 16:03:24 Martin Frb wrote: > > This obviously could be improved by showing the current count, and have > a reset button. Or change the value into a count down, (but then it is > show initial and current value, and reset to initial) MSEide shows the breakpoint count and has an editfield 'Ignore', see attachment. The program stops the first time after 'Ignore' times. Entering a value in 'Ignore' again skips 'Ignore' breakpoint events. 'Ignore' is especially useful if there is a crash in a function after many calls of the function. Set a breakpoint in code before the crash, set 'Ignore' to a big value so the program does not stop before the crash, run the program. When the crash happens check the 'Count' field, set 'Ignore' to 'Count'-1, run the program again, now the program stops at the breakpoint in the run which will crash and it is possible to check how the crash happens. Martin -------------- next part -------------- A non-text attachment was scrubbed... Name: breakpoints.png Type: image/png Size: 15083 bytes Desc: not available URL: From mailinglists at geldenhuys.co.uk Thu Jul 7 17:16:03 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 16:16:03 +0100 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <201607071710.06184.mse00000@gmail.com> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> <201607071710.06184.mse00000@gmail.com> Message-ID: <0e1d8f10-7967-4611-677b-c905b8279524@geldenhuys.co.uk> On 2016-07-07 16:10, Martin Schreiber wrote: > 'Ignore' is especially useful if there is a crash in a function after many > calls of the function. That is exactly why I wanted to use the HitCount property in Lazarus. Lazarus HitCount is equivalent to MSEide's 'Ignore'. What is missing from Lazarus IDE, is to show a read-only Count. That would be useful. I'll add a feature request to mantis. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From mailinglists at geldenhuys.co.uk Thu Jul 7 17:21:52 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 16:21:52 +0100 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: <0e1d8f10-7967-4611-677b-c905b8279524@geldenhuys.co.uk> References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> <201607071710.06184.mse00000@gmail.com> <0e1d8f10-7967-4611-677b-c905b8279524@geldenhuys.co.uk> Message-ID: On 2016-07-07 16:16, Graeme Geldenhuys wrote: > What is missing from Lazarus IDE, is to show a read-only Count. That > would be useful. I'll add a feature request to mantis. Add to Mantis: http://mantis.freepascal.org/view.php?id=30355 Regards, Graeme From fluisgirardi at gmail.com Thu Jul 7 19:16:01 2016 From: fluisgirardi at gmail.com (Fabio Luis Girardi) Date: Thu, 7 Jul 2016 14:16:01 -0300 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: References: Message-ID: 2016-07-07 11:21 GMT-03:00 Martin Frb : > On 07/07/2016 13:36, Fabio Luis Girardi wrote: > >> >> Is much harder to change this to, when press ( do (my selection), instead >> of erase and replace my selection by ( ? >> >> http://wiki.lazarus.freepascal.org/IDE_Window:_Editor_Macros > http://wiki.lazarus.freepascal.org/Editor_Macros_PascalScript > > Assign the below macro to the ( key/keycombo > > begin > if caller.SelAvail then begin > caller.SelText := '('+caller.SelText+')'; > end > else > ecChar('('); > end. > > Should I to install some package on Lazarus to get this? -- The best regards, Fabio Luis Girardi PascalSCADA Project http://sourceforge.net/projects/pascalscada http://www.pascalscada.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Thu Jul 7 19:43:14 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 7 Jul 2016 18:43:14 +0100 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: References: Message-ID: <656cf7b3-14c7-e772-3b3a-e14e5c8d96e6@geldenhuys.co.uk> On 2016-07-07 15:21, Martin Frb wrote: > Assign the below macro to the ( key/keycombo How do you assign keyboard shortcuts to macros. The “Edit Key” button is always greyed out. Regards, Graeme From lazarus at mfriebe.de Thu Jul 7 21:21:17 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Thu, 7 Jul 2016 20:21:17 +0100 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: References: Message-ID: <94bb8871-8458-3c91-309a-3090019161ac@mfriebe.de> On 07/07/2016 18:16, Fabio Luis Girardi wrote: > > 2016-07-07 11:21 GMT-03:00 Martin Frb >: > > On 07/07/2016 13:36, Fabio Luis Girardi wrote: > > > Is much harder to change this to, when press ( do (my > selection), instead of erase and replace my selection by ( ? > > http://wiki.lazarus.freepascal.org/IDE_Window:_Editor_Macros > http://wiki.lazarus.freepascal.org/Editor_Macros_PascalScript > > > Should I to install some package on Lazarus to get this? Editor Macros are available by default. The Pascal script has a selftest however. Open the options from Tools menu, and search for editor macros to see if it passed. "Editor Macros" is an entry in the view menu. See the wiki pages I linked. Note, ensure you move the macro into the "IDE" section. Or you may loose it. -------------- next part -------------- An HTML attachment was scrubbed... URL: From lazarus at mfriebe.de Thu Jul 7 21:24:40 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Thu, 7 Jul 2016 20:24:40 +0100 Subject: [Lazarus] Improvement: Lazarus editor (synedit) In-Reply-To: <656cf7b3-14c7-e772-3b3a-e14e5c8d96e6@geldenhuys.co.uk> References: <656cf7b3-14c7-e772-3b3a-e14e5c8d96e6@geldenhuys.co.uk> Message-ID: <1661f29d-a86b-9894-b640-a9deff63dc5b@mfriebe.de> On 07/07/2016 18:43, Graeme Geldenhuys wrote: > On 2016-07-07 15:21, Martin Frb wrote: >> Assign the below macro to the ( key/keycombo > How do you assign keyboard shortcuts to macros. The “Edit Key” button is > always greyed out. > > Select an existing Macro in the list of macros (so it gets focused). Then the button become enabled. At least for me. Make sure you move Macros to the IDE section (or Project) if you want to keep them. Macros are also listed in the "Key Mapping" in options From listbox at martoks-place.de Thu Jul 7 21:52:06 2016 From: listbox at martoks-place.de (Martok) Date: Thu, 7 Jul 2016 21:52:06 +0200 Subject: [Lazarus] Conditional Breakpoints - again In-Reply-To: References: <74ceafc8-8d02-478a-3520-9f3d4e41a773@geldenhuys.co.uk> <2b7f88f1-9bf7-e51d-fc18-f7263dfa6211@mfriebe.de> <94815369-bb9d-08c3-c780-7379ca5a0c96@martoks-place.de> Message-ID: Am 07.07.2016 um 17:02 schrieb Martin Frb: > Please create a feature request on Mantis Done, http://bugs.freepascal.org/view.php?id=30358 Regards, Martok From mschnell at lumino.de Fri Jul 8 12:18:47 2016 From: mschnell at lumino.de (Michael Schnell) Date: Fri, 08 Jul 2016 12:18:47 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter Message-ID: <577F7E07.9060203@lumino.de> AFAIK, Delphi XE features a second parameter "encoding" with TStringList.LoadFromFile. Lazarus / fpc misses same. Bug or Feature ? -Michael From michael at freepascal.org Fri Jul 8 12:22:06 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Fri, 8 Jul 2016 12:22:06 +0200 (CEST) Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <577F7E07.9060203@lumino.de> References: <577F7E07.9060203@lumino.de> Message-ID: On Fri, 8 Jul 2016, Michael Schnell wrote: > AFAIK, Delphi XE features a second parameter "encoding" with > TStringList.LoadFromFile. > > Lazarus / fpc misses same. > > Bug or Feature ? Known missing feature, there exists a bug for it. Main problem is that this necessitates a unicode stringlist, and by extension a unicode RTL. We're working on it. Michael. From dec12 at avidsoft.com.hk Fri Jul 8 13:51:21 2016 From: dec12 at avidsoft.com.hk (Dennis) Date: Fri, 8 Jul 2016 19:51:21 +0800 Subject: [Lazarus] lazarus on raspian. install sqldblaz 1.0.2 fail with cannot find ibase60dyn used by IBConnection Message-ID: <577F93B9.6090608@avidsoft.com.hk> I installed lazarus via the script in getlazarus.org for raspberry pi. I need Tsqlquery so I installed sqldblaz and rebuild IDE but it failed with "ibconnection.pp(12,3) Fatal: Cannot find ibase60dyn used by IBConnection. what should I do? Dennis -------------- next part -------------- An HTML attachment was scrubbed... URL: From lazarus at kluug.net Fri Jul 8 19:56:47 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Fri, 8 Jul 2016 19:56:47 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> Message-ID: On 08.07.2016 12:22, Michael Van Canneyt wrote: > > > On Fri, 8 Jul 2016, Michael Schnell wrote: > >> AFAIK, Delphi XE features a second parameter "encoding" with >> TStringList.LoadFromFile. >> >> Lazarus / fpc misses same. >> >> Bug or Feature ? > > Known missing feature, there exists a bug for it. > > Main problem is that this necessitates a unicode stringlist, and by > extension a unicode RTL. We're working on it. Why do you need a unicode stringlist? I wrote a class helper for myself that does it. Ondrej From larrydalton71 at gmail.com Fri Jul 8 21:40:30 2016 From: larrydalton71 at gmail.com (Larry Dalton) Date: Fri, 8 Jul 2016 14:40:30 -0500 Subject: [Lazarus] date function db_date(); In-Reply-To: <2d173863-8b1b-a6ef-3af0-650c883fc3d3@gmx.de> References: <2d173863-8b1b-a6ef-3af0-650c883fc3d3@gmx.de> Message-ID: <717AAFCD-E215-4069-BCDB-0042C517E6A8@gmail.com> Thanks, John. That worked. Sent from my iPhone > On Jul 6, 2016, at 10:43, John Landmesser wrote: > >> On 05.07.2016 19:20, Larry Dalton wrote: >> I use the following function to read a date from a Libre Office dbase file. The field is stored as >> a string, ie '04/08/2016'. >> >> function db_date(const dog_base:tdbf;const t_field:string):tdatetime; >> var test_date:tdatetime; >> test_bool:boolean; >> test_string:string; >> begin {starts function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} >> test_bool:=dog_base.FieldByName(t_field).Value<>null; >> if test_bool then test_date:=dog_base.FieldByName(t_field).AsDateTime >> else test_date:=now; >> result:=test_date; >> end; {ends function db_date(const dog_base:tdbf;const t_field:string):tdatetime;} >> I am running lazarus 1.6, on both Windows 8 and Linux Mint 17. The above function works fine on the Windows 8 box, but on the Linux Mint box, I get the following error: “04/08/2016” is not a valid date format. Why does it work on Windows but not Linux? How can I rewrite it to work on both? > > > I think thats due to "locales" defined the right way on Windows, but differs on Linux. > > Have a look at: > > http://www.freepascal.org/docs-html/rtl/sysutils/dateseparator.html > > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus -------------- next part -------------- An HTML attachment was scrubbed... URL: From pascaldragon at googlemail.com Sat Jul 9 09:12:59 2016 From: pascaldragon at googlemail.com (Sven Barth) Date: Sat, 9 Jul 2016 09:12:59 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> Message-ID: Am 08.07.2016 19:57 schrieb "Ondrej Pokorny" : > > On 08.07.2016 12:22, Michael Van Canneyt wrote: >> >> >> >> On Fri, 8 Jul 2016, Michael Schnell wrote: >> >>> AFAIK, Delphi XE features a second parameter "encoding" with TStringList.LoadFromFile. >>> >>> Lazarus / fpc misses same. >>> >>> Bug or Feature ? >> >> >> Known missing feature, there exists a bug for it. >> >> Main problem is that this necessitates a unicode stringlist, and by >> extension a unicode RTL. We're working on it. > > > Why do you need a unicode stringlist? I wrote a class helper for myself that does it. I'm wondering that as well. After all we'll need that functionality for the ANSI RTLs as well... Regards, Sven -------------- next part -------------- An HTML attachment was scrubbed... URL: From michael at freepascal.org Sat Jul 9 12:32:29 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Sat, 9 Jul 2016 12:32:29 +0200 (CEST) Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> Message-ID: On Sat, 9 Jul 2016, Sven Barth wrote: > Am 08.07.2016 19:57 schrieb "Ondrej Pokorny" : >> >> On 08.07.2016 12:22, Michael Van Canneyt wrote: >>> >>> >>> >>> On Fri, 8 Jul 2016, Michael Schnell wrote: >>> >>>> AFAIK, Delphi XE features a second parameter "encoding" with > TStringList.LoadFromFile. >>>> >>>> Lazarus / fpc misses same. >>>> >>>> Bug or Feature ? >>> >>> >>> Known missing feature, there exists a bug for it. >>> >>> Main problem is that this necessitates a unicode stringlist, and by >>> extension a unicode RTL. We're working on it. >> >> >> Why do you need a unicode stringlist? I wrote a class helper for myself > that does it. > > I'm wondering that as well. After all we'll need that functionality for the > ANSI RTLs as well... If the characters in the file encoding cannot be preserved in the current encoding for 'ansistring', then what ? Michael. From erwin at deseine.nl Sat Jul 9 13:16:46 2016 From: erwin at deseine.nl (Erwin van den Bosch) Date: Sat, 9 Jul 2016 13:16:46 +0200 Subject: [Lazarus] GTK 3.0 Message-ID: <5780DD1E.6040201@deseine.nl> GTK 3.0 is now widely used in major Linux distributions. (ubuntu, mint) But the support in Lazarus for GTK 3 is still in alpha state. Do we need GTK 3 in Lazarus? Or is GTK 2 good enough? Will Lazarus and applications build with Lazarus look better under GTK 3? (HiDPI support) Is someone working on the LCL implementation of GTK 3? How difficult is it to implement GTK 3? Regards, Erwin From juha.manninen62 at gmail.com Sat Jul 9 14:34:08 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Sat, 9 Jul 2016 15:34:08 +0300 Subject: [Lazarus] GTK 3.0 In-Reply-To: <5780DD1E.6040201@deseine.nl> References: <5780DD1E.6040201@deseine.nl> Message-ID: On Sat, Jul 9, 2016 at 2:16 PM, Erwin van den Bosch wrote: > Do we need GTK 3 in Lazarus? Or is GTK 2 good enough? GTK 3 binding is needed. > Is someone working on the LCL implementation of GTK 3? Currently not. We need more contributions. > How difficult is it to implement GTK 3? Should be easier than GTK 2. The binding's design is better. Zeljko can answer detailed questions if you plan to improve it. Juha From lazarus at kluug.net Sat Jul 9 18:04:07 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Sat, 9 Jul 2016 18:04:07 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> Message-ID: <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> On 09.07.2016 12:32, Michael Van Canneyt wrote: > If the characters in the file encoding cannot be preserved in the current > encoding for 'ansistring', then what ? Is there even something like "current encoding for 'ansistring'" in FPC 3.0? AFAIK FPC 3.0 AnsiString can handle all encodings and convert between them internally. By default TEncoding output could be set to AnsiString(CP_UTF8). Conversion to other codepages of AnsiString is done by the compiler. I see now that FPC's TEncoding uses UnicodeString and PUnicodeChar. For me it's a strange decision. I would expect it to be String ( http://wiki.freepascal.org/Character_and_string_types#String ) and use UTF8 since AnsiString(CP_UTF8) is compatible to String. Ondrej From michael at freepascal.org Sat Jul 9 18:16:51 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Sat, 9 Jul 2016 18:16:51 +0200 (CEST) Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> References: <577F7E07.9060203@lumino.de> <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> Message-ID: On Sat, 9 Jul 2016, Ondrej Pokorny wrote: > On 09.07.2016 12:32, Michael Van Canneyt wrote: >> If the characters in the file encoding cannot be preserved in the current >> encoding for 'ansistring', then what ? > > Is there even something like "current encoding for 'ansistring'" in FPC > 3.0? AFAIK FPC 3.0 AnsiString can handle all encodings and convert > between them internally. By default TEncoding output could be set to > AnsiString(CP_UTF8). Conversion to other codepages of AnsiString is done > by the compiler. OK. So what is the encoding argument supposed to do ? - Convert to current codepage (as set in http://www.freepascal.org/docs-html/rtl/system/defaultsystemcodepage.html ) with possible loss of characters during read ? - Keep all strings in the codepage that was passed on ? > > I see now that FPC's TEncoding uses UnicodeString and PUnicodeChar. For > me it's a strange decision. I would expect it to be String ( > http://wiki.freepascal.org/Character_and_string_types#String ) and use > UTF8 since AnsiString(CP_UTF8) is compatible to String. AFAIK It is Delphi compatible, and there it is unicodestring (well, widestring). Michael. From mse00000 at gmail.com Sun Jul 10 07:20:20 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Sun, 10 Jul 2016 07:20:20 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> Message-ID: <201607100720.20287.mse00000@gmail.com> On Saturday 09 July 2016 18:16:51 Michael Van Canneyt wrote: > > I see now that FPC's TEncoding uses UnicodeString and PUnicodeChar. For > > me it's a strange decision. I would expect it to be String ( > > http://wiki.freepascal.org/Character_and_string_types#String ) and use > > UTF8 since AnsiString(CP_UTF8) is compatible to String. > > AFAIK It is Delphi compatible, and there it is unicodestring (well, > widestring). > Actually "UnicodeString". "WideString" is something other on Windows. I suggest that if we use the the word "widestring" in context of Free Pascal we explain that we mean the type "UnicodeString". One can often read "WideString" instead of "UnicodeString" in Free Pascal Unicode example code which is not optimal. We always can write that "UnicodeString" is the wrong name for a reference counted utf-16 string because UTF8String or AnsiString with default code page set to utf-8 also is Unicode in order to express our anger about the bad marketing driven decision of the Delphi owners. ;-) Martin From lazarus at kluug.net Sun Jul 10 07:29:00 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Sun, 10 Jul 2016 07:29:00 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> Message-ID: <1d03a67c-5bd2-3589-9d9b-6a638f806bec@kluug.net> On 09.07.2016 18:16, Michael Van Canneyt wrote: > So what is the encoding argument supposed to do ? > - Convert to current codepage (as set in > http://www.freepascal.org/docs-html/rtl/system/defaultsystemcodepage.html > ) with possible loss of characters during read ? > - Keep all strings in the codepage that was passed on ? > >> >> I see now that FPC's TEncoding uses UnicodeString and PUnicodeChar. >> For me it's a strange decision. I would expect it to be String ( >> http://wiki.freepascal.org/Character_and_string_types#String ) and >> use UTF8 since AnsiString(CP_UTF8) is compatible to String. > > AFAIK It is Delphi compatible, and there it is unicodestring (well, > widestring). I see now. You need UnicodeString support for the delphiunicode mode. So now there are String/PChar overloads missing in TEncoding for FPC default ansi mode. Once you have String/PChar support in TEncoding, adding TEncoding support to ansi RTL is easy. The best IMO is that the String-based TEncoding routines handle passed/returned strings in current DefaultSystemCodePage with possible character loss. If DefaultSystemCodePage is not UTF8 it will probably mean that 2 conversions have to be executed (SOURCE->UTFxxx->TARGET). If DefaultSystemCodePage is UTF8, one conversion must be enough. LazUtils have the LConvEncoding unit for UTF8<>CP conversions. Ondrej From terry at haimann.us Mon Jul 11 01:03:52 2016 From: terry at haimann.us (Terry A. Haimann) Date: Sun, 10 Jul 2016 18:03:52 -0500 Subject: [Lazarus] Printer.Canvas.Draw Message-ID: <1468191832.7644.4.camel@Hercules> Hello, I was playing around with this procedure and incrementing x, does seem to move the image on the canvas to the right. But incrementing the y variable doesn't seem to move the image up or down. I am running Lazarus 1.4.2 on a LinuxMint-64 Distro. FreePascal 2.6.4 From mschnell at lumino.de Mon Jul 11 10:24:37 2016 From: mschnell at lumino.de (Michael Schnell) Date: Mon, 11 Jul 2016 10:24:37 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> Message-ID: <578357C5.1010005@lumino.de> With Delphi, TStringList seems to be hard coded to use UTF16 with "Add" and StringList[i] (which is a really bad idea in a String system providing versatile encoding). TStringList.LoadFromFile seems do default to the system ANSI encoding (which seems like rather contra-intuitive in a system that defaults to coding strings as UTF16). With Lazarus, TStringList seems to be (considered to be, as StrinCodePage(SomeString ) is 65001) hard coded to use UTF8 with "Add" and StringList[i] (which is a bad idea, as well, but not worse than Delphi forcing UTF16) TStringList.LoadFromFile uses (defaults to) "no conversion" which in fact means UTF8 encoding (which in fact is straight forward and obvious, and hence better than Delphi). I don't see why a redesign of the "hard coded UF8" TStringList would be necessary just for setting the code of the file to be loaded by TStringList.LoadFromFile, just a settable conversion at that function (and the at SaveToFile) would be helpful. Of course a versatile encoding of TStrings would be a much better way to go, but I don't suppose this ever will happen (partly because Delphi does not feature his either). The current makeup results in different behavior between Delphi and Lazarus. I was hit by this when doing a (Windows) program that analysis text files that are generated in local (German) ANSI code. To load a text file, the most convenient function to me seems to be TStringList.LoadFromFile and here (with the current official Windows distribution of Lazarus) the output of myString := StringList[i] obviously is wrong. Test: Speed From michael at freepascal.org Mon Jul 11 10:29:08 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Mon, 11 Jul 2016 10:29:08 +0200 (CEST) Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <578357C5.1010005@lumino.de> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> Message-ID: On Mon, 11 Jul 2016, Michael Schnell wrote: > With Delphi, TStringList seems to be hard coded to use UTF16 with "Add" > and StringList[i] (which is a really bad idea in a String system > providing versatile encoding). TStringList.LoadFromFile seems do default > to the system ANSI encoding (which seems like rather contra-intuitive in > a system that defaults to coding strings as UTF16). > > With Lazarus, TStringList seems to be (considered to be, as > StrinCodePage(SomeString ) is 65001) hard coded to use UTF8 with "Add" > and StringList[i] (which is a bad idea, as well, but not worse than > Delphi forcing UTF16) TStringList.LoadFromFile uses (defaults to) "no > conversion" which in fact means UTF8 encoding (which in fact is straight > forward and obvious, and hence better than Delphi). > > I don't see why a redesign of the "hard coded UF8" TStringList would be > necessary just for setting the code of the file to be loaded by There is no 'hard coded UTF8' stringlist. This is an assumption made by Lazarus LCL, which - depending on the version of FPC - sets the default single-byte string codepage to UTF8. TStringList is not part of Lazarus, and hence must cater for other codepages as well. Michael. From mailinglists at geldenhuys.co.uk Mon Jul 11 11:57:57 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Mon, 11 Jul 2016 10:57:57 +0100 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <201607100720.20287.mse00000@gmail.com> References: <577F7E07.9060203@lumino.de> <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> <201607100720.20287.mse00000@gmail.com> Message-ID: On 2016-07-10 06:20, Martin Schreiber wrote: > We always can write that "UnicodeString" is the wrong name for a reference > counted utf-16 string because UTF8String or AnsiString with default code page > set to utf-8 also is Unicode in order to express our anger about the bad > marketing driven decision of the Delphi owners. G*d, I so agree with that too! I simply hate the name "UnicodeString" implicitly implying UTF-16 only. "Unicode" is an algorithm with 3 official encodings, not just UTF-16. Then to boot, they introduced the AnsiString mess in FPC 3.0 - which now doesn't only mean ANSI encoding (contrary to what the name suggests), it now means Unicode encodings too. Other compiler projects must be laughing their asses off at Free Pascal now! So what other types in Object Pascal can we f**k with next? Boolean, Double? Regards, Graeme From mschnell at lumino.de Mon Jul 11 12:50:18 2016 From: mschnell at lumino.de (Michael Schnell) Date: Mon, 11 Jul 2016 12:50:18 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> Message-ID: <578379EA.2090309@lumino.de> On 07/11/2016 10:29 AM, Michael Van Canneyt wrote: > > There is no 'hard coded UTF8' stringlist. > > This is an assumption made by Lazarus LCL, which - depending on the > version > of FPC - sets the default single-byte string codepage to UTF8. > > TStringList is not part of Lazarus, and hence must cater for other > codepages > as well. Of Course I do know all this and this is exactly what I tried to point out. In fact TStringList (fpc) is hard coded to 8 Bit, and hence can hold any 8 bit encoding, including UTF-8 and the German ANSI Variant used for the file I try to load. and it does not do any conversion at all. Now Lazarus seems to set the compiler to by default handle strings as UTF-8 coded. This obviously creates the said problem. -Michael From michael at freepascal.org Mon Jul 11 13:01:27 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Mon, 11 Jul 2016 13:01:27 +0200 (CEST) Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <578379EA.2090309@lumino.de> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> Message-ID: On Mon, 11 Jul 2016, Michael Schnell wrote: > On 07/11/2016 10:29 AM, Michael Van Canneyt wrote: >> >> There is no 'hard coded UTF8' stringlist. >> >> This is an assumption made by Lazarus LCL, which - depending on the >> version >> of FPC - sets the default single-byte string codepage to UTF8. >> >> TStringList is not part of Lazarus, and hence must cater for other >> codepages >> as well. > > Of Course I do know all this and this is exactly what I tried to point out. > > In fact TStringList (fpc) is hard coded to 8 Bit, and hence can hold any > 8 bit encoding, including UTF-8 and the German ANSI Variant used for the > file I try to load. and it does not do any conversion at all. > > Now Lazarus seems to set the compiler to by default handle strings as > UTF-8 coded. Not the compiler, the RTL. Michael. From michael at freepascal.org Mon Jul 11 13:23:30 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Mon, 11 Jul 2016 13:23:30 +0200 (CEST) Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <1d03a67c-5bd2-3589-9d9b-6a638f806bec@kluug.net> References: <577F7E07.9060203@lumino.de> <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> <1d03a67c-5bd2-3589-9d9b-6a638f806bec@kluug.net> Message-ID: On Sun, 10 Jul 2016, Ondrej Pokorny wrote: > On 09.07.2016 18:16, Michael Van Canneyt wrote: >> So what is the encoding argument supposed to do ? >> - Convert to current codepage (as set in >> http://www.freepascal.org/docs-html/rtl/system/defaultsystemcodepage.html >> ) with possible loss of characters during read ? >> - Keep all strings in the codepage that was passed on ? >> >>> >>> I see now that FPC's TEncoding uses UnicodeString and PUnicodeChar. >>> For me it's a strange decision. I would expect it to be String ( >>> http://wiki.freepascal.org/Character_and_string_types#String ) and >>> use UTF8 since AnsiString(CP_UTF8) is compatible to String. >> >> AFAIK It is Delphi compatible, and there it is unicodestring (well, >> widestring). > > I see now. You need UnicodeString support for the delphiunicode mode. So > now there are String/PChar overloads missing in TEncoding for FPC > default ansi mode. Once you have String/PChar support in TEncoding, > adding TEncoding support to ansi RTL is easy. They were not necessarily missing, they were perceived as 'not necessary'. As far as I can see, they are still unnecessary (see below). One could add them for completeness or symmetry reasons, but I don't see the point. > > The best IMO is that the String-based TEncoding routines handle > passed/returned strings in current DefaultSystemCodePage with possible > character loss. I am not sure that this 'possible character loss' is a good idea. But if the general consensus is that this is acceptable, then why not. If you already have a helper class, then this can probably be easily integrated in the TStrings class. > If DefaultSystemCodePage is not UTF8 it will probably > mean that 2 conversions have to be executed (SOURCE->UTFxxx->TARGET). If > DefaultSystemCodePage is UTF8, one conversion must be enough. LazUtils > have the LConvEncoding unit for UTF8<>CP conversions. This conversion should already be fully automatic if the widestring manager is used and the 'SetCodePage' function and friends are used. One does not need TEncoding for that. TEncoding is just a wrapper around the widestring manager with some utility functions, implemented for Delphi compatibility. Michael. From mschnell at lumino.de Mon Jul 11 13:26:25 2016 From: mschnell at lumino.de (Michael Schnell) Date: Mon, 11 Jul 2016 13:26:25 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> Message-ID: <57838261.40500@lumino.de> On 07/11/2016 01:01 PM, Michael Van Canneyt wrote: > >> >> Now Lazarus seems to set the compiler to by default handle strings as >> UTF-8 coded. > > Not the compiler, the RTL. Yep. Thanks for the clarification -Michael From mschnell at lumino.de Mon Jul 11 13:55:15 2016 From: mschnell at lumino.de (Michael Schnell) Date: Mon, 11 Jul 2016 13:55:15 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> Message-ID: <57838923.6000907@lumino.de> On 07/11/2016 01:01 PM, Michael Van Canneyt wrote: >> >> Now Lazarus seems to set the compiler to by default handle strings as >> UTF-8 coded. > > Not the compiler, the RTL. ... by setting a system variable. So simply avoiding to do this (and use the locale ANSI setting) would make Lazarus (user code) Unicode - unaware and hence avoid such problems with 99 % of the applications, while of course the 1 % of the applications that in fact do need Unicode handling would not work in that mode (but maybe could be configured to use a "Unicode mode", if they don't want to define their Unicode aware string variables explicitly ) ??? (Of course conversion to/from Unicode in the LCL-interface for GUI calls might cost some addition CPU cycles.) -Michael From lazarus at kluug.net Mon Jul 11 14:00:37 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Mon, 11 Jul 2016 14:00:37 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <57838923.6000907@lumino.de> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> <57838923.6000907@lumino.de> Message-ID: <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> On 11.07.2016 13:55, Michael Schnell wrote: > So simply avoiding to do this (and use the locale ANSI setting) would > make Lazarus (user code) Unicode - unaware and hence avoid such > problems with 99 % of the applications, while of course the 1 % of the > applications that in fact do need Unicode handling 100% of end-user Windows LCL applications need Unicode. You can't simply force your customers to set the German codepage in their OS settings. Ondrej From giuliano.colla at fastwebnet.it Mon Jul 11 14:36:23 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Mon, 11 Jul 2016 14:36:23 +0200 Subject: [Lazarus] Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) Message-ID: <578392C7.8070901@fastwebnet.it> Hi all, I'm trying to set up my Lazarus in a Linux x86_64 platform to cross compile for an ARMV7 target (Raspberry pi 3), but I'm unable to make it work. The environment is CentOs 6, Linux x86_64, fpc 2.6.4. Both Lazarus 1.4.4 and Lazarus 1.7 (from trunk) give identical results. The target should be arm-linux. I believe that my custom fpc.cfg is properly set, because I can cross-compile a simple console app: > fpc -Tlinux -Parm -XParm-linux- TestArm.pas works just fine and generates an arm object file and an arm executable, which runs on the target. But up to now, any attempt to cross-compile on Lazarus has failed. I assume that I should set Target OS = Linux, Target CPU family = arm, Target processor = ARMV7 But with those parameters the compilation aborts immediately with "Illegal parameter -CpARMV7" If I set Target processor = Default, I must add a lot of extra paths to make it find the sources (why?), but finally it compiles everything, and properly puts the generated .o and .ppu files in the arm-linux directories. But the generated .o files are of type ELF x86-64, and then ld aborts, telling (correctly) that it supports only the arm formats. With this setup the compiler options are: > > -Tlinux -Parm -MObjFPC -Scghi -O1 -g -gl -l -vewnhibq -Filib/arm-linux > -Fi/usr/lib64/lazarus/lcl/include > -Fu../fpc/2.6.4/packages/fcl-process/src > -Fu/usr/lib64/lazarus/components/lazutils -Fu/usr/lib64/lazarus/lcl > -Fu/usr/lib64/lazarus/lcl/widgetset > -Fu/usr/lib64/lazarus/lcl/interfaces/gtk2 > -Fu../lazarus/lcl/units/arm-linux/gtk2 > -Fu../lazarus/lcl/units/arm-linux > -Fu../lazarus/components/lazutils/lib/arm-linux > -Fu../lazarus/packager/units/arm-linux -Fu. -FUlib/arm-linux -dLCL > -dLCLgtk2 -XParm-linux- > What I'm doing wrong? What I'm missing? Any help is greatly appreciated. Thanks in advance, Giuliano -------------- next part -------------- An HTML attachment was scrubbed... URL: From nc-gaertnma at netcologne.de Mon Jul 11 14:46:01 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Mon, 11 Jul 2016 14:46:01 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> <201607100720.20287.mse00000@gmail.com> Message-ID: <20160711144601.643c850c@limapholos.matflo.wg> On Mon, 11 Jul 2016 10:57:57 +0100 Graeme Geldenhuys wrote: > On 2016-07-10 06:20, Martin Schreiber wrote: > > We always can write that "UnicodeString" is the wrong name for a reference > > counted utf-16 string because UTF8String or AnsiString with default code page > > set to utf-8 also is Unicode in order to express our anger about the bad > > marketing driven decision of the Delphi owners. > > G*d, I so agree with that too! I simply hate the name "UnicodeString" > implicitly implying UTF-16 only. "Unicode" is an algorithm with 3 > official encodings, not just UTF-16. You know well that the name UnicodeString came from Delphi, where it fits, because it is their only string supporting Unicode. No one forces you to use this name in your code. You can define your own alias type. > Then to boot, they introduced the AnsiString mess in FPC 3.0 - which now > doesn't only mean ANSI encoding (contrary to what the name suggests), it > now means Unicode encodings too. 1. AnsiString comes from Microsoft ANSI code pages, which was not an ANSI-standard at all, so the term "Ansi" was a misnomer from the beginning. 2. MS accepted that and nowadays calls them only "code pages". But many of their pages still use the term "ANSI code page". 3. The Unicode consortium added UTF-8 specially designed for legacy code using 8-bit strings. 4. Microsoft added the UTF-8 code page 65001 (and also code pages for UTF-16 and UTF-32), but no MS Windows used it as system code page. FPC's AnsiString uses the MS code pages numbers, which includes UTF-8. The new FPC 3.0 strings made it easier to use UTF-8 strings - aka you need less conversions and more RTL functions support Unicode - while still keeping compatibility. >[...] Mattias From mschnell at lumino.de Mon Jul 11 15:18:46 2016 From: mschnell at lumino.de (Michael Schnell) Date: Mon, 11 Jul 2016 15:18:46 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> <57838923.6000907@lumino.de> <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> Message-ID: <57839CB6.5010204@lumino.de> On 07/11/2016 02:00 PM, Ondrej Pokorny wrote: > > 100% of end-user Windows LCL applications need Unicode. Can you explain why ? For some 20 Years (before Delphi introduced Unicode) Pascal users were forced to use their locale ANSI instead of Unicode, and hence it was difficult to create programs that were useable in multiple regions. But AFAIR, the complaint about that fact have been rather limited. > You can't simply force your customers to set the German codepage in > their OS settings. 1) not set "German codepage" but Lazarus using the "locale ANSI Code Page", as set in the OS (exactly as it had been before Lazarus moved to UTF-8 some years ago). 2 ) not force, but provide a setting if the user wants to use Unicode or not. -Michael From bartjunk64 at gmail.com Mon Jul 11 18:37:05 2016 From: bartjunk64 at gmail.com (Bart) Date: Mon, 11 Jul 2016 18:37:05 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <57839CB6.5010204@lumino.de> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> <57838923.6000907@lumino.de> <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> <57839CB6.5010204@lumino.de> Message-ID: On 7/11/16, Michael Schnell wrote: > 2 ) not force, but provide a setting if the user wants to use Unicode or > not. Define DisableUTF8RTL? Save your sourcecode encoded as some Windows codepage (not UTF8). Good luck trying to open a file with e.g chinese characters in the filename then on your German machine. Bart From lazarus at kluug.net Mon Jul 11 18:55:20 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Mon, 11 Jul 2016 18:55:20 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> <4b65ae68-5d9f-fa62-401e-591ca9c82729@kluug.net> <1d03a67c-5bd2-3589-9d9b-6a638f806bec@kluug.net> Message-ID: <63ee1834-44b6-7ded-87ef-de875c9804db@kluug.net> On 11.07.2016 13:23, Michael Van Canneyt wrote: > They were not necessarily missing, they were perceived as 'not > necessary'. > > As far as I can see, they are still unnecessary (see below). One could > add them for completeness or symmetry reasons, but I don't see the point. Maybe from the FPC's POV they are not necessary but from LCL application's POV they definitely are. Because LCL applications use the String type, TEncoding has to be compatible with String as well. (Now it is only UnicodeString compatible.) > I am not sure that this 'possible character loss' is a good idea. If you set DefaultSystemCodePage to UTF-8 there won't be any character loss. If you decide to write your FPC application for a national 8-bit codepage, it's your decision to have the character loss. In this case you can still use the UTF-16 based UnicodeString overloads. For me it makes perfect sense. > If you already have a helper class, then this can probably be easily > integrated in the TStrings class. It's based on my TEncoding class written years ago during FPC 2.x.x era: https://sourceforge.net/p/oxml/code/HEAD/tree/trunk/units/OEncoding.pas It uses only UTF-8 based strings and conversion functions from LConvEncoding. FPC needs its own solution because LConvEncoding is in LazUtils and it needs to support DefaultSystemCodePage and not UTF-8 only). The main task is to have AnsiString support in TEncoding. The integration to TStrings is only a few lines of code (depending on how far you want to go with Delphi support). >> If DefaultSystemCodePage is not UTF8 it will probably mean that 2 >> conversions have to be executed (SOURCE->UTFxxx->TARGET). If >> DefaultSystemCodePage is UTF8, one conversion must be enough. >> LazUtils have the LConvEncoding unit for UTF8<>CP conversions. > > This conversion should already be fully automatic if the widestring > manager is used > and the 'SetCodePage' function and friends are used. > > One does not need TEncoding for that. TEncoding is just a wrapper > around the > widestring manager with some utility functions, implemented for Delphi > compatibility. Then it should be pretty easy to do it. Actually I made a first attempt. I attached a patch to http://mantis.freepascal.org/view.php?id=29848 It misses some functionality from the unicode version - particularly GetAnsiByteCount and GetAnsiCharCount. But IMO these are not really needed because actually you do "GetAnsiByteCount():=Length(GetAnsiBytes())". BTW, the unicode versions do the same, which results in executing 2 conversions in TMBCSEncoding.GetString and .GetBytes, which I wanted to avoid in the ANSI versions. Ondrej From leledumbo_cool at yahoo.co.id Mon Jul 11 20:01:30 2016 From: leledumbo_cool at yahoo.co.id (leledumbo) Date: Mon, 11 Jul 2016 11:01:30 -0700 (MST) Subject: [Lazarus] Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <578392C7.8070901@fastwebnet.it> References: <578392C7.8070901@fastwebnet.it> Message-ID: <1468260090510-4048947.post@n3.nabble.com> > What I'm doing wrong? That one: "I must add a lot of extra paths to make it find the sources " NEVER EVER add path to package sources directly. > What I'm missing? Check whether your compiler path calls fpc driver instead of ppcx64 or some other real ppcXXX compiler. Examine the messages window, compile with -va if required, then check the early messages. -- View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-Unable-to-cross-compile-Lazarus-applications-in-Linux-from-x86-64-to-arm-target-Raspberry-pi-tp4048942p4048947.html Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. From frederic.crapez at wanadoo.fr Mon Jul 11 21:14:48 2016 From: frederic.crapez at wanadoo.fr (fred) Date: Mon, 11 Jul 2016 21:14:48 +0200 Subject: [Lazarus] Lazarus - fpc 3 In-Reply-To: <1468260090510-4048947.post@n3.nabble.com> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> Message-ID: <1468264488.17099.1.camel@wanadoo.fr> hy, when y launch a program who compiled with lazarus with a link on the desktop the program create a file named gnom.out What's this ? Thank's From nc-gaertnma at netcologne.de Mon Jul 11 22:55:33 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Mon, 11 Jul 2016 22:55:33 +0200 Subject: [Lazarus] Lazarus - fpc 3 In-Reply-To: <1468264488.17099.1.camel@wanadoo.fr> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <1468264488.17099.1.camel@wanadoo.fr> Message-ID: <20160711225533.1257e769@limapholos.matflo.wg> On Mon, 11 Jul 2016 21:14:48 +0200 fred wrote: > hy, > > when y launch a program who compiled with lazarus > with a link on the desktop the program create a file named gnom.out > > What's this ? The gnu profiler log. It is created when the program is compiled with -pg. Mattias From frederic.crapez at wanadoo.fr Mon Jul 11 23:05:29 2016 From: frederic.crapez at wanadoo.fr (fred) Date: Mon, 11 Jul 2016 23:05:29 +0200 Subject: [Lazarus] Lazarus - fpc 3 In-Reply-To: <20160711225533.1257e769@limapholos.matflo.wg> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <1468264488.17099.1.camel@wanadoo.fr> <20160711225533.1257e769@limapholos.matflo.wg> Message-ID: <1468271129.19645.1.camel@wanadoo.fr> where is this option on the lazarus ide ? They are a lot of components configure for lazarus so i use lazarus version of codetyphon. Friendly Frédéric Le lundi 11 juillet 2016 à 22:55 +0200, Mattias Gaertner a écrit : > On Mon, 11 Jul 2016 21:14:48 +0200 > fred wrote: > > > hy, > > > > when y launch a program who compiled with lazarus > > with a link on the desktop the program create a file named gnom.out > > > > What's this ? > > The gnu profiler log. It is created when the program is compiled with > -pg. > > Mattias From frederic.crapez at wanadoo.fr Mon Jul 11 23:05:29 2016 From: frederic.crapez at wanadoo.fr (fred) Date: Mon, 11 Jul 2016 23:05:29 +0200 Subject: [Lazarus] Lazarus - fpc 3 In-Reply-To: <20160711225533.1257e769@limapholos.matflo.wg> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <1468264488.17099.1.camel@wanadoo.fr> <20160711225533.1257e769@limapholos.matflo.wg> Message-ID: <1468271129.19645.1.camel@wanadoo.fr> where is this option on the lazarus ide ? They are a lot of components configure for lazarus so i use lazarus version of codetyphon. Friendly Frédéric Le lundi 11 juillet 2016 à 22:55 +0200, Mattias Gaertner a écrit : > On Mon, 11 Jul 2016 21:14:48 +0200 > fred wrote: > > > hy, > > > > when y launch a program who compiled with lazarus > > with a link on the desktop the program create a file named gnom.out > > > > What's this ? > > The gnu profiler log. It is created when the program is compiled with > -pg. > > Mattias From michael at freepascal.org Mon Jul 11 23:15:13 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Mon, 11 Jul 2016 23:15:13 +0200 (CEST) Subject: [Lazarus] Lazarus - fpc 3 In-Reply-To: <1468271129.19645.1.camel@wanadoo.fr> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <1468264488.17099.1.camel@wanadoo.fr> <20160711225533.1257e769@limapholos.matflo.wg> <1468271129.19645.1.camel@wanadoo.fr> Message-ID: On Mon, 11 Jul 2016, fred wrote: > where is this option on the lazarus ide ? > > They are a lot of components configure for lazarus > so i use lazarus version of codetyphon. :-) Codetyphon is a customized version of Lazarus, not the other way round :) Michael. From nc-gaertnma at netcologne.de Mon Jul 11 23:14:45 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Mon, 11 Jul 2016 23:14:45 +0200 Subject: [Lazarus] Lazarus - fpc 3 In-Reply-To: <1468271129.19645.1.camel@wanadoo.fr> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <1468264488.17099.1.camel@wanadoo.fr> <20160711225533.1257e769@limapholos.matflo.wg> <1468271129.19645.1.camel@wanadoo.fr> Message-ID: <20160711231445.54562172@limapholos.matflo.wg> On Mon, 11 Jul 2016 23:05:29 +0200 fred wrote: > where is this option on the lazarus ide ? > > They are a lot of components configure for lazarus > so i use lazarus version of codetyphon. The standard Lazarus project options has a search. Typing 'pg' shows Compiler Options / Debugging / generate code for gprof. Mattias From frederic.crapez at wanadoo.fr Mon Jul 11 23:54:35 2016 From: frederic.crapez at wanadoo.fr (fred) Date: Mon, 11 Jul 2016 23:54:35 +0200 Subject: [Lazarus] Lazarus - fpc 3 In-Reply-To: References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <1468264488.17099.1.camel@wanadoo.fr> <20160711225533.1257e769@limapholos.matflo.wg> <1468271129.19645.1.camel@wanadoo.fr> Message-ID: <1468274075.22090.0.camel@wanadoo.fr> Hy, can i install lazarus (recently version) on Haiku ? Friendly Frédéric From frederic.crapez at wanadoo.fr Tue Jul 12 01:55:31 2016 From: frederic.crapez at wanadoo.fr (fred) Date: Tue, 12 Jul 2016 01:55:31 +0200 Subject: [Lazarus] Lazarus - fpc 3 In-Reply-To: <1468274075.22090.0.camel@wanadoo.fr> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <1468264488.17099.1.camel@wanadoo.fr> <20160711225533.1257e769@limapholos.matflo.wg> <1468271129.19645.1.camel@wanadoo.fr> <1468274075.22090.0.camel@wanadoo.fr> Message-ID: <1468281331.25041.1.camel@wanadoo.fr> hy, With a tutorial i make an install of lazarus and fpc to haiku project (beos) the interface is qt4.5.3 Can i install and compile lazarus and fpc to haiku (last version) ? Friendly Frédéric From badsectoracula at gmail.com Tue Jul 12 04:11:56 2016 From: badsectoracula at gmail.com (Kostas Michalopoulos) Date: Tue, 12 Jul 2016 05:11:56 +0300 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> Message-ID: Sadly the GTK+ devs do not seem to care much about backwards compatibility and love to break stuff every other version. Check this blog post which summarizes the issues https://davmac.wordpress.com/2016/07/05/why-do-we-keep-building-rotten-foundations/ IMO GTK+ 2 is the last good GTK+ version and hopefully someone (maybe the MATE devs) will fork it and add support for the needed stuff. GTK+ 3.0+ is not reliable. On Sat, Jul 9, 2016 at 3:34 PM, Juha Manninen wrote: > On Sat, Jul 9, 2016 at 2:16 PM, Erwin van den Bosch > wrote: > > Do we need GTK 3 in Lazarus? Or is GTK 2 good enough? > > GTK 3 binding is needed. > > > Is someone working on the LCL implementation of GTK 3? > > Currently not. We need more contributions. > > > How difficult is it to implement GTK 3? > > Should be easier than GTK 2. The binding's design is better. > Zeljko can answer detailed questions if you plan to improve it. > > Juha > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zeljko at holobit.net Tue Jul 12 09:18:21 2016 From: zeljko at holobit.net (zeljko) Date: Tue, 12 Jul 2016 09:18:21 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> Message-ID: <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> On 07/12/2016 04:11 AM, Kostas Michalopoulos wrote: > Sadly the GTK+ devs do not seem to care much about backwards > compatibility and love to break stuff every other version. > > Check this blog post which summarizes the issues > https://davmac.wordpress.com/2016/07/05/why-do-we-keep-building-rotten-foundations/ > > IMO GTK+ 2 is the last good GTK+ version and hopefully someone (maybe > the MATE devs) will fork it and add support for the needed stuff. GTK+ > 3.0+ is not reliable. I knew about it (not about exact blog, but about abi/api mess) and that's main reason why I do not have enough faith to work on gtk3 bindings. Even gtk2 had ridiculous code in some cases (besides this ABI/API gtk3 changes). Just one simple example of gtk philosophy - look at GtkEntry class and ability to add icon into GtkEntry (gtk_entry_set_icon_xxxx since 2.16). eg. in Qt/WinAPI you can add any handle inside text editor (eg. QPushButton under Qt), but under gtk you're stucked to gdkpixbuf. I really don't know what kind of drugs gtk devels are using. zeljko From mschnell at lumino.de Tue Jul 12 09:35:34 2016 From: mschnell at lumino.de (Michael Schnell) Date: Tue, 12 Jul 2016 09:35:34 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> <57838923.6000907@lumino.de> <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> <57839CB6.5010204@lumino.de> Message-ID: <57849DC6.4070309@lumino.de> On 07/11/2016 06:37 PM, Bart wrote: > Good luck trying to open a file with e.g chinese characters in the > filename then on your German machine. I don't see any use for something like this with any of my current and planned applications. Of course, if a programmer intends to allow for such, he should be free to activate Unicode and live with the complexity (or switch to Delphi and live with some different complexity). -Michael From nc-gaertnma at netcologne.de Tue Jul 12 10:09:14 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Tue, 12 Jul 2016 10:09:14 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <57849DC6.4070309@lumino.de> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> <57838923.6000907@lumino.de> <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> <57839CB6.5010204@lumino.de> <57849DC6.4070309@lumino.de> Message-ID: <20160712100914.6f99795d@limapholos.matflo.wg> On Tue, 12 Jul 2016 09:35:34 +0200 Michael Schnell wrote: > On 07/11/2016 06:37 PM, Bart wrote: > > Good luck trying to open a file with e.g chinese characters in the > > filename then on your German machine. > I don't see any use for something like this with any of my current and > planned applications. Lucky you. > Of course, if a programmer intends to allow for such, he should be free > to activate Unicode and live with the complexity (or switch to Delphi > and live with some different complexity). Complexity is supporting Unicode, which can be switched off. Mattias From erwin at deseine.nl Tue Jul 12 11:57:44 2016 From: erwin at deseine.nl (Erwin van den Bosch) Date: Tue, 12 Jul 2016 11:57:44 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> Message-ID: <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> Op 12-7-2016 om 4:11 schreef Kostas Michalopoulos: > Sadly the GTK+ devs do not seem to care much about backwards > compatibility and love to break stuff every other version. > > Check this blog post which summarizes the issues > https://davmac.wordpress.com/2016/07/05/why-do-we-keep-building-rotten-foundations/ > > IMO GTK+ 2 is the last good GTK+ version and hopefully someone (maybe > the MATE devs) will fork it and add support for the needed stuff. GTK+ > 3.0+ is not reliable. I have read enough! Forget GTK3 (and GTK4). Quote: "Meanwhile, Gtk 4.0 will not be the final stable API of what we would call “Gtk 4”. Each 6 months, the new release (Gtk 4.2, Gtk 4.4, Gtk 4.6) will break API and ABI vs. the release that came before it." I was considering helping to implement the GTK 3 widget set in Lazarus but after some studies and reading I think we might better put our energy in the QT 5 implementation. After 32 years of graphical desktops on Unix we still have no stable widget set! :-( From mschnell at lumino.de Tue Jul 12 12:06:33 2016 From: mschnell at lumino.de (Michael Schnell) Date: Tue, 12 Jul 2016 12:06:33 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <20160712100914.6f99795d@limapholos.matflo.wg> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> <57838923.6000907@lumino.de> <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> <57839CB6.5010204@lumino.de> <57849DC6.4070309@lumino.de> <20160712100914.6f99795d@limapholos.matflo.wg> Message-ID: <5784C129.2010600@lumino.de> On 07/12/2016 10:09 AM, Mattias Gaertner wrote: > supporting Unicode, which can be switched off. This is exactly what I asked but got no answer I could understand. I understand that by an RTL variable I can set the code page new strings are constructed to use. I understand that TStringList.LoadFromFile will work as expected (if the file to be loaded comes in the same encoding). But this is FPC. Will Lazarus be able to cope with that ? Obviously the GUI interface in the LCL still will need to provide the correct encoding (supposedly UTF-8 with Linux and UTF16 with Windows) towards the external GUI infrastructure. -Michael From mschnell at lumino.de Tue Jul 12 12:06:33 2016 From: mschnell at lumino.de (Michael Schnell) Date: Tue, 12 Jul 2016 12:06:33 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <20160712100914.6f99795d@limapholos.matflo.wg> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> <57838923.6000907@lumino.de> <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> <57839CB6.5010204@lumino.de> <57849DC6.4070309@lumino.de> <20160712100914.6f99795d@limapholos.matflo.wg> Message-ID: <5784C129.2010600@lumino.de> On 07/12/2016 10:09 AM, Mattias Gaertner wrote: > supporting Unicode, which can be switched off. This is exactly what I asked but got no answer I could understand. I understand that by an RTL variable I can set the code page new strings are constructed to use. I understand that TStringList.LoadFromFile will work as expected (if the file to be loaded comes in the same encoding). But this is FPC. Will Lazarus be able to cope with that ? Obviously the GUI interface in the LCL still will need to provide the correct encoding (supposedly UTF-8 with Linux and UTF16 with Windows) towards the external GUI infrastructure. -Michael From zeljko at holobit.net Tue Jul 12 13:22:57 2016 From: zeljko at holobit.net (zeljko) Date: Tue, 12 Jul 2016 13:22:57 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> Message-ID: <933bfec2-91c1-3dd0-eb4c-2aa7f593152d@holobit.net> On 07/12/2016 11:57 AM, Erwin van den Bosch wrote: > After 32 years of graphical desktops on Unix we still have no stable > widget set! :-( Yes we have. Qt. zeljko From juha.manninen62 at gmail.com Tue Jul 12 13:54:45 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Tue, 12 Jul 2016 14:54:45 +0300 Subject: [Lazarus] GTK 3.0 In-Reply-To: <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> Message-ID: On Tue, Jul 12, 2016 at 12:57 PM, Erwin van den Bosch wrote: > I have read enough! Forget GTK3 (and GTK4). Yes, I also think they plan to break it too often. However I believe it makes the API better. Honestly, GTK 2 is not a very good API. This is about balance between keeping things stable and improving things. In Lazarus POW it is irrelevant because the bindings are needed anyway. > I was considering helping to implement the GTK 3 widget set in Lazarus but > after some studies and reading I think we might better put our energy in the > QT 5 implementation. Yes, QT 5 bindings also need contributions. Especially the C++ > C-library bindings (used by Pascal) issue must be solved. The earlier library was made manually and its author will not continue it. A new solution should use one of the existing binding generators. Please subscribe to qt-lazarus mailing list if you are interested. > After 32 years of graphical desktops on Unix we still have no stable widget > set! :-( Xlib API is stable. The other widgetsets are also stable enough. Think of it, both Xlib and Win32 APIs have been stable for a long time. Which do you prefer: 1. Nice modern object oriented API which breaks sometimes to keep it clean. 2. Xlib and Win32 stable APIs for eternity. I choose option number 1. Juha From nc-gaertnma at netcologne.de Tue Jul 12 13:58:32 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Tue, 12 Jul 2016 13:58:32 +0200 Subject: [Lazarus] TStringList.LoadFromFile encoding parameter In-Reply-To: <5784C129.2010600@lumino.de> References: <577F7E07.9060203@lumino.de> <578357C5.1010005@lumino.de> <578379EA.2090309@lumino.de> <57838923.6000907@lumino.de> <4ec8ef30-8aa9-b2fc-fb4b-98f04e75ba42@kluug.net> <57839CB6.5010204@lumino.de> <57849DC6.4070309@lumino.de> <20160712100914.6f99795d@limapholos.matflo.wg> <5784C129.2010600@lumino.de> Message-ID: <20160712135832.71db6479@limapholos.matflo.wg> On Tue, 12 Jul 2016 12:06:33 +0200 Michael Schnell wrote: > On 07/12/2016 10:09 AM, Mattias Gaertner wrote: > > supporting Unicode, which can be switched off. > > This is exactly what I asked but got no answer I could understand. I meant that Lazarus supports both. UTF-8 by default and via -dDisableUTF8RTL the default. Mattias From michael at freepascal.org Tue Jul 12 14:10:22 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Tue, 12 Jul 2016 14:10:22 +0200 (CEST) Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> Message-ID: On Tue, 12 Jul 2016, Juha Manninen wrote: > On Tue, Jul 12, 2016 at 12:57 PM, Erwin van den Bosch wrote: >> I have read enough! Forget GTK3 (and GTK4). > > Yes, I also think they plan to break it too often. However I believe > it makes the API better. > Honestly, GTK 2 is not a very good API. > This is about balance between keeping things stable and improving things. > In Lazarus POW it is irrelevant because the bindings are needed anyway. > It is relevant: it costs time, better spent on other things. >> After 32 years of graphical desktops on Unix we still have no stable widget >> set! :-( > > Xlib API is stable. The other widgetsets are also stable enough. > Think of it, both Xlib and Win32 APIs have been stable for a long > time. Which do you prefer: > 1. Nice modern object oriented API which breaks sometimes to keep it clean. > 2. Xlib and Win32 stable APIs for eternity. > > I choose option number 1. Then why does Microsoft choose 2 ? They could have elected to throw out Win32 when they came with .NET. Luckily they did not, many companies would be forced to stay with Windows 95 or NT 4 or somesuch if they hadn't. Stability of your API is of the utmost importance. As an example: The web APIs of some of Microsoft's online platforms have changed 3 times in the last 2 years. Each is slightly different from the next, and requires you to rework a lot of your code, for little gain. People have better things to do than keeping up with changing APIs. Michael. From juha.manninen62 at gmail.com Tue Jul 12 15:19:53 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Tue, 12 Jul 2016 16:19:53 +0300 Subject: [Lazarus] Encoding agnostic string code Message-ID: I have committed units for encoding agnostic code into LazUtils package in Lazarus trunk. See: http://wiki.freepascal.org/Better_Unicode_Support_in_Lazarus#CodePoint_functions_for_encoding_agnostic_code It deals with CodePoints and supports Delphi, too. Please have a look. Juha From mailinglists at geldenhuys.co.uk Tue Jul 12 16:24:41 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Tue, 12 Jul 2016 15:24:41 +0100 Subject: [Lazarus] GTK 3.0 In-Reply-To: <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> Message-ID: On 2016-07-12 10:57, Erwin van den Bosch wrote: > After 32 years of graphical desktops on Unix we still have no stable > widget set! :-( Yes we have, fpGUI. And because fpGUI is 100% custom drawn, if a full featured LCL interface was implemented (an Alpha version already exists), you have full control over both. No need to wait for the next GTK2 or Qt4 release to receive a fix for the underlying widgetset that LCL uses. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From giuliano.colla at fastwebnet.it Tue Jul 12 19:21:36 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Tue, 12 Jul 2016 19:21:36 +0200 Subject: [Lazarus] Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <1468260090510-4048947.post@n3.nabble.com> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> Message-ID: <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> Il 11/07/2016 20:01, leledumbo ha scritto: > Check whether your compiler path calls fpc driver instead of ppcx64 or some > other real ppcXXX compiler. Examine the messages window, compile with -va if > required, then check the early messages. I did clean up everything and restarted fresh. But still it doesn't work. Compiler messages are: Free Pascal Compiler version 2.6.4 [2016/07/12] for arm Copyright (c) 1993-2014 by Florian Klaempfl and others (1002) Target OS: Linux for ARMEL (3104) Compiling fcllaz.pas (3104) Compiling registerfcl.pas (3104) Compiling lazaruspackageintf.pas (9009) Assembling lazaruspackageintf lazaruspackageintf.pas(104) Error: (9005) Assembler /home/colla/Applicazioni/lazarus/fpc/binutils/as not found, switching to external assembling lazaruspackageintf.pas(104) Fatal: (10026) There were 1 errors compiling module, stopping Fatal: (1018) Compilation aborted Error: /usr/local/bin/ppcarm returned an error exitcode (normal if you did not specify a source file to be compiled) but if I go to the folder of lazaruspackageintf.pas/units/arm-linux I find an assembler file lazaruspackageintf.s, and if I launch manually the Assembler "not found", it assembles the file properly and generates an a.out relocatable ARM object file. Any idea? Giuliano From skalogryz.lists at gmail.com Wed Jul 13 03:36:34 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Tue, 12 Jul 2016 21:36:34 -0400 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> Message-ID: On Tue, Jul 12, 2016 at 7:54 AM, Juha Manninen wrote: > Xlib API is stable. The other widgetsets are also stable enough. > Think of it, both Xlib and Win32 APIs have been stable for a long > time. Which do you prefer: > 1. Nice modern object oriented API which breaks sometimes to keep it clean. > 2. Xlib and Win32 stable APIs for eternity. > > I choose option number 1. > Apple selects both. macOS / iOS frameworks keep evolving, While Carbon framework is still out there. I always keep my breath (and my fingers cross) with very next OSX release to see if Carbon is still available. thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From bo.berglund at gmail.com Wed Jul 13 08:25:37 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Wed, 13 Jul 2016 08:25:37 +0200 Subject: [Lazarus] Converting console app to Lazarus on RPi - Indy10 not found Message-ID: I am trying to move a small Windows console program from Delphi2007 on to Lazarus 1.6 with FPC 3.0 on a Raspberry Pi 3. So I used FTP to copy the project files over to RPi, then used Lazarus on the RPi and tried the tool for converting Delphi projects. It stops at a point where it cannot find 6 Indy10 units used by the program. And the tool does not find them when searching either. What should I do next? I do have Indy10 on my RPi in location /home/pi/dev/indy10 and it has been used previously in other projects. The imported project is located in /home/pi/Projects/TCPCommTest. I thought that Lazarus would remember the location of any such package once used, but it seems not to be the case... What do I do now? -- Bo Berglund Developer in Sweden From nc-gaertnma at netcologne.de Wed Jul 13 11:18:17 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Wed, 13 Jul 2016 11:18:17 +0200 Subject: [Lazarus] Converting console app to Lazarus on RPi - Indy10 not found In-Reply-To: References: Message-ID: <20160713111817.75beaed7@limapholos.matflo.wg> On Wed, 13 Jul 2016 08:25:37 +0200 Bo Berglund wrote: >[...] > It stops at a point where it cannot find 6 Indy10 units used by the > program. And the tool does not find them when searching either. > What should I do next? Add Indy10 as requirement in the Project / Project Inspector. > I do have Indy10 on my RPi in location /home/pi/dev/indy10 and it has > been used previously in other projects. > The imported project is located in /home/pi/Projects/TCPCommTest. > > I thought that Lazarus would remember the location of any such package > once used, but it seems not to be the case... It does remember the location of the package. The Search tool searches only within the .lpk files, not in all unit paths of all packages - that's on my todo list. Maybe Indy10 forgot to list all its units. Mattias From giuliano.colla at fastwebnet.it Wed Jul 13 11:57:25 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 13 Jul 2016 11:57:25 +0200 Subject: [Lazarus] Again an UTF8 mess! Message-ID: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> Compiling under Lazarus trunk applications which were written under Lazarus 1.4.x, I find a lot of unresolved symbols. All the xxxUTF8 procedures in fileutil such as FileExistsUTF8, FileOpenUTF8 GetEnvironmentVariableUTF8 etc have disappeared. They are hidden behind an $IFDEF EnableWrapperFunctions. By the way those procedures were generated by the conversion of Delphi code under Lazarus 1.4. I understand that the widestring manager is not needed in most cases, and therefore those functions are pretty much useless outside Windows, (they have always been btw?) but an $ELSE clause preserving the names, and redirecting as appropriate, would be the only acceptable solution by an end user POV. FPC goes to one extreme, keeping stone age old constructs to maintain compatibility with the source code of TP, Lazarus should at least attempt to keep source code compatibility within 1.x! End of rant. Giuliano From lazarus at kluug.net Wed Jul 13 12:22:06 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Wed, 13 Jul 2016 12:22:06 +0200 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> Message-ID: <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> On 13.07.2016 11:57, Giuliano Colla wrote: > Compiling under Lazarus trunk applications which were written under > Lazarus 1.4.x, I find a lot of unresolved symbols. All the xxxUTF8 > procedures in fileutil such as FileExistsUTF8, FileOpenUTF8 > GetEnvironmentVariableUTF8 etc have disappeared. They are hidden > behind an $IFDEF EnableWrapperFunctions. By the way those procedures > were generated by the conversion of Delphi code under Lazarus 1.4. > > I understand that the widestring manager is not needed in most cases, > and therefore those functions are pretty much useless outside Windows, > (they have always been btw?) but an $ELSE clause preserving the names, > and redirecting as appropriate, would be the only acceptable solution > by an end user POV. > > FPC goes to one extreme, keeping stone age old constructs to maintain > compatibility with the source code of TP, Lazarus should at least > attempt to keep source code compatibility within 1.x! > > End of rant. If you read the information after the deprecated key word at every function, you would get to know that those units have been moved to LazFileUtils or LazUTF8 units. Note: we need an incompatibility information about it in http://wiki.freepascal.org/index.php?title=Lazarus_1.8.0_release_notes . Juha, did you do this change? Ondrej From svaa at ciberpiula.net Wed Jul 13 12:32:25 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 13 Jul 2016 12:32:25 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> Message-ID: <9989ae2d-737f-be7b-e9b4-0a631ce0ebd6@ciberpiula.net> El 12/07/2016 a las 13:54, Juha Manninen escribió: > 1. Nice modern object oriented API which breaks sometimes to keep it clean. > 2. Xlib and Win32 stable APIs for eternity. > > I choose option number 1. I choose 1 also, me and everybody. Supporting backward compatiblity is a burden and sometimes you have to leave it behind to evolve. The discussion is what means "sometimes", once each 20 years? Software for Win95 still works in Win10, or once each 6 months? Like GTK. In the link it's said that themes for Gtk 3.18 don't work properly in 3.20. Not even a mayor version. And it is not an bug, but a feature. That's crazy. And now, Gtk developers promise six months incompatibility and a dozen of versions running up and down. The work like if they were maintaining a final software, like LibreOffice, not Library. That's crazy, I would like to see them programming if XWindows were protocol that changed each six months. Let me put it this way, until they reach a stable version for a long time (5-10 years), this is will be a mess and people (and so distros) will stick on old versions. If they plan to never reach a stable version, people will stick on very old versions, and eventually they will move to another more modern tool, and that more modern tool won't be that week's GTK version. (People is already talking about QT) -- Saludos Santiago A. From giuliano.colla at fastwebnet.it Wed Jul 13 12:40:47 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 13 Jul 2016 12:40:47 +0200 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> Message-ID: <8cbcf1c8-93b5-b31f-30ee-43f37d7e4f01@fastwebnet.it> Il 13/07/2016 12:22, Ondrej Pokorny ha scritto: > If you read the information after the deprecated key word at every > function, you would get to know that those units have been moved to > LazFileUtils or LazUTF8 units. One can read the information after the "deprecated" keyword only if he knows where to look, because the code explorer will not find it. A "normal" user is only confused. An $ELSE clause would be the only way to provide somehow a minimal hint. Giuliano From lazarus at kluug.net Wed Jul 13 12:46:31 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Wed, 13 Jul 2016 12:46:31 +0200 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: <8cbcf1c8-93b5-b31f-30ee-43f37d7e4f01@fastwebnet.it> References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> <8cbcf1c8-93b5-b31f-30ee-43f37d7e4f01@fastwebnet.it> Message-ID: <9a931e7b-d637-3ff4-4db9-b538dd99853e@kluug.net> On 13.07.2016 12:40, Giuliano Colla wrote: > Il 13/07/2016 12:22, Ondrej Pokorny ha scritto: >> If you read the information after the deprecated key word at every >> function, you would get to know that those units have been moved to >> LazFileUtils or LazUTF8 units. > > One can read the information after the "deprecated" keyword only if he > knows where to look, because the code explorer will not find it. A > "normal" user is only confused. An $ELSE clause would be the only way > to provide somehow a minimal hint. Those functions have been marked as deprecated in version 1.6 with the same information - they still exists there. They were removed in 1.7 trunk for the coming 1.8 stable. So a normal user that updates from 1.4 to 1.6 gets exactly this information. He updates his uses clauses and when he updates to the future 1.8 version, there won't be no problem. So your problem is that you moved from 1.4 to 1.7 trunk without the 1.6 intermediate step. Your rant is not valid and completely unnecessary. Ondrej From giuliano.colla at fastwebnet.it Wed Jul 13 13:19:27 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 13 Jul 2016 13:19:27 +0200 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: <9a931e7b-d637-3ff4-4db9-b538dd99853e@kluug.net> References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> <8cbcf1c8-93b5-b31f-30ee-43f37d7e4f01@fastwebnet.it> <9a931e7b-d637-3ff4-4db9-b538dd99853e@kluug.net> Message-ID: <843e8413-8444-a34c-7427-466ed74a3e05@fastwebnet.it> Il 13/07/2016 12:46, Ondrej Pokorny ha scritto: > So your problem is that you moved from 1.4 to 1.7 trunk without the > 1.6 intermediate step. Your rant is not valid and completely unnecessary. Do you have an idea of how many users and distros may happen to skip one step? Giuliano From ganmax at narod.ru Wed Jul 13 13:22:49 2016 From: ganmax at narod.ru (Maxim Ganetsky) Date: Wed, 13 Jul 2016 14:22:49 +0300 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: <843e8413-8444-a34c-7427-466ed74a3e05@fastwebnet.it> References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> <8cbcf1c8-93b5-b31f-30ee-43f37d7e4f01@fastwebnet.it> <9a931e7b-d637-3ff4-4db9-b538dd99853e@kluug.net> <843e8413-8444-a34c-7427-466ed74a3e05@fastwebnet.it> Message-ID: <57862489.3050104@narod.ru> 13.07.2016 14:19, Giuliano Colla пишет: > Il 13/07/2016 12:46, Ondrej Pokorny ha scritto: >> So your problem is that you moved from 1.4 to 1.7 trunk without the >> 1.6 intermediate step. Your rant is not valid and completely unnecessary. > > Do you have an idea of how many users and distros may happen to skip one > step? It does not matter. Every user should read all release notes even for skipped versions. In your case this would be 1.6 and 1.8. -- Best regards, Maxim Ganetsky mailto:ganmax at narod.ru From Andreas at TheBergerClan.org Wed Jul 13 13:59:27 2016 From: Andreas at TheBergerClan.org (Andreas Berger) Date: Wed, 13 Jul 2016 08:59:27 -0300 Subject: [Lazarus] GTK 3.0 In-Reply-To: <9989ae2d-737f-be7b-e9b4-0a631ce0ebd6@ciberpiula.net> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <9989ae2d-737f-be7b-e9b4-0a631ce0ebd6@ciberpiula.net> Message-ID: <57862D1F.8000400@TheBergerClan.org> On Wed 13/07/2016 07:32, Santiago A. wrote: > El 12/07/2016 a las 13:54, Juha Manninen escribió: >> 1. Nice modern object oriented API which breaks sometimes to keep it clean. >> 2. Xlib and Win32 stable APIs for eternity. >> >> I choose option number 1. > I choose 1 also, me and everybody. Supporting backward compatiblity is a > burden and sometimes you have to leave it behind to evolve. The > discussion is what means "sometimes", once each 20 years? Software for > Win95 still works in Win10, or once each 6 months? Like GTK. > > In the link it's said that themes for Gtk 3.18 don't work properly in > 3.20. Not even a mayor version. And it is not an bug, but a feature. > That's crazy. > > And now, Gtk developers promise six months incompatibility and a dozen > of versions running up and down. The work like if they were maintaining > a final software, like LibreOffice, not Library. That's crazy, I would > like to see them programming if XWindows were protocol that changed each > six months. > > Let me put it this way, until they reach a stable version for a long > time (5-10 years), this is will be a mess and people (and so distros) > will stick on old versions. If they plan to never reach a stable > version, people will stick on very old versions, and eventually they > will move to another more modern tool, and that more modern tool won't > be that week's GTK version. (People is already talking about QT) > Well said! From nc-gaertnma at netcologne.de Wed Jul 13 14:06:19 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Wed, 13 Jul 2016 14:06:19 +0200 Subject: [Lazarus] Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> Message-ID: <20160713140619.763bb681@limapholos.matflo.wg> On Tue, 12 Jul 2016 19:21:36 +0200 Giuliano Colla wrote: > Il 11/07/2016 20:01, leledumbo ha scritto: > > Check whether your compiler path calls fpc driver instead of ppcx64 or some > > other real ppcXXX compiler. Examine the messages window, compile with -va if > > required, then check the early messages. > > I did clean up everything and restarted fresh. But still it doesn't work. What compiler is now called? > Compiler messages are: > > Free Pascal Compiler version 2.6.4 [2016/07/12] for arm > Copyright (c) 1993-2014 by Florian Klaempfl and others > (1002) Target OS: Linux for ARMEL > (3104) Compiling fcllaz.pas > (3104) Compiling registerfcl.pas > (3104) Compiling lazaruspackageintf.pas > (9009) Assembling lazaruspackageintf > lazaruspackageintf.pas(104) Error: (9005) Assembler /home/colla/Applicazioni/lazarus/fpc/binutils/as not found, switching to external assembling > lazaruspackageintf.pas(104) Fatal: (10026) There were 1 errors compiling module, stopping > Fatal: (1018) Compilation aborted > Error: /usr/local/bin/ppcarm returned an error exitcode (normal if you did not specify a source file to be compiled) > > but if I go to the folder of lazaruspackageintf.pas/units/arm-linux I > find an assembler file lazaruspackageintf.s, and if I launch manually > the Assembler "not found", it assembles the file properly and generates > an a.out relocatable ARM object file. Why does FPC say Assembler /home/colla/Applicazioni/lazarus/fpc/binutils/as not found? Mattias From juha.manninen62 at gmail.com Wed Jul 13 15:40:14 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Wed, 13 Jul 2016 16:40:14 +0300 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> Message-ID: On Wed, Jul 13, 2016 at 1:22 PM, Ondrej Pokorny wrote: > Note: we need an incompatibility information about it in > http://wiki.freepascal.org/index.php?title=Lazarus_1.8.0_release_notes . > Juha, did you do this change? I deprecated the functions before 1.6. After the release Bart, according to plan, turned condition {$IFnDEF DisableWrapperFunctions} into {$IFDEF EnableWrapperFunctions}. Apparently he forgot some places. I finished the job in r52678. I updated both 1.6 and 1.8 release notes now with the relevant info. Giuliano, you can still use the wrappers by defining EnableWrapperFunctions. However I recommend using the correct units. It is not a very big change in your code. Juha From mailinglists at geldenhuys.co.uk Wed Jul 13 17:53:58 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 13 Jul 2016 16:53:58 +0100 Subject: [Lazarus] Procedure List + CodeTools not showing nested procedures Message-ID: <39a40f31-e944-d428-e138-b83d43ce91f6@geldenhuys.co.uk> Hi, See the attached screenshots showing a comparative Procedure List result for the same unit with the same search term. The one screenshot is of Maximus IDE, and the other is from Lazarus IDE. Lazarus IDE’s Procedure List uses CodeTools to find and populate the ListView, but it doesn’t find any nested procedures or functions. eg: TMainForm.SomeMethod; var x,y: integer; procedure LocalProc; begin // some code here end; begin // some code here. end; Lazarus’s Procedure List will not find the LocalProc procedure. The code to populate the ListView is here… procedure TProcedureListForm.PopulateListview; in the /ide/procedurelist.pas unit. Anybody with more CodeTools knowledge than I know what should be changed to find such nested procedures or functions? Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot_lazarus.png Type: image/png Size: 9865 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot_maximus.png Type: image/png Size: 10901 bytes Desc: not available URL: From gaborboros at yahoo.com Wed Jul 13 17:54:27 2016 From: gaborboros at yahoo.com (Gabor Boros) Date: Wed, 13 Jul 2016 17:54:27 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> Message-ID: <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> Hi Graeme and All, > And because fpGUI is 100% custom drawn, if a full featured LCL interface > was implemented (an Alpha version already exists), you have full control > over both. How can I try it? After many circles in the past I chose Qt for Linux because look more robust than GTK. But nowadays the distributions switching to Qt5 and Lazarus have Qt4 compability only. Which is the good direction for concentrate the available resources (manpower) Qt5 or fpGUI. Graeme certainly say fpGUI. :D Others? Foundation project for Qt5 binding or fpGUI LCL interface? How big is the user base of Lazarus-Qt? Gabor From svaa at ciberpiula.net Wed Jul 13 18:12:09 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 13 Jul 2016 18:12:09 +0200 Subject: [Lazarus] Target Survey Message-ID: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Hi: >From a message from Gabor, it would be interesting to learn what's the distribution of Lazarus users: These are my data: OS target: Windows: 55% Linux: 45% Widget Target: Win32 45% Gtk2: 45% fpGUI: 10% Easter Egg data ;-) Country: Spain -- Saludos Santiago A. From mailinglists at geldenhuys.co.uk Wed Jul 13 18:13:43 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 13 Jul 2016 17:13:43 +0100 Subject: [Lazarus] GTK 3.0 In-Reply-To: <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> Message-ID: <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> On 2016-07-13 16:54, Gabor Boros wrote: > > How can I try it? The following wiki page should explain it well: http://wiki.freepascal.org/fpGUI_Interface Create a new LCL application. Drop a TButton and TEdit on the form. Go to Project Options -> Compiler Options. Then depending on your version of Lazarus IDE, look in “Additions and Overrides” and set the LCLWidgetType to “fpgui”. WARNING: Don't drop a TLabel on the test application, that will cause it to AV at runtime. TLabel might look simple, but according to LCL it is quite complex to implement and is not yet done for LCL-fpGUI. > Which is the good direction for concentrate the available resources > (manpower) Qt5 or fpGUI. Graeme certainly say fpGUI. :D Others? My theory was always that LCL-fpGUI (or any other custom drawn toolkit) should become the reference implementation for LCL. Why? Because it is 100% cross-platform, custom drawn and implemented in Object Pascal - it can support any LCL feature on all target OSes. Whereas with other LCL widgetsets, there are plenty of platform specific limitations. See the "Restricted" tab in the Object Inspector to see what I mean. I think there are others listed on the wiki too. fpGUI is also the least resource intensive GUI toolkit that LCL supports, and with no extra [huge] libraries needed. This makes compiling, linking and deployment the least painful of the bunch. For example… just take a look at all the GTK2 and Qt *.so files and then include whatever 3rd party libraries they depend on. The list is massive! Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From zeljko at holobit.net Wed Jul 13 18:14:48 2016 From: zeljko at holobit.net (zeljko) Date: Wed, 13 Jul 2016 18:14:48 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: <41186094-05a8-aee5-7348-dc8ab7ada2d2@holobit.net> On 07/13/2016 06:12 PM, Santiago A. wrote: > Hi: > > From a message from Gabor, it would be interesting to learn what's the > distribution of Lazarus users: > > These are my data: > > OS target: > Windows: 55% > Linux: 45% Windows: 20% Linux: 75% OSX: 5% > > Widget Target: > Win32 45% > Gtk2: 45% > fpGUI: 10% Qt 100% > > Easter Egg data ;-) > Country: Spain Country: Croatia zeljko From mailinglists at geldenhuys.co.uk Wed Jul 13 18:18:21 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 13 Jul 2016 17:18:21 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: OS target: FreeBSD: 90% Linux: 10% Windows: 0% MacOS: 0% Widget Target: Win32: 0% GTK2: 5% fpGUI: 95% (pure fpGUI as LCL-fpGUI is still in Alpha state) Country: England Regards, Graeme From giuliano.colla at fastwebnet.it Wed Jul 13 18:32:03 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 13 Jul 2016 18:32:03 +0200 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> Message-ID: Il 13/07/2016 15:40, Juha Manninen ha scritto: > Giuliano, you can still use the wrappers by defining EnableWrapperFunctions. > However I recommend using the correct units. It is not a very big > change in your code. I don't complain about the change in code. It has always happened and it will happen in future. I know that those procedures are in the Fileutils unit, I gave a look and I understood what had happened. But what of unaware users? I complain about making things more obscure and difficult than necessary for a plain average user. If a symbol, name procedure, whatever is marked as deprecated, it's easily understood by anybody. If it generates a compiler error telling what he should do instead, or that one should read the release notes, it's again easy to handle. If it simply "undefined" with no other clue, it just generates user frustration. Giuliano From juha.manninen62 at gmail.com Wed Jul 13 18:57:41 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Wed, 13 Jul 2016 19:57:41 +0300 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> Message-ID: On Wed, Jul 13, 2016 at 7:32 PM, Giuliano Colla wrote: > whatever is marked as deprecated, it's easily understood by anybody. They were deprecated for a long time in trunk and also in the 1.6 release. They will be deprecated forever in the fixes_1_6 branch and in 1.6.x dot releases. Juha From skalogryz.lists at gmail.com Wed Jul 13 19:22:03 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Wed, 13 Jul 2016 13:22:03 -0400 Subject: [Lazarus] GTK 3.0 In-Reply-To: <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> Message-ID: On Wed, Jul 13, 2016 at 12:13 PM, Graeme Geldenhuys < mailinglists at geldenhuys.co.uk> wrote: > Because it is 100% cross-platform, custom drawn and implemented in Object > Pascal - it > can support any LCL feature on all target OSes. Whereas with other LCL > widgetsets, there are plenty of platform specific limitations. > How does it handle an OS specific limitations? For example: * drawing outside of the paint event? Where some (Carbon, Cocoa) widgetset forbid that. * platform specific mouse behavior. OSX ctrl+mouseclick should trigger popup menu (= right click) thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From giuliano.colla at fastwebnet.it Wed Jul 13 19:36:23 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 13 Jul 2016 19:36:23 +0200 Subject: [Lazarus] Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <20160713140619.763bb681@limapholos.matflo.wg> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> <20160713140619.763bb681@limapholos.matflo.wg> Message-ID: <2e6906e1-e35b-5b82-7e6b-45e5a4a11d77@fastwebnet.it> An HTML attachment was scrubbed... URL: -------------- next part -------------- SetPrimaryConfigPath NewValue="~/.lazarus_svn/" -> "/home/colla/.lazarus_svn/" Hint: (lazarus) [TMainIDE.ParseCmdLineOptions] PrimaryConfigPath="/home/colla/.lazarus_svn" Hint: (lazarus) [TMainIDE.ParseCmdLineOptions] SecondaryConfigPath="/etc/lazarus" Hint: (lazarus) [TBuildManager.SetBuildTarget] Old=x86_64-linux-qt New=x86_64-linux-qt FPC=True LCL=False Warning: (lazarus) Macro not defined: "Target_OS". TComponentTreeView.RebuildComponentNodes: Updating TreeView with components TComponentTreeView.SetSelection: Updating component node values. Warning: (lazarus) Macro not defined: "Target_OS". Hint: (lazarus) [TBuildManager.SetBuildTarget] Old=x86_64-linux-qt New=arm-linux-gtk2 FPC=True LCL=True Warning: (lazarus) Macro not defined: "Target_OS". TLazSourceFileManager.InitOpenedProjectFile select form in designer: Form1:TForm1 TDesigner TComponentTreeView.RebuildComponentNodes: Updating TreeView with components Warning: (lazarus) Macro not defined: "Target_OS". Hint: (lazarus) Last compile was incomplete for FCL 1.0.1 State file="/home/colla/Applicazioni/lazarus/packager/units/arm-linux/FCL.compiled" Hint: (lazarus) Missing state file of LazUtils 1.0: /home/colla/Applicazioni/lazarus/components/lazutils/lib/arm-linux/LazUtils.compiled Hint: (lazarus) Missing state file of LCLBase 1.7: /home/colla/Applicazioni/lazarus/lcl/units/arm-linux/LCLBase.compiled Hint: (lazarus) Missing state file of LCL 1.7: /home/colla/Applicazioni/lazarus/lcl/units/arm-linux/gtk2/LCL.compiled Info: (lazarus) Execute Title="Compile package FCL 1.0.1" Info: (lazarus) Working Directory="/home/colla/Applicazioni/lazarus/packager/registration/" Info: (lazarus) Executable="/usr/bin/fpc" Info: (lazarus) Param[0]="-Parm" Info: (lazarus) Param[1]="-MObjFPC" Info: (lazarus) Param[2]="-Scghi" Info: (lazarus) Param[3]="-O1" Info: (lazarus) Param[4]="-g" Info: (lazarus) Param[5]="-gl" Info: (lazarus) Param[6]="-l" Info: (lazarus) Param[7]="-vewnhibq" Info: (lazarus) Param[8]="-Fu/home/colla/Applicazioni/lazarus/packager/registration/" Info: (lazarus) Param[9]="-FU/home/colla/Applicazioni/lazarus/packager/units/arm-linux/" Info: (lazarus) Param[10]="fcllaz.pas" Error: (lazarus) [TLazPackageGraph.CompileRequiredPackages] "Codice di uscita 1" Error: (lazarus) [TMainIDE.DoBuildProject] PkgBoss.DoCompileProjectDependencies failed TComponentTreeView.RebuildComponentNodes: Updating TreeView with components LAZARUS END - cleaning up ... Hint: (lazarus) [TMainIDE.Destroy] B -> inherited Destroy... TMainIDE Hint: (lazaAdding "--pcp=~/.lazarus_svn/" as a parameter project1.lpi is a file is a file SetPrimaryConfigPath NewValue="~/.lazarus_svn/" -> "/home/colla/.lazarus_svn/" TLazarusManager.Run starting /home/colla/Applicazioni/lazarus/lazarus ... From giuliano.colla at fastwebnet.it Wed Jul 13 19:54:12 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 13 Jul 2016 19:54:12 +0200 Subject: [Lazarus] [SOLVED!]Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <20160713140619.763bb681@limapholos.matflo.wg> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> <20160713140619.763bb681@limapholos.matflo.wg> Message-ID: <3683a2a2-e2a5-ec86-4827-d082858c6816@fastwebnet.it> Il 13/07/2016 14:06, Mattias Gaertner ha scritto: > Why does FPC say > Assembler /home/colla/Applicazioni/lazarus/fpc/binutils/as not found? Because I had added one of the required options, i.e. -XParm-linux- in Custom Options (which applies only to project files) and not in Additions and Overrides, which applies also to packages. Now everything complies properly, and it fails only when the loader attempts to load the cross libraries which I have not yet installed in the proper location, because I counted on the loader error messages to install just what's needed. As soon as I have some time to spare, I'll update the wiki page, which still reflects what was done before LCL was recompiled automatically when needed. Thanks to everybody, Giuliano From mailinglists at geldenhuys.co.uk Wed Jul 13 20:45:51 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 13 Jul 2016 19:45:51 +0100 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> Message-ID: On 2016-07-13 18:22, Dmitry Boyarintsev wrote: > How does it handle an OS specific limitations? Because I'm in full control of what fpGUI can do, I can implement anything that is missing. The same can't easily be done with GTK2/3, Qt4/5, OSX etc. > For example: > * drawing outside of the paint event? Where some (Carbon, Cocoa) widgetset > forbid that. fpGUI’s ‘develop’ branch allows that without problems because internally it uses AggPas to do rendering to a image buffer. The ‘develop’ branch also switched to a single-handle-per-form design, so the image buffer represents the whole form. The actual Paint event simply bitblt’s the image buffer to the actual OS window. > * platform specific mouse behavior. OSX ctrl+mouseclick should trigger > popup menu (= right click) Like I mentioned in the first paragraph - such functionality can be implemented because fpGUI is under our full control and is in the same language as what LCL is written. It has taken me years, but fpGUI is very consistent across platforms now. I can (and have) develop any new widgets [or applications] no matter how complex (think Ribbon widget complex) under a single platform, and I know 100% it will look and behave the same on all other supported fpGUI platforms. No IFDEF’s code anywhere in the widgets or applications. This will help LCL consistency across platforms too. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From skalogryz.lists at gmail.com Wed Jul 13 21:27:22 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Wed, 13 Jul 2016 15:27:22 -0400 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> Message-ID: On Wed, Jul 13, 2016 at 2:45 PM, Graeme Geldenhuys < mailinglists at geldenhuys.co.uk> wrote: > Like I mentioned in the first paragraph - such functionality can be > implemented because fpGUI is under our full control and is in the same > language as what LCL is written. > [snip] and I know 100% it will look and behave the same on all other > supported fpGUI platforms. > So what's more important - to be consistent and act 100% exactly the same across platform - or feel more towards the native platform? If I create a control that does something special with Ctrl+Left click, should it retain this functionality for OSX? What typically happens: Cmd+Left click is used in OSX applications (where ctrl+click would be used for Windows or Linux). Is it up to a control (to distinguish between Ctrl+Left click on Linux and OSX) or are there fpGUI APIs to control the system specific behavior? thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From vasudevram at gmail.com Wed Jul 13 22:00:14 2016 From: vasudevram at gmail.com (Vasudev Ram) Date: Thu, 14 Jul 2016 01:30:14 +0530 Subject: [Lazarus] Is there a way to interact with this list via the Web? Message-ID: Hi list, Is there a way to interact with this list via the Web? By interact, I mean, both read and post messages. I have seen the main page for the list, where one can subscribe, etc. and do know that there are archives. But archives are only for reading, and not in a convenient format like a NNTP newsreader or email client. Is there any way (including third-party, such as Gmane or similar tools), by which one can both read messages from, and write messages to, the list, via the Web ? Thanks, Vasudev Ram - Dancing Bison Enterprises - Python, C, Linux, databases, open source, ... - Web site: https://vasudevram.github.io From bo.berglund at gmail.com Thu Jul 14 00:07:45 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Thu, 14 Jul 2016 00:07:45 +0200 Subject: [Lazarus] Converting console app to Lazarus on RPi - Indy10 not found References: <20160713111817.75beaed7@limapholos.matflo.wg> Message-ID: On Wed, 13 Jul 2016 11:18:17 +0200, Mattias Gaertner wrote: > >Add Indy10 as requirement in the Project / Project Inspector. Thanks, I added indylaz as requirement and now it finds the files as it should! But now I am getting a different error message from a non-Indy problem: I am using the Synopse PasZip unit to add zipping functionality to my program. When I moved it into Lazarus on an RPi3 I get the following error message: PasZip.pas(60,3) Fatal: Cannot find LibC used by PasZip of the Project Inspector. This is the PasZip code that it complains about: uses {$ifdef MSWINDOWS} Windows, {$else} LibC, <== Error here Types, {$endif} SysUtils; When I google this it seems like there has been some problems earlier with LibC and Lazarus, but I did not find a working solution. What to do? -- Bo Berglund Developer in Sweden From bo.berglund at gmail.com Thu Jul 14 00:10:18 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Thu, 14 Jul 2016 00:10:18 +0200 Subject: [Lazarus] Is there a way to interact with this list via the Web? References: Message-ID: On Thu, 14 Jul 2016 01:30:14 +0530, Vasudev Ram wrote: >Is there any way (including third-party, such as Gmane or similar >tools), by which one can both read messages from, and write messages >to, the list, via the Web ? > I am using GMANE and a newsreader and it works very well for me. gmane.comp.ide.lazarus.general on news.gmane.org should work. Why would you want to use a web browser instead of a news reader? -- Bo Berglund Developer in Sweden From nc-gaertnma at netcologne.de Thu Jul 14 00:37:51 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 14 Jul 2016 00:37:51 +0200 Subject: [Lazarus] Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <2e6906e1-e35b-5b82-7e6b-45e5a4a11d77@fastwebnet.it> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> <20160713140619.763bb681@limapholos.matflo.wg> <2e6906e1-e35b-5b82-7e6b-45e5a4a11d77@fastwebnet.it> Message-ID: <20160714003751.5f86ee88@limapholos.matflo.wg> On Wed, 13 Jul 2016 19:36:23 +0200 Giuliano Colla wrote: > Il 13/07/2016 14:06, Mattias Gaertner ha scritto: >[...] > fpc->ppcarm 2.6.4 >[...] > Assembler /home/colla/Applicazioni/lazarus/fpc/binutils/as not found? >[...] > Copying and pasting all the compiler options from Lazarus "View options" again works just fine: fpc  -Tlinux -Parm -CpARMV7 -MObjFPC -Scghi -O1 -g -gl -Xg  -k-L/home/colla/Applicazioni/lazarus/fpc/libcross -l -vabq -Fi/home/colla/Applicazioni/Raspberry/Cross/lib/arm-linux -Fu/home/colla/Applicazioni/lazarus/lcl/units/arm-linux/gtk2 -Fu/home/colla/Applicazioni/lazarus/lcl/units/arm-linux -Fu/home/colla/Applicazioni/lazarus/components/lazutils/lib/arm-linux -Fu/home/colla/Applicazioni/lazarus/packager/units/arm-linux -Fu/home/colla/Applicazioni/Raspberry/Cross/ -FU/home/colla/Applicazioni/Raspberry/Cross/lib/arm-linux/ -dLCL -dLCLgtk2 -XParm-linux- fcllaz.pas >out3.txt > When the compile or build is launched from within Lazarus (1.4.4 and 1.7 behave the same), it fails with "Assembler not found". Check that the IDE uses the same PATH variable as your terminal. Instead of "fpc" try using "ppcarm" with full path in the IDE. Instead of "View Options", right click in Messages window on the red header line / About. This gives you the actual parameters of the TProcess instance. > If I move in the proper place .o's and .ppu's obtained with manual compilation I can proceed one step further, but next compilation fails for the same reason. Also make sure you have enough memory. Compiling in the IDE needs more memory. > My wild guess has been that Lazarus doesn't pass all the required options to the compiler, or maybe not in the proper order. > Unfortunately, even setting -va, when compiling from lazarus the resulting messages (even Save All) are much more concise than the raw compiler output, and it's rather hard to understand what goes wrong. Probably stdout vs stderr. > I resorted to launching lazarus from command line and redirecting the output to a file. > One can see something but is it the full story? I enclose the lazout.txt file where it would appear that the options passed to FPC aren't as complete as desirable (-CpARMV7 has disappeared, and so -XParm-linux- which are both required by FPC). Is that the reason? I'm not an arm expert. Mattias From nc-gaertnma at netcologne.de Thu Jul 14 00:46:35 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 14 Jul 2016 00:46:35 +0200 Subject: [Lazarus] Converting console app to Lazarus on RPi - Indy10 not found In-Reply-To: References: <20160713111817.75beaed7@limapholos.matflo.wg> Message-ID: <20160714004635.117c735f@limapholos.matflo.wg> On Thu, 14 Jul 2016 00:07:45 +0200 Bo Berglund wrote: > On Wed, 13 Jul 2016 11:18:17 +0200, Mattias Gaertner > wrote: >[...] > I am using the Synopse PasZip unit to add zipping functionality to my > program. When I moved it into Lazarus on an RPi3 I get the following > error message: > > PasZip.pas(60,3) Fatal: Cannot find LibC used by PasZip of the Project > Inspector. LibC was an ancient unit for Linux only. It vanished from FPC many years ago. Its functions are now in units like Unix, BaseUnix, etc to support more platforms than Linux. > This is the PasZip code that it complains about: > > uses > {$ifdef MSWINDOWS} > Windows, > {$else} > LibC, <== Error here > Types, > {$endif} > SysUtils; > > When I google this it seems like there has been some problems earlier > with LibC and Lazarus, but I did not find a working solution. > > What to do? Search the functions in FPC and use the new units. Mattias From mailinglists at geldenhuys.co.uk Thu Jul 14 01:00:33 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 00:00:33 +0100 Subject: [Lazarus] Is there a way to interact with this list via the Web? In-Reply-To: References: Message-ID: <80021fea-331f-d757-dfa6-675cb70207af@geldenhuys.co.uk> On 2016-07-13 23:10, Bo Berglund wrote: > Why would you want to use a web browser instead of a news reader? Exactly. ;-) NNTP rocks! G. From mailinglists at geldenhuys.co.uk Thu Jul 14 01:24:24 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 00:24:24 +0100 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> Message-ID: <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> On 2016-07-13 20:27, Dmitry Boyarintsev wrote: > So what's more important - to be consistent and act 100% exactly the same > across platform > - or feel more towards the native platform? That as always been the big difference [design goal] between LCL and [pure] fpGUI. LCL believes “native” is better, but sacrifices consistency between LCL widgetsets - often leading to IFDEF’d code in LCL and in your application. It’s been like that 10 years ago when I first started using Lazarus, and is still the case today. fpGUI believes "consistency" is better - producing cleaner code with no IFDEF's at all. In commercial environments it also makes cross-platform training much easier, and Windows and Linux systems can run side-by-side with no visual difference or behaviour using the same application. With that, my argument [for the fpGUI design] is also that people use the web as a new platform. There is NO “native look and feel” for the web, yet nobody has any problems using web apps (Gmail, Office 365 and the millions of others). So why can people use the web (with no native L&F) just fine, but suddenly can’t manage with similar desktop applications. End-users are not as helpless (stupid or incompetent) as many claim. As long as a button acts like a button, a menu acts like a menu etc, end-users can use them just fine. fpGUI also has excellent theming support to simulate native L&F to acceptable standards. It includes about 8 themes [http://geldenhuys.co.uk/~graemeg/themes/start.html], and creating new ones are a very quick and easy process. On a side note: There is NO “native” widget toolkit under Linux, FreeBSD, Solaris etc - XLib doesn’t supply a GUI toolkit. So native has no bearing on such platforms. I can also throw in the argument that not even Microsoft or Apple adhere to their own Human Interface Guidelines - so why must we be that strict? Pros or Cons, I still think having a fully implemented LCL-fpGUI widgetset would be very beneficial to the Lazarus project. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From ganmax at narod.ru Thu Jul 14 01:53:15 2016 From: ganmax at narod.ru (Maxim Ganetsky) Date: Thu, 14 Jul 2016 02:53:15 +0300 Subject: [Lazarus] LRT form resource string format is dropped, LRJ is used instead Message-ID: <96647946-1942-1cf1-a0c0-5e8135be45c2@narod.ru> Hello. Since r52679, form translation strings are no longer extracted to LRT files. Support for this format was dropped. From now on we use LRJ files with the format identical to RSJ files which are emitted by FPC 3.0.0 and up. This change was needed because LRT file format was broken by design, e.g. it never handled multiline captions properly (see bug 26553 for details). In order to migrate to new format you should open your project and click "Project" -> "Resave forms with enabled i18n" menu item, then rebuild your project. After this you can safely remove LRT files. Please test. -- Best regards, Maxim Ganetsky mailto:ganmax at narod.ru From skalogryz.lists at gmail.com Thu Jul 14 03:01:07 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Wed, 13 Jul 2016 21:01:07 -0400 Subject: [Lazarus] GTK 3.0 In-Reply-To: <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> Message-ID: On Wed, Jul 13, 2016 at 7:24 PM, Graeme Geldenhuys < mailinglists at geldenhuys.co.uk> wrote: > fpGUI believes "consistency" is better - producing cleaner code with no > IFDEF's at all. In commercial environments it also makes cross-platform > training much easier, and Windows and Linux systems can run side-by-side > with no visual difference or behaviour using the same application. > Ok. What is the approach to Mobile platforms, where inputs are different from desktops? Should there be a consistency with Desktop as well? thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Thu Jul 14 07:09:39 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 06:09:39 +0100 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> Message-ID: <35fd9cc2-7999-e40c-0b5a-687c5933e959@geldenhuys.co.uk> On 2016-07-14 02:01, Dmitry Boyarintsev wrote: > What is the approach to Mobile platforms fpGUI works on WinCE devices and other Linux Embedded devices. As for mobile phones - I don't believe fpGUI or LCL is appropriate for them. I would rather use the native mobile phone toolkits in that case. Embarcadero's FireMonkey toolkit shows that customdrawn toolkits can be used to target multiple mobile phone OSes, but based on the people I spoke to, it is not ideal. So again, I would rather opt for using the native development tools and toolkits of each mobile phone OS. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From lazarus at kluug.net Thu Jul 14 07:56:30 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Thu, 14 Jul 2016 07:56:30 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: <35fd9cc2-7999-e40c-0b5a-687c5933e959@geldenhuys.co.uk> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> <35fd9cc2-7999-e40c-0b5a-687c5933e959@geldenhuys.co.uk> Message-ID: <165b162c-4a56-2c73-a917-c55d7c0637f4@kluug.net> I just took a quick look at your fpGUI Toolkit and I have to say I like it. At the first glance it seems to work very nicely. I especially like the idea that you have 100% control of the application. I wasn't able to run fpgcanvas (runtime exception), nanoedit (didn't compile) and agg_canvas_test (runtime exception) demos but docedit and helloword worked. How do you handle high-DPI displays in fpGUI? Ondrej From sam_herzog at yahoo.com Thu Jul 14 09:31:58 2016 From: sam_herzog at yahoo.com (Samuel Herzog) Date: Thu, 14 Jul 2016 07:31:58 +0000 (UTC) Subject: [Lazarus] GTK 3.0 In-Reply-To: <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> Message-ID: <71984677.3605526.1468481518495.JavaMail.yahoo@mail.yahoo.com> Hello Graeme, I just want to say I absolutly agree with you. Thanks, Sam Von: Graeme Geldenhuys An: lazarus at lists.lazarus-ide.org Gesendet: 1:24 Donnerstag, 14.Juli 2016 Betreff: Re: [Lazarus] GTK 3.0 On 2016-07-13 20:27, Dmitry Boyarintsev wrote: > So what's more important - to be consistent and act 100% exactly the same > across platform > - or feel more towards the native platform? That as always been the big difference [design goal] between LCL and [pure] fpGUI. LCL believes “native” is better, but sacrifices consistency between LCL widgetsets - often leading to IFDEF’d code in LCL and in your application. It’s been like that 10 years ago when I first started using Lazarus, and is still the case today. fpGUI believes "consistency" is better - producing cleaner code with no IFDEF's at all. In commercial environments it also makes cross-platform training much easier, and Windows and Linux systems can run side-by-side with no visual difference or behaviour using the same application. With that, my argument [for the fpGUI design] is also that people use the web as a new platform. There is NO “native look and feel” for the web, yet nobody has any problems using web apps (Gmail, Office 365 and the millions of others). So why can people use the web (with no native L&F) just fine, but suddenly can’t manage with similar desktop applications. End-users are not as helpless (stupid or incompetent) as many claim. As long as a button acts like a button, a menu acts like a menu etc, end-users can use them just fine. fpGUI also has excellent theming support to simulate native L&F to acceptable standards. It includes about 8 themes [http://geldenhuys.co.uk/~graemeg/themes/start.html], and creating new ones are a very quick and easy process. On a side note:   There is NO “native” widget toolkit under Linux, FreeBSD, Solaris   etc - XLib doesn’t supply a GUI toolkit. So native has no bearing   on such platforms. I can also throw in the argument that not even Microsoft or Apple adhere to their own Human Interface Guidelines - so why must we be that strict? Pros or Cons, I still think having a fully implemented LCL-fpGUI widgetset would be very beneficial to the Lazarus project. Regards,   Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key:  http://tinyurl.com/graeme-pgp -- _______________________________________________ Lazarus mailing list Lazarus at lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus -------------- next part -------------- An HTML attachment was scrubbed... URL: From nc-gaertnma at netcologne.de Thu Jul 14 09:49:16 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 14 Jul 2016 09:49:16 +0200 Subject: [Lazarus] Procedure List + CodeTools not showing nested procedures In-Reply-To: <39a40f31-e944-d428-e138-b83d43ce91f6@geldenhuys.co.uk> References: <39a40f31-e944-d428-e138-b83d43ce91f6@geldenhuys.co.uk> Message-ID: <20160714094916.6b990afd@limapholos.matflo.wg> On Wed, 13 Jul 2016 16:53:58 +0100 Graeme Geldenhuys wrote: > Hi, > > See the attached screenshots showing a comparative Procedure List result > for the same unit with the same search term. The one screenshot is of > Maximus IDE, and the other is from Lazarus IDE. > > Lazarus IDE’s Procedure List uses CodeTools to find and populate the > ListView, but it doesn’t find any nested procedures or functions. > > eg: > > TMainForm.SomeMethod; > var > x,y: integer; > > procedure LocalProc; > begin > // some code here > end; > > begin > // some code here. > end; > > Lazarus’s Procedure List will not find the LocalProc procedure. The code > to populate the ListView is here… > > procedure TProcedureListForm.PopulateListview; > > in the /ide/procedurelist.pas unit. > > Anybody with more CodeTools knowledge than I know what should be changed > to find such nested procedures or functions? It iterated with 'NextBrother'. I changed it to 'Next'. I also changed it to prepend the parent proc names. For example instead of 'LocalProc' it shows 'TMainForm.SomeMethod.LocalProc'. If you don't like that feel free to change it. Mattias From mailinglists at geldenhuys.co.uk Thu Jul 14 11:00:47 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 10:00:47 +0100 Subject: [Lazarus] Lazarus Trunk - does it now require FPC 3.0? Message-ID: Hi, I just got a Lazarus update and tried to build it with FPC 2.6.4 but it failed here… ========================= unit LazUnicode; {$IFDEF FPC} {$mode objfpc}{$H+} {$IF FPC_FULLVERSION < 30000} {$ERROR needs at least FPC 3.0} // <------ compiler error {$ENDIF} {$ENDIF} …snip… ========================= Does this mean FPC trunk can not be compiled with FPC 2.6.4 any more? Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From mailinglists at geldenhuys.co.uk Thu Jul 14 11:01:43 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 10:01:43 +0100 Subject: [Lazarus] Procedure List + CodeTools not showing nested procedures In-Reply-To: <20160714094916.6b990afd@limapholos.matflo.wg> References: <39a40f31-e944-d428-e138-b83d43ce91f6@geldenhuys.co.uk> <20160714094916.6b990afd@limapholos.matflo.wg> Message-ID: <0b3ffdb7-c3e6-4445-4220-4a0f0c46ab37@geldenhuys.co.uk> On 2016-07-14 08:49, Mattias Gaertner wrote: > of 'LocalProc' it shows 'TMainForm.SomeMethod.LocalProc'. > If you don't like that feel free to change it. Thank you Mattias for taking a look and making the changes. I'll give it a try as soon as I can compile Lazarus trunk. Regards, Graeme From michael at freepascal.org Thu Jul 14 11:05:53 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Thu, 14 Jul 2016 11:05:53 +0200 (CEST) Subject: [Lazarus] Lazarus Trunk - does it now require FPC 3.0? In-Reply-To: References: Message-ID: On Thu, 14 Jul 2016, Graeme Geldenhuys wrote: > Hi, > > I just got a Lazarus update and tried to build it with FPC 2.6.4 but it > failed here… > > > ========================= > unit LazUnicode; > > {$IFDEF FPC} > {$mode objfpc}{$H+} > {$IF FPC_FULLVERSION < 30000} > {$ERROR needs at least FPC 3.0} // <------ compiler error > {$ENDIF} > {$ENDIF} > > …snip… > ========================= > > Does this mean FPC trunk can not be compiled with FPC 2.6.4 any more? I guess you mean Lazarus trunk here ? If correct, that would be bad news... Michael. From zeljko at holobit.net Thu Jul 14 11:07:48 2016 From: zeljko at holobit.net (zeljko) Date: Thu, 14 Jul 2016 11:07:48 +0200 Subject: [Lazarus] Lazarus Trunk - does it now require FPC 3.0? In-Reply-To: References: Message-ID: <48d32466-78e5-70cb-dccd-3f1cc3eebb47@holobit.net> On 07/14/2016 11:00 AM, Graeme Geldenhuys wrote: > Hi, > > I just got a Lazarus update and tried to build it with FPC 2.6.4 but it > failed here… Please open an issue about it. 2.6.4 is still supported. zeljko From zeljko at holobit.net Thu Jul 14 11:07:48 2016 From: zeljko at holobit.net (zeljko) Date: Thu, 14 Jul 2016 11:07:48 +0200 Subject: [Lazarus] Lazarus Trunk - does it now require FPC 3.0? In-Reply-To: References: Message-ID: <48d32466-78e5-70cb-dccd-3f1cc3eebb47@holobit.net> On 07/14/2016 11:00 AM, Graeme Geldenhuys wrote: > Hi, > > I just got a Lazarus update and tried to build it with FPC 2.6.4 but it > failed here… Please open an issue about it. 2.6.4 is still supported. zeljko From mailinglists at geldenhuys.co.uk Thu Jul 14 11:10:57 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 10:10:57 +0100 Subject: [Lazarus] Lazarus Trunk - does it now require FPC 3.0? In-Reply-To: References: Message-ID: <78dbeb39-bc0d-9139-6c76-20661f835959@geldenhuys.co.uk> On 2016-07-14 10:05, Michael Van Canneyt wrote: > I guess you mean Lazarus trunk here ? Thanks for pointing out the typo. Yes, I meant Lazarus Trunk. And indeed it would be bad news is FPC 3.0 is now required. Regards, Graeme From mailinglists at geldenhuys.co.uk Thu Jul 14 11:14:16 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 10:14:16 +0100 Subject: [Lazarus] Lazarus Trunk - does it now require FPC 3.0? In-Reply-To: <48d32466-78e5-70cb-dccd-3f1cc3eebb47@holobit.net> References: <48d32466-78e5-70cb-dccd-3f1cc3eebb47@holobit.net> Message-ID: <61d4bef5-ebdb-2a2f-afd4-01d8bca63750@geldenhuys.co.uk> On 2016-07-14 10:07, zeljko wrote: > Please open an issue about it. 2.6.4 is still supported. Done http://mantis.freepascal.org/view.php?id=30376 Regards, Graeme From mailinglists at geldenhuys.co.uk Thu Jul 14 11:31:54 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 10:31:54 +0100 Subject: [Lazarus] GTK 3.0 In-Reply-To: <165b162c-4a56-2c73-a917-c55d7c0637f4@kluug.net> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> <35fd9cc2-7999-e40c-0b5a-687c5933e959@geldenhuys.co.uk> <165b162c-4a56-2c73-a917-c55d7c0637f4@kluug.net> Message-ID: <3671488b-931f-8859-6f41-7ac3735881dc@geldenhuys.co.uk> Thanks for feedback. On 2016-07-14 06:56, Ondrej Pokorny wrote: > I wasn't able to run fpgcanvas (runtime exception) That works here. Tonight I’ll do some more testing. Which platform, fpGUI branch and FPC version did you test with? The “develop” branch is in flux at the moment as some large branches have been merged recently and I’m working on stabilizing the code for the v2.0 release. If you want stability right now, then the “maint” branch would be your best bet. , nanoedit (didn't compile) Fixed, and the repository has been updated. > and agg_canvas_test (runtime exception) As the demo’s unit header comment mentions, you need to explicitly enable the “AggCanvas” compiler define. At the moment AggPas is not the default 2D renderer yet. > How do you handle high-DPI displays in fpGUI? It works just fine. Text, windows and widget size scale as needed. For graphics I recommend using SVG images with the “develop” branch. At the moment high-DPI support requires manually adding an extra unit to your uses clause, but the branch that automates all than (and improves high-DPI support even more) is almost ready to be merged into "develop". Here are some screenshot samples of the same executable running under Windows 8 with various Windows DPI values set. http://geldenhuys.co.uk/~graemeg/temp/Win8_96dpi.png http://geldenhuys.co.uk/~graemeg/temp/Win8_120dpi.png http://geldenhuys.co.uk/~graemeg/temp/Win8_144dpi.png http://geldenhuys.co.uk/~graemeg/temp/Win8_192dpi.png Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From mailinglists at geldenhuys.co.uk Thu Jul 14 11:46:26 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Thu, 14 Jul 2016 10:46:26 +0100 Subject: [Lazarus] Lazarus Trunk - does it now require FPC 3.0? In-Reply-To: <61d4bef5-ebdb-2a2f-afd4-01d8bca63750@geldenhuys.co.uk> References: <48d32466-78e5-70cb-dccd-3f1cc3eebb47@holobit.net> <61d4bef5-ebdb-2a2f-afd4-01d8bca63750@geldenhuys.co.uk> Message-ID: On 2016-07-14 10:14, Graeme Geldenhuys wrote: > Done > http://mantis.freepascal.org/view.php?id=30376 Thanks Mattias for resolving this issue so fast. Regards, Graeme From juha.manninen62 at gmail.com Thu Jul 14 12:55:36 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Thu, 14 Jul 2016 13:55:36 +0300 Subject: [Lazarus] Lazarus Trunk - does it now require FPC 3.0? In-Reply-To: References: Message-ID: On Thu, Jul 14, 2016 at 12:00 PM, Graeme Geldenhuys wrote: > {$IF FPC_FULLVERSION < 30000} > {$ERROR needs at least FPC 3.0} // <------ compiler error > {$ENDIF} My bad. This one unit needs FPC 3 (or Delphi) to be useful. I first added it to repository. It was not used by any existing code -> no problems. Then I added it to LazUtils package for a new test project. The package compilation indeed failed with FPC 2.6. Anyway, the LazUnicode unit is cool! It allows encoding agnostic code and makes the UTF-8 / UTF-16 arguments irrelevant. Juha From mse00000 at gmail.com Thu Jul 14 13:43:10 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Thu, 14 Jul 2016 13:43:10 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> References: <5780DD1E.6040201@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> Message-ID: <201607141343.10919.mse00000@gmail.com> On Wednesday 13 July 2016 17:54:27 Gabor Boros wrote: > Hi Graeme and All, > > > And because fpGUI is 100% custom drawn, if a full featured LCL interface > > was implemented (an Alpha version already exists), you have full control > > over both. > > How can I try it? > > After many circles in the past I chose Qt for Linux because look more > robust than GTK. But nowadays the distributions switching to Qt5 and > Lazarus have Qt4 compability only. > > Which is the good direction for concentrate the available resources > (manpower) Qt5 or fpGUI. Graeme certainly say fpGUI. :D Others? > MSEgui, most likely used with MSEide without LCL overhead. Martin From mse00000 at gmail.com Thu Jul 14 14:24:25 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Thu, 14 Jul 2016 14:24:25 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> Message-ID: <201607141424.25408.mse00000@gmail.com> On Wednesday 13 July 2016 19:22:03 Dmitry Boyarintsev wrote: > On Wed, Jul 13, 2016 at 12:13 PM, Graeme Geldenhuys < > > mailinglists at geldenhuys.co.uk> wrote: > > Because it is 100% cross-platform, custom drawn and implemented in Object > > Pascal - it > > can support any LCL feature on all target OSes. Whereas with other LCL > > widgetsets, there are plenty of platform specific limitations. > > How does it handle an OS specific limitations? > For example: > * drawing outside of the paint event? Where some (Carbon, Cocoa) widgetset > forbid that. For MSEgui: The signature of the widget paint procedure is " procedure twidget.paint(const canvas: tcanvas); " Where "canvas" can be a window, bitmap or printer canvas. If twidget.paint() is called by twindow.update() - normally automatically when the main thread event queue gets idle - an intermediate bitmap canvas of the size of the updateregion is created for paint() which will be copied to the window handle at the end. This eliminates flicker in a platform neutral way. Calling paint() without a canvas is not supported. > * platform specific mouse behavior. OSX ctrl+mouseclick should trigger > popup menu (= right click) > MSEgui does not support OSX directly currently but I am sure that I'll find an elegant and configurable way to show the popup menu by Ctrl+LeftClick instead of RightClick if necessary. ;-) Currently the code is: " procedure tactionwidget.clientmouseevent(var info: mouseeventinfoty); var dummy: tpopupmenu; po1: pointty; begin if canevent(tmethod(fonclientmouseevent)) then begin fonclientmouseevent(self,info); end; inherited; with info do begin if (eventkind = ek_buttonrelease) and (ws_rclicked in fwidgetstate) and not (csdesigning in componentstate) and (eventstate * [es_processed,es_child] = []) and (button = mb_right) then begin dummy:= nil; po1:= info.pos; dopopup(dummy,info); info.pos:= po1; //no mousemove by change of popup pos end; end; end; " Martin From gaborboros at yahoo.com Thu Jul 14 18:58:37 2016 From: gaborboros at yahoo.com (Gabor Boros) Date: Thu, 14 Jul 2016 18:58:37 +0200 Subject: [Lazarus] How to create a TPicture type property? Message-ID: <5c00d85d-7262-ce02-5e4e-3076294076dd@yahoo.com> Hi All, I have a component like this: TMyComponent=class(TPersistent) private FPicture:TPicture; public constructor Create; published property Picture:TPicture read FPicture write FPicture; end; constructor TMyComponent.Create; begin inherited; FPicture:=TPicture.Create; end; When click on the Picture property in OI the "Load Image Dialog" showed then click on Load button and got SIGSEGV. Where is the source of the problem? Gabor From skalogryz.lists at gmail.com Thu Jul 14 20:33:23 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Thu, 14 Jul 2016 14:33:23 -0400 Subject: [Lazarus] GTK 3.0 In-Reply-To: <35fd9cc2-7999-e40c-0b5a-687c5933e959@geldenhuys.co.uk> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> <2e1d3b03-cb50-6375-5bed-6c57cf9dcc84@geldenhuys.co.uk> <35fd9cc2-7999-e40c-0b5a-687c5933e959@geldenhuys.co.uk> Message-ID: On Thu, Jul 14, 2016 at 1:09 AM, Graeme Geldenhuys < mailinglists at geldenhuys.co.uk> wrote: > fpGUI works on WinCE devices and other Linux Embedded devices. As for > mobile phones - I don't believe fpGUI or LCL is appropriate for them. I > would rather use the native mobile phone toolkits in that case. > That seems a little bit odd to me. It sounds like fpGUI (or any custom-drawn interface) is a good replacement for Qt5 in desktop Linux. But for Ubuntu Phone, one should be using Qt5 instead. thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From aaa5500 at ya.ru Fri Jul 15 17:47:00 2016 From: aaa5500 at ya.ru (Alex) Date: Fri, 15 Jul 2016 18:47:00 +0300 Subject: [Lazarus] OS X Retina, TBitmap Message-ID: <57890574.9020603@ya.ru> I see problem on Retina (OSX) which is not fixed by last patch of Yury Sidorov (he posted patch for Retina at mantis) Problem is with TBitmap My ATSynEdit creates temp TBitmap of usual resolution (eg 1024*800) and in OnPaint it copies bitmap to canvas. It uses TCanvas.CopyRect. This gives blurred image on mac with Retina: fonts blurred. What we need is HiDPI bitmap? How to do it? How to fix Carbon widgetset? Alex From giuliano.colla at fastwebnet.it Fri Jul 15 20:16:08 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Fri, 15 Jul 2016 20:16:08 +0200 Subject: [Lazarus] Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <20160714003751.5f86ee88@limapholos.matflo.wg> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> <20160713140619.763bb681@limapholos.matflo.wg> <2e6906e1-e35b-5b82-7e6b-45e5a4a11d77@fastwebnet.it> <20160714003751.5f86ee88@limapholos.matflo.wg> Message-ID: <09df9871-6b70-c9da-198a-0a005ff8376e@fastwebnet.it> Il 14/07/2016 00:37, Mattias Gaertner ha scritto: > I'm not an arm expert. I'm not either. But I'm forced by circumstances to learn :'(. The Raspberry Pi3 is quite popular and has enough computing power to be usable in our field of industrial applications. Maybe you missed my previous post. The compile problem is solved. I had set one of the required options in Custom Options (which applies only to project files) instead of putting it in Additions and Overrides (which applies also to packages). That way it compiles properly both the LCL and the project, it links with the appropriate cross-libraries and it generates an arm executable. However there is still a minor issues, and a major one: 1. When cross compiling, packages do inherit properly from the project the Target OS and Target CPU Family compiler options, but they do not inherit the Target Processor option. Workaround: add it to Additions and Overrides, but it would deserve a fix. 2. Apparently there is some incompatibility between host and target gtk-related libraries, because, while a console application runs just fine, a visual one crashes at startup because "GtkAdjustment has no property named ''". I'll investigate... However thank for your help. Giuliano -------------- next part -------------- An HTML attachment was scrubbed... URL: From bo.berglund at gmail.com Sat Jul 16 09:31:47 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 16 Jul 2016 09:31:47 +0200 Subject: [Lazarus] Lazarus tool tips/code completion do not work, why? Message-ID: <90ojob10bjn7aose6okcr62qo8jk0ele4h@4ax.com> I am coding a command line utility in Lazarus 1.6 with FPC 3.0 on Raspberry Pi (Raspbian Jessie). When I write for example FSSComm. I expect the tooltips to appear afterr I type the period giving me a choice of valid FSSComm properties to select from. But what really happens is nothing at all in the code editor. But in back of it the Messages window shows an error: Codetools, Errors: 1 IdGlobal.pas(1884,56) Error: expected ;, but deprecated found And when I click that message I am trown into a completely unrelated unit IdGlobals belonging to Indy10, which is in a package indylaz I have installed successfully in Lazarus: {$IFDEF UNIX} // For linux the user needs to set this variable to be accurate where used (mail, etc) GOffsetFromUTC: TDateTime = 0 {$IFDEF HAS_DEPRECATED}deprecated{$ENDIF}; <== Error here all on one line What does this mean and how is it related to the code editor at all? The program compiles just fine with no errors, it is just the coding that is less efficient when i have to go back and forth between units to get the correct property names and then type them in... Can it be configured so that the tool tips start working? And why are tool tips involved in the first place? -- Bo Berglund Developer in Sweden From bo.berglund at gmail.com Sat Jul 16 09:34:12 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 16 Jul 2016 09:34:12 +0200 Subject: [Lazarus] Converting console app to Lazarus on RPi - Indy10 not found References: <20160713111817.75beaed7@limapholos.matflo.wg> <20160714004635.117c735f@limapholos.matflo.wg> Message-ID: On Thu, 14 Jul 2016 00:46:35 +0200, Mattias Gaertner wrote: >Search the functions in FPC and use the new units. > I switched to using the FPC unit Zipper instead and skip PasZip altogether if FPC is detected (conditional compile). Now working fine. -- Bo Berglund Developer in Sweden From nc-gaertnma at netcologne.de Sat Jul 16 10:31:40 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Sat, 16 Jul 2016 10:31:40 +0200 Subject: [Lazarus] Lazarus tool tips/code completion do not work, why? In-Reply-To: <90ojob10bjn7aose6okcr62qo8jk0ele4h@4ax.com> References: <90ojob10bjn7aose6okcr62qo8jk0ele4h@4ax.com> Message-ID: <20160716103140.54800371@limapholos.matflo.wg> On Sat, 16 Jul 2016 09:31:47 +0200 Bo Berglund wrote: > When I write for example > FSSComm. > I expect the tooltips to appear Note: This is the "completion box", in this case the "identifier completion". "Tooltips" is the hint window which appears when you move a mouse over an identifier. >[...] > Codetools, Errors: 1 > IdGlobal.pas(1884,56) Error: expected ;, but deprecated found > > And when I click that message I am trown into a completely unrelated > unit IdGlobals belonging to Indy10, Why do you think the unit is unrelated? Are you using Indy units in your uses clause? > which is in a package indylaz I > have installed successfully in Lazarus: > > {$IFDEF UNIX} > > // For linux the user needs to set this variable to be accurate > where used (mail, etc) > GOffsetFromUTC: TDateTime = 0 {$IFDEF > HAS_DEPRECATED}deprecated{$ENDIF}; <== Error here all on one line Lazarus 1.6 and 1.7 parse this line without problems. I didn't test with the Indy10 sources. Can you create a minimized version of the IdGlobals unit demonstrating the problem? >[...] Mattias From joost at cnoc.nl Sat Jul 16 11:07:33 2016 From: joost at cnoc.nl (Joost van der Sluis) Date: Sat, 16 Jul 2016 11:07:33 +0200 Subject: [Lazarus] [SOLVED!]Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <3683a2a2-e2a5-ec86-4827-d082858c6816@fastwebnet.it> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> <20160713140619.763bb681@limapholos.matflo.wg> <3683a2a2-e2a5-ec86-4827-d082858c6816@fastwebnet.it> Message-ID: <380254f0-3a4d-2a0e-5c35-ba340317174e@cnoc.nl> Op 13-07-16 om 19:54 schreef Giuliano Colla: > Il 13/07/2016 14:06, Mattias Gaertner ha scritto: >> Why does FPC say >> Assembler /home/colla/Applicazioni/lazarus/fpc/binutils/as not found? > > Because I had added one of the required options, i.e. -XParm-linux- in > Custom Options (which applies only to project files) and not in > Additions and Overrides, which applies also to packages. I do not think that this is the right place for this setting. It does work, but I think it belongs to your fpc.cfg. And it should be part of the installation of the fpc cross-compiler. So there's no need to fiddle with Lazarus' options. Joost. From joost at cnoc.nl Sat Jul 16 11:20:30 2016 From: joost at cnoc.nl (Joost van der Sluis) Date: Sat, 16 Jul 2016 11:20:30 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> Message-ID: <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> Op 12-07-16 om 09:18 schreef zeljko: > On 07/12/2016 04:11 AM, Kostas Michalopoulos wrote: >> Sadly the GTK+ devs do not seem to care much about backwards >> compatibility and love to break stuff every other version. >> >> Check this blog post which summarizes the issues >> https://davmac.wordpress.com/2016/07/05/why-do-we-keep-building-rotten-foundations/ >> >> >> IMO GTK+ 2 is the last good GTK+ version and hopefully someone (maybe >> the MATE devs) will fork it and add support for the needed stuff. GTK+ >> 3.0+ is not reliable. > > I knew about it (not about exact blog, but about abi/api mess) and > that's main reason why I do not have enough faith to work on gtk3 > bindings. Even gtk2 had ridiculous code in some cases (besides this > ABI/API gtk3 changes). Just one simple example of gtk philosophy - look > at GtkEntry class and ability to add icon into GtkEntry > (gtk_entry_set_icon_xxxx since 2.16). eg. in Qt/WinAPI you can add any > handle inside text editor (eg. QPushButton under Qt), but under gtk > you're stucked to gdkpixbuf. > I really don't know what kind of drugs gtk devels are using. I think they are recovering from their drug-addiction right now. Seems that some gtk-developers where on a hackathon where they discussed the instability-issues. And the fact that they don't like the situation that most gtk-applications still use gtk-2. (Gimp, Inkscape, Geany, etc, etc) So they came with a proposal and posted it online... But - maybe - they had a little bit too much beer when they wrote it, with the result that no-one understood what they really meant. The blog above being one of the reactions. But it is still a proposal, in the mean time discussed and improved a lot. As it looks now, they will define 3.26 stable. Not 'just-a-little-bit' stable, but really stable. To be able to move forward, they will release 4.0. This version won't be stable until it reaches (by approximation) version 4.6. Then this will be the stable version (alongside 3.26) and they will start working on version 5.0... This way you can choose as a developer to use the stable versions (3.26 -> 4.6 -> 5.X) or you can use the unstable versions, which could break compatibility every half year. So for Lazarus it seems like we can finally do some serious work on the gtk3-port targeting 3.26 which will be stable for at least a few years. More info, see among others: https://wiki.gnome.org/Projects/GTK%2B/Lifecycle Regards, Joost. From ganmax at narod.ru Sat Jul 16 13:00:08 2016 From: ganmax at narod.ru (Maxim Ganetsky) Date: Sat, 16 Jul 2016 14:00:08 +0300 Subject: [Lazarus] GTK 3.0 In-Reply-To: <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> Message-ID: <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> 16.07.2016 12:20, Joost van der Sluis пишет: > Op 12-07-16 om 09:18 schreef zeljko: >> I really don't know what kind of drugs gtk devels are using. > > I think they are recovering from their drug-addiction right now. It seems they just changed supplier. ;) > Seems that some gtk-developers where on a hackathon where they discussed > the instability-issues. And the fact that they don't like the situation > that most gtk-applications still use gtk-2. (Gimp, Inkscape, Geany, etc, > etc) So they came with a proposal and posted it online... > > But - maybe - they had a little bit too much beer when they wrote it, > with the result that no-one understood what they really meant. The blog > above being one of the reactions. > > But it is still a proposal, in the mean time discussed and improved a lot. > > As it looks now, they will define 3.26 stable. Not 'just-a-little-bit' > stable, but really stable. To be able to move forward, they will release > 4.0. This version won't be stable until it reaches (by approximation) > version 4.6. Then this will be the stable version (alongside 3.26) and > they will start working on version 5.0... > > This way you can choose as a developer to use the stable versions (3.26 > -> 4.6 -> 5.X) or you can use the unstable versions, which could break > compatibility every half year. And stable releases will break every 2 years. ;) Stable API? Forget about it (nobody made any promises). > So for Lazarus it seems like we can finally do some serious work on the > gtk3-port targeting 3.26 which will be stable for at least a few years. > > > More info, see among others: > https://wiki.gnome.org/Projects/GTK%2B/Lifecycle This is just an example of how premature blog posts about half-baked proposals made a PR disaster out of nothing. Personally I hope that everything will be good. We need GTK3 widgetset. -- Best regards, Maxim Ganetsky mailto:ganmax at narod.ru From joost at cnoc.nl Sat Jul 16 13:11:09 2016 From: joost at cnoc.nl (Joost van der Sluis) Date: Sat, 16 Jul 2016 13:11:09 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> Message-ID: <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> Op 16-07-16 om 13:00 schreef Maxim Ganetsky: >> >> This way you can choose as a developer to use the stable versions (3.26 >> -> 4.6 -> 5.X) or you can use the unstable versions, which could break >> compatibility every half year. > > And stable releases will break every 2 years. ;) Stable API? Forget > about it (nobody made any promises). Not exactly. They will introduce a new stable release every two years. But you can keep using the older stable releases if you want. All major releases can be used parallel to each other. Like now is done with 2 and three, in the future also 4 and 5. They think they will support a stable release for about 5 years, but could be longer, like they do now with gtk2. Regards, Joost. From svaa at ciberpiula.net Sat Jul 16 13:37:35 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Sat, 16 Jul 2016 13:37:35 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> Message-ID: El 16/07/2016 a las 13:11, Joost van der Sluis escribió: > Op 16-07-16 om 13:00 schreef Maxim Ganetsky: >>> >>> This way you can choose as a developer to use the stable versions (3.26 >>> -> 4.6 -> 5.X) or you can use the unstable versions, which could break >>> compatibility every half year. >> >> And stable releases will break every 2 years. ;) Stable API? Forget >> about it (nobody made any promises). > > Not exactly. They will introduce a new stable release every two years. > > But you can keep using the older stable releases if you want. All > major releases can be used parallel to each other. Like now is done > with 2 and three, in the future also 4 and 5. > They think they will support a stable release for about 5 years, but > could be longer, like they do now with gtk2. People will stick on GTK2. And maybe after a some years in GTK3. People doesn't want to re-write their application. I don't think Gimp will be re-written for GTK3, and if it's re-written for GTK3 someday, it won't be re-written for GTK4 and latter for GTK5. They are killing Gnome and GTK. As I said in other message, What would GTK boys do if Xlib would rewrite its specification? They would have to dump GTK2, GTK3 and write quickly a new version. What if Xlib changed its specifications each two years?. They are developers doing what they like, writing software once and once again to reach perfection, paying attention to nothing else. But that's not a program, that's a Library. What they are purposing is to let specifications in a permanent alpha state. And the result will be that no one will use it. -- Saludos Santiago A. From badsectoracula at gmail.com Sat Jul 16 22:52:21 2016 From: badsectoracula at gmail.com (Kostas Michalopoulos) Date: Sat, 16 Jul 2016 23:52:21 +0300 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> Message-ID: > People will stick on GTK2. And maybe after a some years in GTK3. > People doesn't want to re-write their application. I don't think Gimp > will be re-written for GTK3, and if it's re-written for GTK3 someday, it > won't be re-written for GTK4 and latter for GTK5. > Yeah, personally i do not see a reason to move off GTK+ 2. If anything, in my system GTK+ 2 programs look and behave better than GTK+ 3 programs (which also tend to have a ton of visual glitches with broken themes). I just hope that someone will fork GTK+ 2 to introduce new features for working with the desktop environments and window systems (e.g. Wayland, HiDPI, etc). -------------- next part -------------- An HTML attachment was scrubbed... URL: From badsectoracula at gmail.com Sun Jul 17 15:27:41 2016 From: badsectoracula at gmail.com (Kostas Michalopoulos) Date: Sun, 17 Jul 2016 16:27:41 +0300 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> Message-ID: Why not make the old functions simply call the new ones? Why break user code? On Wed, Jul 13, 2016 at 7:57 PM, Juha Manninen wrote: > On Wed, Jul 13, 2016 at 7:32 PM, Giuliano Colla > wrote: > > whatever is marked as deprecated, it's easily understood by anybody. > > They were deprecated for a long time in trunk and also in the 1.6 release. > They will be deprecated forever in the fixes_1_6 branch and in 1.6.x > dot releases. > > Juha > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus > -------------- next part -------------- An HTML attachment was scrubbed... URL: From juha.manninen62 at gmail.com Sun Jul 17 15:55:26 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Sun, 17 Jul 2016 16:55:26 +0300 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> Message-ID: On Sun, Jul 17, 2016 at 4:27 PM, Kostas Michalopoulos wrote: > Why not make the old functions simply call the new ones? The "old functions" were wrappers and indeed called the actual functions in proper units. > Why break user code? Sometimes code must be cleaned. The breakage was not bad, it only required to change or add units in uses section. This was a proper time for a cleanup because the whole UTF-8 support was revamped which also broke some code. The wrapper functions were mostly UTF-8 helper functions, many of which are not needed any more. Removing the wrappers can be seen as a hint to clean up your code even more. In practice you can replace most UTF8...() and ...UTF8() functions with their Delphi compatible versions without the "UTF8" part. See: http://wiki.freepascal.org/Better_Unicode_Support_in_Lazarus Juha From giuliano.colla at fastwebnet.it Sun Jul 17 16:12:42 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Sun, 17 Jul 2016 16:12:42 +0200 Subject: [Lazarus] [SOLVED!]Unable to cross-compile Lazarus applications in Linux from x86_64 to arm target (Raspberry pi 3) In-Reply-To: <380254f0-3a4d-2a0e-5c35-ba340317174e@cnoc.nl> References: <578392C7.8070901@fastwebnet.it> <1468260090510-4048947.post@n3.nabble.com> <7fa916d8-9e0f-5a4e-ca3a-deec39fa8568@fastwebnet.it> <20160713140619.763bb681@limapholos.matflo.wg> <3683a2a2-e2a5-ec86-4827-d082858c6816@fastwebnet.it> <380254f0-3a4d-2a0e-5c35-ba340317174e@cnoc.nl> Message-ID: Il 16/07/2016 11:07, Joost van der Sluis ha scritto: > I do not think that this is the right place for this setting. It does > work, but I think it belongs to your fpc.cfg. And it should be part of > the installation of the fpc cross-compiler. > > So there's no need to fiddle with Lazarus' options. You're right, but I started by following blindly the wiki page instructions, lacking any experience in cross-compiling. Now that I've gained a better experience on how different options play at different times, I may clean up things, and put the proper options in the proper place. However thank you for your suggestion. Giuliano From giuliano.colla at fastwebnet.it Sun Jul 17 16:16:33 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Sun, 17 Jul 2016 16:16:33 +0200 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> Message-ID: <7e4a8b86-1cd4-7247-9794-d6b9f4cb2d11@fastwebnet.it> Il 17/07/2016 15:27, Kostas Michalopoulos ha scritto: > Why not make the old functions simply call the new ones? Why break > user code? This was exactly my point. Developers often fail to realize that users very often must simply maintain old code. Anything requiring to modify the source code implies extra work and extra possibility of errors. Giuliano From luizamericop at gmail.com Sun Jul 17 16:26:45 2016 From: luizamericop at gmail.com (Luiz Americo Pereira Camara) Date: Sun, 17 Jul 2016 11:26:45 -0300 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: <7e4a8b86-1cd4-7247-9794-d6b9f4cb2d11@fastwebnet.it> References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> <7e4a8b86-1cd4-7247-9794-d6b9f4cb2d11@fastwebnet.it> Message-ID: Em 17 de jul de 2016 11:16, "Giuliano Colla" escreveu: > > Il 17/07/2016 15:27, Kostas Michalopoulos ha scritto: > >> Why not make the old functions simply call the new ones? Why break user code? > > > This was exactly my point. Developers often fail to realize that users very often must simply maintain old code. Anything requiring to modify the source code implies extra work and extra possibility of errors. IMO, if objective is just maintaning old code the best approach is to stick with the same dev enviroment. This will avoid the extra work. Luiz -------------- next part -------------- An HTML attachment was scrubbed... URL: From giuliano.colla at fastwebnet.it Sun Jul 17 19:17:58 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Sun, 17 Jul 2016 19:17:58 +0200 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> <7e4a8b86-1cd4-7247-9794-d6b9f4cb2d11@fastwebnet.it> Message-ID: <2192c15a-4887-2fff-a7ee-0c6a3e4d2922@fastwebnet.it> Il 17/07/2016 16:26, Luiz Americo Pereira Camara ha scritto: > IMO, if objective is just maintaning old code the best approach is to > stick with the same dev enviroment. This will avoid the extra work. But if the objective is both maintaining old and developing new, then either you end up with myriads of VM's or try to maintain old with recent tools. We're not speaking of stone age code, just of one year old code! Giuliano From juha.manninen62 at gmail.com Sun Jul 17 19:26:42 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Sun, 17 Jul 2016 20:26:42 +0300 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: <7e4a8b86-1cd4-7247-9794-d6b9f4cb2d11@fastwebnet.it> References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> <7e4a8b86-1cd4-7247-9794-d6b9f4cb2d11@fastwebnet.it> Message-ID: On Sunday, July 17, 2016, Giuliano Colla wrote: > > This was exactly my point. Developers often fail to realize that users > very often must simply maintain old code. Anything requiring to modify the > source code implies extra work and extra possibility of errors. > Please explain me how updating the uses sections with correct unit names can cause extra errors. You should also realize that the new UTF-8 system breaks some code, thus you should go through your code in any case when updating to Lazarus 1.6+. When maintaining old codebase it makes sense to stick with the old Lazarus version. However if you anticipate any substantial changes then I recommend updating Lazarus because of all its improvements. Juha -------------- next part -------------- An HTML attachment was scrubbed... URL: From juha.manninen62 at gmail.com Sun Jul 17 19:33:48 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Sun, 17 Jul 2016 20:33:48 +0300 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> <7e4a8b86-1cd4-7247-9794-d6b9f4cb2d11@fastwebnet.it> Message-ID: Giuliano, please don't maintain your production code with Lazarus trunk. It is NOT recommended for obvious reasons. Use the latest release 1.6, or the soon to be released Lazarus 1.6.2 update. The wrapper functions you complained about are usable there, although deprecated. Juha -------------- next part -------------- An HTML attachment was scrubbed... URL: From ganmax at narod.ru Sun Jul 17 22:01:03 2016 From: ganmax at narod.ru (Maxim Ganetsky) Date: Sun, 17 Jul 2016 23:01:03 +0300 Subject: [Lazarus] GTK 3.0 In-Reply-To: <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> Message-ID: <7f3f4fcf-8134-9072-3a90-7a84ed1b628c@narod.ru> 16.07.2016 14:11, Joost van der Sluis пишет: > Op 16-07-16 om 13:00 schreef Maxim Ganetsky: >>> >>> This way you can choose as a developer to use the stable versions (3.26 >>> -> 4.6 -> 5.X) or you can use the unstable versions, which could break >>> compatibility every half year. >> >> And stable releases will break every 2 years. ;) Stable API? Forget >> about it (nobody made any promises). > > Not exactly. They will introduce a new stable release every two years. > > But you can keep using the older stable releases if you want. All major > releases can be used parallel to each other. Like now is done with 2 and > three, in the future also 4 and 5. > They think they will support a stable release for about 5 years, but > could be longer, like they do now with gtk2. This statement is not supported by info from your link AFAICS. Anyway, as I wrote: "This is just an example of how premature blog posts about half-baked proposals made a PR disaster out of nothing. Personally I hope that everything will be good. We need GTK3 widgetset." -- Best regards, Maxim Ganetsky mailto:ganmax at narod.ru From m-w-vogel at gmx.de Sun Jul 17 22:40:16 2016 From: m-w-vogel at gmx.de (Michael W. Vogel) Date: Sun, 17 Jul 2016 13:40:16 -0700 (MST) Subject: [Lazarus] How to create a TPicture type property? In-Reply-To: <5c00d85d-7262-ce02-5e4e-3076294076dd@yahoo.com> References: <5c00d85d-7262-ce02-5e4e-3076294076dd@yahoo.com> Message-ID: <1468788016154-4049040.post@n3.nabble.com> Gabor Boros wrote > Hi All, > > I have a component like this: > > TMyComponent=class(TPersistent) > private > FPicture:TPicture; > public > constructor Create; > published > property Picture:TPicture read FPicture write FPicture; > end; > > constructor TMyComponent.Create; > begin > inherited; > > FPicture:=TPicture.Create; > end; > > When click on the Picture property in OI the "Load Image Dialog" showed > then click on Load button and got SIGSEGV. Where is the source of the > problem? > > Gabor AFAIK as I know, you have to derive minimal from TComponent. Just tested (and it works for me): TMyComponent = class(TComponent) private FPicture: TPicture; public constructor Create(AOwner: TComponent); override; destructor Destroy; override; published property Picture: TPicture read FPicture write FPicture; end; constructor TMyComponent.Create(AOwner: TComponent); begin inherited Create(AOwner); FPicture := TPicture.Create; end; destructor TMyComponent.Destroy; begin FPicture.Free; inherited Destroy; end; I've added the simple TMyComponent package. MyComponents.zip Kind regards Michael -- View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-How-to-create-a-TPicture-type-property-tp4049018p4049040.html Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. From giuliano.colla at fastwebnet.it Mon Jul 18 00:26:21 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Mon, 18 Jul 2016 00:26:21 +0200 Subject: [Lazarus] Again an UTF8 mess! In-Reply-To: References: <2b067920-214a-f8c4-a28d-364c7befa6a8@fastwebnet.it> <2d5c98b5-22a1-6ea8-6efa-611ce3372ca2@kluug.net> <7e4a8b86-1cd4-7247-9794-d6b9f4cb2d11@fastwebnet.it> Message-ID: <65162135-eaab-50fd-bf2a-92a21f3744b7@fastwebnet.it> Il 17/07/2016 19:33, Juha Manninen ha scritto: > Giuliano, please don't maintain your production code with Lazarus > trunk. It is NOT recommended for obvious reasons. You're right. Thank you. Giuliano From luizamericop at gmail.com Mon Jul 18 03:20:25 2016 From: luizamericop at gmail.com (Luiz Americo Pereira Camara) Date: Sun, 17 Jul 2016 22:20:25 -0300 Subject: [Lazarus] Ability to load and save IDE configuration Message-ID: I have a bunch of lazarus installations, across various computers and VMs. Each one i have to configure for my personal tastes (code formatting, single click etc) manually Is there any tool to load and save IDE configs? Looked in Tools > Options... without luck Luiz -------------- next part -------------- An HTML attachment was scrubbed... URL: From sysrpl at gmail.com Mon Jul 18 03:51:55 2016 From: sysrpl at gmail.com (Anthony Walter) Date: Sun, 17 Jul 2016 21:51:55 -0400 Subject: [Lazarus] Ability to load and save IDE configuration In-Reply-To: References: Message-ID: If you launch Lazarus with the --pcp flag you can specify a configuration folder. Do something like this on every computer. sudo mkdir -p /usr/share/lazarus/config sudo chmod 777 /usr/share/lazarus/config Then you can just launch Lazarus with --pcp /usr/share/lazarus/config, adjust your settings, and then copy the contents of /usr/share/lazarus/config to as many computers/users as you want. After that all settings for the various installations will be the same. -------------- next part -------------- An HTML attachment was scrubbed... URL: From luizamericop at gmail.com Mon Jul 18 04:03:49 2016 From: luizamericop at gmail.com (Luiz Americo Pereira Camara) Date: Sun, 17 Jul 2016 23:03:49 -0300 Subject: [Lazarus] Ability to load and save IDE configuration In-Reply-To: References: Message-ID: 2016-07-17 22:51 GMT-03:00 Anthony Walter : > If you launch Lazarus with the --pcp flag you can specify a configuration > folder. > > Do something like this on every computer. > > sudo mkdir -p /usr/share/lazarus/config > sudo chmod 777 /usr/share/lazarus/config > > Then you can just launch Lazarus with --pcp /usr/share/lazarus/config, > adjust your settings, and then copy the contents of > /usr/share/lazarus/config to as many computers/users as you want. After > that all settings for the various installations will be the same. > > Thanks. This is one solution but has some caveats: not all configs should be shared like compiler location, lazarus source directory etc, some of the computers are windows I'm looking into some tool/package/features that automates this and filter the not eligible configs If there are none, and time allows, i will create one Luiz -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Mon Jul 18 07:43:45 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Mon, 18 Jul 2016 06:43:45 +0100 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> Message-ID: <17314332-5922-6aa9-3786-191a636ed710@geldenhuys.co.uk> On 2016-07-16 12:37, Santiago A. wrote: > People doesn't want to re-write their application. I don't think Gimp > will be re-written for GTK3, Indeed, and just shows the sad state of GTK3. Their primary application (the reason GTK was created in the first place - The Gimp) doesn't want to upgrade. That says it all. Regards, Graeme From gfindlay.linux at gmail.com Mon Jul 18 07:55:03 2016 From: gfindlay.linux at gmail.com (Gordon Findlay) Date: Mon, 18 Jul 2016 17:55:03 +1200 Subject: [Lazarus] GTK 3.0 In-Reply-To: <17314332-5922-6aa9-3786-191a636ed710@geldenhuys.co.uk> References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> <17314332-5922-6aa9-3786-191a636ed710@geldenhuys.co.uk> Message-ID: On Mon, Jul 18, 2016 at 5:43 PM, Graeme Geldenhuys < mailinglists at geldenhuys.co.uk> wrote: > On 2016-07-16 12:37, Santiago A. wrote: > > People doesn't want to re-write their application. I don't think Gimp > > will be re-written for GTK3, > > Indeed, and just shows the sad state of GTK3. Their primary application > (the reason GTK was created in the first place - The Gimp) doesn't want > to upgrade. That says it all. > > Regards, > Graeme ​Um... The GIMP roadmap (http://wiki.gimp.org/wiki/Roadmap) shows a port to GTK3 ​ ​being "work in progress" for GIMP 3.0​ This is either good or bad news - your choice! Slainte Gordon -------------- next part -------------- An HTML attachment was scrubbed... URL: From svaa at ciberpiula.net Mon Jul 18 09:38:30 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Mon, 18 Jul 2016 09:38:30 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: References: <5780DD1E.6040201@deseine.nl> <1e347116-76bf-5a71-27fa-5c73a59b2fe3@holobit.net> <31e1dbdb-6375-1071-efc9-e9bb967ba586@cnoc.nl> <89edacad-09c9-8800-1835-eb96843524fe@narod.ru> <2645a7c5-e74b-6419-db4d-364893f553b8@cnoc.nl> <17314332-5922-6aa9-3786-191a636ed710@geldenhuys.co.uk> Message-ID: <2fa2242f-ac30-1648-a23a-fa422e50b29c@ciberpiula.net> El 18/07/2016 a las 7:55, Gordon Findlay escribió: > > ​Um... > > The GIMP roadmap (http://wiki.gimp.org/wiki/Roadmap) shows a port to > GTK3 ​ > > ​being "work in progress" for GIMP 3.0​ > > This is either good or bad news - your choice! Odds are that It will be ready when GTK 4.0 is out. So GTK 3 development will be almost frozen won't add new features of GTK 4, so Gimp won't be able to take advantage of GTK 4.0 new features, so it will have to be ported again to GTK 4.0. GTK cycle is insane. -- Saludos Santi svaa at ciberpiula.net -------------- next part -------------- An HTML attachment was scrubbed... URL: From marcov at stack.nl Mon Jul 18 10:17:59 2016 From: marcov at stack.nl (Marco van de Voort) Date: Mon, 18 Jul 2016 10:17:59 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: <20160718081759.GA13923@stack.nl> On Wed, Jul 13, 2016 at 06:12:09PM +0200, Santiago A. wrote: > These are my data: Nearly all is Windows, increasingly 64-bit. Some older and server oriented programs on Linux. Some of those I also use on my FreeBSD shell accounts. *nix GUI is nearly zero, so widgetset is win32 except for during Lazarus/FPC conferences. From nc-gaertnma at netcologne.de Mon Jul 18 11:59:59 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Mon, 18 Jul 2016 11:59:59 +0200 Subject: [Lazarus] Ability to load and save IDE configuration In-Reply-To: References: Message-ID: <20160718115959.20636262@limapholos.matflo.wg> On Sun, 17 Jul 2016 23:03:49 -0300 Luiz Americo Pereira Camara wrote: >[...] > If there are none, and time allows, i will create one Feel free ti create one. Mattias From sysrpl at gmail.com Mon Jul 18 16:51:15 2016 From: sysrpl at gmail.com (Anthony Walter) Date: Mon, 18 Jul 2016 10:51:15 -0400 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: My web server logs show the following Lazarus downloads and installs by platform at getlazarus.org for the past 30 days: 2894 : /download/?platform=windows 1929 : /download/?platform=linux 1572 : /download/?platform=raspberry 691 : /download/?platform=macintosh 1279 : /installed/?platform=windows 1107 : /installed/?platform=linux 658 : /installed/?platform=raspberry 380 : /installed/?minimal&os=linux&dist=unknown 227 : /installed/?platform=macintosh 29 : /installed/?minimal&os=linux&dist=ubuntu Source: http://cache.getlazarus.org/images/lazarus-downloads-201607.png -------------- next part -------------- An HTML attachment was scrubbed... URL: From l.rame at griensu.com Mon Jul 18 19:26:27 2016 From: l.rame at griensu.com (=?UTF-8?Q?Leonardo_M._Ram=c3=a9?=) Date: Mon, 18 Jul 2016 14:26:27 -0300 Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: <578D1143.4010901@griensu.com> OS Target: Windows: 30% Linux: 70% (CGI/Brook - command line utilities). Widget Target: Win32: 100%* *: The only desktop target right now, but most of our targets are command line and WEB. Country: Argentina. El 13/07/16 a las 13:12, Santiago A. escribió: > Hi: > > From a message from Gabor, it would be interesting to learn what's the > distribution of Lazarus users: > > These are my data: > > OS target: > Windows: 55% > Linux: 45% > > Widget Target: > Win32 45% > Gtk2: 45% > fpGUI: 10% > > Easter Egg data ;-) > Country: Spain > -- Leonardo M. Ramé Medical IT - Griensu S.A. Av. Colón 636 - Piso 8 Of. A X5000EPT -- Córdoba Tel.: +54(351)4246924 +54(351)4247788 +54(351)4247979 int. 19 Cel.: +54 9 (011) 40871877 From dezlov at gmail.com Mon Jul 18 22:15:58 2016 From: dezlov at gmail.com (Denis Kozlov) Date: Mon, 18 Jul 2016 21:15:58 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: <4bd403ad-ed82-ec4f-658e-3dee2d411dee@gmail.com> 80% Windows (mostly Win32 apps, few console tools) 15% Linux (console services and tools) 3% Mac (console tools) 2% FreeBSD (console services and tools) Plan is to increase the share in Linux and Mac by porting some GUI apps. Denis From alexsander.rosa at gmail.com Mon Jul 18 22:44:11 2016 From: alexsander.rosa at gmail.com (Alexsander Rosa) Date: Mon, 18 Jul 2016 17:44:11 -0300 Subject: [Lazarus] Target Survey In-Reply-To: <4bd403ad-ed82-ec4f-658e-3dee2d411dee@gmail.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <4bd403ad-ed82-ec4f-658e-3dee2d411dee@gmail.com> Message-ID: Our customers (desktop count only): 85% Ubuntu 15% Windows 2016-07-18 17:15 GMT-03:00 Denis Kozlov : > 80% Windows (mostly Win32 apps, few console tools) > 15% Linux (console services and tools) > 3% Mac (console tools) > 2% FreeBSD (console services and tools) > > Plan is to increase the share in Linux and Mac by porting some GUI apps. > > Denis > > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus > -- Atenciosamente, Alexsander da Rosa -------------- next part -------------- An HTML attachment was scrubbed... URL: From aradeonas at operamail.com Mon Jul 18 22:58:46 2016 From: aradeonas at operamail.com (Aradeonas) Date: Mon, 18 Jul 2016 13:58:46 -0700 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <4bd403ad-ed82-ec4f-658e-3dee2d411dee@gmail.com> Message-ID: <1468875526.3594162.669918617.25E2B83A@webmail.messagingengine.com> Can I use a LCL component in a fpGUI app? Regards, Ara   -- http://www.fastmail.com - mmm... Fastmail... -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Tue Jul 19 00:35:50 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Mon, 18 Jul 2016 23:35:50 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <1468875526.3594162.669918617.25E2B83A@webmail.messagingengine.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <4bd403ad-ed82-ec4f-658e-3dee2d411dee@gmail.com> <1468875526.3594162.669918617.25E2B83A@webmail.messagingengine.com> Message-ID: <91da9331-78fe-efd0-1d2d-b130400b77d6@geldenhuys.co.uk> On 2016-07-18 21:58, Aradeonas wrote: > Can I use a LCL component in a fpGUI app? No, they are separate toolkits - just like you can't mix GTK and Qt widgets in the same application. Saying that, I have found it is quite easy and relatively quick to port LCL or VCL components to fpGUI. I've done that quite a few times already. Just curious, what component did you want to use? Regards, Graeme From giuliano.colla at fastwebnet.it Tue Jul 19 01:47:42 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Tue, 19 Jul 2016 01:47:42 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: OS target: Linux: 99.9% Windows: 0.1% MacOS: 0% FreeBSD: 0% Widget Target: Qt 99.8% GTK2: 0.1% (just one app because of a Qt bug I never bothered to fix/report) Win32: 0.1% Country: devel: Italy deploy: pretty much all the rest of the world (industrial equipments) From andrea.mauri.75 at gmail.com Tue Jul 19 09:36:43 2016 From: andrea.mauri.75 at gmail.com (Andrea Mauri) Date: Tue, 19 Jul 2016 09:36:43 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> OS target: Linux: 50% Windows: 50% Widget Target: Win32: 50% GTK2: 50% Application: both GUI and CLI on win ad linux. MacOSX not yet evaluated, it will probably be the next target. GTK2 (and eventually win32) could be replaced with Qt. Customer: big companies and universities. Il 19/07/2016 01:47, Giuliano Colla ha scritto: > OS target: > Linux: 99.9% > Windows: 0.1% > MacOS: 0% > FreeBSD: 0% > > > Widget Target: > Qt 99.8% > GTK2: 0.1% (just one app because of a Qt bug I never bothered to > fix/report) > Win32: 0.1% > > Country: > devel: Italy > deploy: pretty much all the rest of the world (industrial equipments) > > > From giuliano.colla at fastwebnet.it Tue Jul 19 10:28:12 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Tue, 19 Jul 2016 10:28:12 +0200 Subject: [Lazarus] GTK 3.0 In-Reply-To: <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> References: <5780DD1E.6040201@deseine.nl> <7de538fa-467b-e936-43ce-d2c787cf6707@deseine.nl> <35c997a6-dd31-4010-7920-52917e4bc7d2@yahoo.com> <6752e070-7ce4-217c-7bf6-89fbd1d4c260@geldenhuys.co.uk> Message-ID: <4935bfa2-1980-37a7-7930-b39b9c5273ad@fastwebnet.it> Il 13/07/2016 18:13, Graeme Geldenhuys ha scritto: > Create a new LCL application. Drop a TButton and TEdit on the form. Go > to Project Options -> Compiler Options. Then depending on your version > of Lazarus IDE, look in “Additions and Overrides” and set the > LCLWidgetType to “fpgui”. Following the instructions, I've tested. Lazarus = 1.6 Fpc=3.0.0 platform linux. A blank form compiles and runs ok. The form shows the FPGUI icon. Adding a TButton, it fails with: "Class TButton not found" Adding a TEdit, it fails with "Class TEdit not found" Suggestions? Giuliano From aradeonas at operamail.com Tue Jul 19 16:50:08 2016 From: aradeonas at operamail.com (Aradeonas) Date: Tue, 19 Jul 2016 07:50:08 -0700 Subject: [Lazarus] Target Survey In-Reply-To: <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> Message-ID: <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> > Saying that, I have found it is quite easy and relatively quick to > port > LCL or VCL components to fpGUI. I've done that quite a few times > already. Just curious, what component did you want to use? Virtual tree view. Regards, Ara   -- http://www.fastmail.com - The professional email service -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Tue Jul 19 17:31:32 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Tue, 19 Jul 2016 16:31:32 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> Message-ID: On 2016-07-19 15:50, Aradeonas wrote: >> Just curious, what component did you want to use? > > Virtual tree view. Are you using Virtual Treeview as a treeview or a grid? It seems some components (VT, ListView etc) don't really know what they want to be. ;-) Many of fpGUI's standard components are much faster than LCL or VCL equivalents, so you don't need 3rd party component suites. eg: fpGUI's standard TreeView and StringGrid are really fast. For example the last time I testing fpGUI's StringGrid it could create 8 million columns and rows and populate each cell with unique text in 5 seconds. Scrolling was instant with no delays. LCL's TStringGrid got stuck at 100% CPU load for over 3 hours before I killed the process. Regards, Graeme From dezlov at gmail.com Tue Jul 19 19:03:14 2016 From: dezlov at gmail.com (Denis Kozlov) Date: Tue, 19 Jul 2016 18:03:14 +0100 Subject: [Lazarus] A new PascalTZ - time zone database for FPC / Lazarus Message-ID: Hello, I have forked PascalTZ library about a year ago with a goal to fix many parsing and time zone conversion problems, refactor existing code and implement a testing framework. This work has just finished with a milestone release of PascalTZ 2.0 . Master branch also contains a design/runtime package for Lazarus IDE. PascalTZ 2.0 is backward compatible with code written for PascalTZ 1.0, but the usage has been somewhat simplified with addition of new methods: > // Load time zone database from "tzdata" directory > PascalTZ.DatabasePath := 'tzdata'; > // Convert current time in Paris to Chicago time > PascalTZ.Convert(Now, 'Europe/Paris', 'America/Chicago'); Should the old PascalTZ in Lazarus CCR be removed and the PascalTZ article on the wiki reflect the new home? Regards, Denis -------------- next part -------------- An HTML attachment was scrubbed... URL: From aradeonas at operamail.com Tue Jul 19 19:05:03 2016 From: aradeonas at operamail.com (Aradeonas) Date: Tue, 19 Jul 2016 10:05:03 -0700 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> Message-ID: <1468947903.2743858.670810873.0E874C9A@webmail.messagingengine.com> > Are you using Virtual Treeview as a treeview or a grid? It seems > some components (VT, ListView etc) don't really know what they want > to be. ;-) Both, As VTV is the best grid-ish component I fount in Lazarus world. Kgrid is good but slow. > Many of fpGUI's standard components are much faster than LCL or VCL > equivalents, so you don't need 3rd party component suites. eg: fpGUI's > standard TreeView and StringGrid are really fast. For example the last > time I testing fpGUI's StringGrid it could create 8 million columns > and rows and populate each cell with unique text in 5 seconds. > Scrolling was instant with no delays. LCL's TStringGrid got stuck at > 100% CPU load for over 3 hours before I killed the process. You are right about LCL speed, it's grids are for simple use and I never used them in a real project but in the other hand VTV is the fastest I found and has many abilities (not built in unfortunately ) as editors and ... . I didnt see a grid for this usage in fpGUI demos at least in my last check. Can it be a good grid because I miss DevExpress's cxGrid very much and I dont expect its abilities but I need VTV abilities at least. Regards, Ara   -- http://www.fastmail.com - Does exactly what it says on the tin -------------- next part -------------- An HTML attachment was scrubbed... URL: From joshyfun at gmail.com Tue Jul 19 19:18:21 2016 From: joshyfun at gmail.com (=?UTF-8?Q?Jos=c3=a9_Mejuto?=) Date: Tue, 19 Jul 2016 19:18:21 +0200 Subject: [Lazarus] A new PascalTZ - time zone database for FPC / Lazarus In-Reply-To: References: Message-ID: <0f81f4b6-5da2-1b20-919e-2cc98a4f17ec@gmail.com> El 19/07/2016 a las 19:03, Denis Kozlov escribió: > PascalTZ 2.0 is backward compatible with code written for PascalTZ 1.0, > but the usage has been somewhat simplified with addition of new methods: Hello, Thank you for fixing and updating the code. > Should the old PascalTZ in Lazarus CCR > be > removed and the PascalTZ article > on the wiki reflect the new home? No problem by my side, but I think that a copy of PascaTZ should be kept in the Lazarus CCR, maybe not updated on every update, only in major revisions with a note about the live updated repository. IMHO 1.0 version should be removed. I was not aware of such amount of bugs :) in special the double frees. -- From mailinglists at geldenhuys.co.uk Tue Jul 19 19:32:33 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Tue, 19 Jul 2016 18:32:33 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <1468947903.2743858.670810873.0E874C9A@webmail.messagingengine.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <1468947903.2743858.670810873.0E874C9A@webmail.messagingengine.com> Message-ID: <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> On 2016-07-19 18:05, Aradeonas wrote: >> Are you using Virtual Treeview as a treeview or a grid? It seems >> some components (VT, ListView etc) don't really know what they want >> to be. ;-) > > Both, As VTV is the best grid-ish component I fount in Lazarus world. > Kgrid is good but slow. Umm... using a TreeView component as a Grid. Somewhere the design went horrible wrong. :-p For the rest of your questions, I'll reply in the fpGUI newsgroup (fpgui.support). It is not appropriate to continue this hijacked thread here. http://fpgui.sourceforge.net/support.shtml Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From aradeonas at operamail.com Tue Jul 19 20:44:10 2016 From: aradeonas at operamail.com (Aradeonas) Date: Tue, 19 Jul 2016 11:44:10 -0700 Subject: [Lazarus] Target Survey In-Reply-To: <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <1468947903.2743858.670810873.0E874C9A@webmail.messagingengine.com> <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> Message-ID: <1468953850.1978663.670911433.479A4ADC@webmail.messagingengine.com> Ok, I should install XanaNews for that (after these years a forum will help new users knowing fpGUI) and I will ask for that but as I said VTV is the best option and its a good grid, its name is only a trick. Regards, Ara   -- http://www.fastmail.com - Send your email first class -------------- next part -------------- An HTML attachment was scrubbed... URL: From mse00000 at gmail.com Tue Jul 19 21:20:34 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Tue, 19 Jul 2016 21:20:34 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <1468947903.2743858.670810873.0E874C9A@webmail.messagingengine.com> <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> Message-ID: <201607192120.34258.mse00000@gmail.com> On Tuesday 19 July 2016 19:32:33 Graeme Geldenhuys wrote: > On 2016-07-19 18:05, Aradeonas wrote: > >> Are you using Virtual Treeview as a treeview or a grid? It seems > >> some components (VT, ListView etc) don't really know what they want > >> to be. ;-) > > > > Both, As VTV is the best grid-ish component I fount in Lazarus world. > > Kgrid is good but slow. > > Umm... using a TreeView component as a Grid. Somewhere the design went > horrible wrong. :-p > I don't think so. MSEgui also supports a combination of treeview and grid by placing a TTreeItemEdit in a TWidgetGrid. TWidgetGrid accepts any data edit widget as column widget (TStringEdit, TIntegerEdit, TRealEdit, TDataButton, TSlider, TDropdownListedit...) which builds a column with the according data type. In case of TTreeItemEdit the datatype is an instance pointer of TTreeListItem. Very handy. Martin From juergen.hestermann at gmx.de Tue Jul 19 21:42:11 2016 From: juergen.hestermann at gmx.de (=?UTF-8?Q?J=c3=bcrgen_Hestermann?=) Date: Tue, 19 Jul 2016 21:42:11 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <1468947903.2743858.670810873.0E874C9A@webmail.messagingengine.com> <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> Message-ID: <030be5c2-1b2a-e8b3-0a5a-2672e9fd44ea@gmx.de> Am 2016-07-19 um 19:32 schrieb Graeme Geldenhuys: > Umm... using a TreeView component as a Grid. Somewhere the design went > horrible wrong. :-p I don't think so. VTV (which I also find extremely flexible and fast) is a grid where one (arbitrary) column can contain a tree which simply means that the visible parts in this column are indented according to the level of the tree structure but still it is just an ordinary column with data (getting wider with each level of tree depth). The other columns just present meta-data to the entry. That's how I would expect any tree representation to look like: If you don't use a tree like column it just falls back to an ordinary grid. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: ipiojjcefahccfoc.png Type: image/png Size: 16959 bytes Desc: not available URL: From mailinglists at geldenhuys.co.uk Wed Jul 20 08:16:44 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 07:16:44 +0100 Subject: [Lazarus] LCL-fpGUI widgetset support Message-ID: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> Hello Giuliano, [I started a new thread for this] On 2016-07-19 09:28, Giuliano Colla wrote: > Following the instructions, I've tested. Lazarus = 1.6 Fpc=3.0.0 > platform linux. > A blank form compiles and runs ok. The form shows the FPGUI icon. > Adding a TButton, it fails with: "Class TButton not found" That is strange. I just testing with FreeBSD, FPC 2.6.4 (3.0.0 works too) and Lazarus v1.7 (trunk from about 2 months ago). Here is the exact instructions to follow: /lcl/interfaces/fpgui/README.txt Please note that you must use fpGUI v1.4.1 or the “maint” branch. You cannot use the fpGUI “develop” branch at this stage. I've also attached some screenshots to show a few of the components that already work. Even specifying one of the built-in themes work with a LCL-fpGUI application (demo ran with command line parameter: --style "plastic medium gray") I've also attached a screenshot of the Project Options to show where I specify the LCL-fpGUI widgetset. Please excuse the slight color tint in the screenshots. I used Gimp to reduce the colors to 256 to make them smaller for email purposes. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot1.png Type: image/png Size: 6885 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot2-styled.png Type: image/png Size: 6989 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot3-project_settings.png Type: image/png Size: 19866 bytes Desc: not available URL: From dezlov at gmail.com Wed Jul 20 10:56:33 2016 From: dezlov at gmail.com (Denis Kozlov) Date: Wed, 20 Jul 2016 09:56:33 +0100 Subject: [Lazarus] A new PascalTZ - time zone database for FPC / Lazarus In-Reply-To: <0f81f4b6-5da2-1b20-919e-2cc98a4f17ec@gmail.com> References: <0f81f4b6-5da2-1b20-919e-2cc98a4f17ec@gmail.com> Message-ID: On 19 July 2016 at 18:18, José Mejuto wrote: > > No problem by my side, but I think that a copy of PascaTZ should be kept > in the Lazarus CCR, maybe not updated on every update, only in major > revisions with a note about the live updated repository. > > IMHO 1.0 version should be removed. > I have updated PascalTZ wiki article . Can someone upload PascalTZ 2.0 to Lazarus CCR? Thanks, Denis -------------- next part -------------- An HTML attachment was scrubbed... URL: From mschnell at lumino.de Wed Jul 20 11:35:18 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 11:35:18 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> Message-ID: <578F45D6.3080504@lumino.de> On 07/19/2016 05:31 PM, Graeme Geldenhuys wrote: > Many of fpGUI's standard components are much faster than LCL or VCL > equivalents,... I am astonished to hear that, because up to now I thought that fpGUI ("drawing" a lot of the more complex stuff in Pascal code) would necessarily be slower than a library that links to a complex external graphical framework, that is OS and graphics driver aware and hence should be able to make use of the underlying system in a more optimized way. As you might know I plan to enhance the "NoGui" Widget Type to allow for a standard main thread event queue, including standard usage of TTimer, TThread.Synchronize, TThread.Queue and friends. This already does work, but is not published as the project currently is stalled due to the usual "lack of available time" problem. In a second step, I intend to do the basics for a "remote GUI" on top of that. Options here are "ifi" (invented by Martin, and already working in MSE: a dedicated program that shows the GUI of a remote program connected via a bidirectional byte stream), or a JavaScript based remote HTML GUI to allow for a "smart Web" application. As a base for this, I think, stealing the code of either of "FPGUI" or "CustomDrawn" might make sense. Do you think FpGUI is more appropriate ? Thanks, -Michael From mailinglists at geldenhuys.co.uk Wed Jul 20 11:59:56 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 10:59:56 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <578F45D6.3080504@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> Message-ID: <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> On 2016-07-20 10:35, Michael Schnell wrote: > I am astonished to hear that, because up to now I thought that fpGUI > ("drawing" a lot of the more complex stuff in Pascal code) would Other toolkits ultimately do drawing to a canvas too - just like fpGUI. There is no reason why I couldn't optimise fpGUI drawing - as is supposedly done in other toolkits. :) There are plenty of examples where LCL or VCL standard components are very slow. Here is another link to a Mantis report where it was revealed that using TListView caused a 4-5 second delay in the user interface. Switching out the TListView (which maps to native controls) for a TStringGrid (which is custom drawn I believe) made the screen updates near instant. http://mantis.freepascal.org/view.php?id=30317 > In a second step, I intend to do the basics for a "remote GUI" on top of > that. Options here are "ifi" (invented by Martin, and already working in I never really understood the need for that - but then I don't know MSEgui very well. What I mean is, X11 already natively supports running applications remotely. Also with the popularity of Remote Desktop, VNC, TeamViewer (which is absolutely brilliant and even does session recordings in unbelievable small file sizes), I think all based are already covered pretty well. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From mschnell at lumino.de Wed Jul 20 12:01:02 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 12:01:02 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <201607192120.34258.mse00000@gmail.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <1468947903.2743858.670810873.0E874C9A@webmail.messagingengine.com> <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> <201607192120.34258.mse00000@gmail.com> Message-ID: <578F4BDE.8060000@lumino.de> On 07/19/2016 09:20 PM, Martin Schreiber wrote: > I don't think so. MSEgui also supports a combination of treeview and > grid ... A friend of mine uses Python and just did some tests with a new (or updated to the current Python version) GUI toolkit. Here a kind of "Grid" is done in a hierarchical way and seems to be the main building blocks of the GUI. E.g. a grid in a grid's field is the standard way of designing, and Buttons etc usually seem to be placed in grid fields. Supposedly this is similar to how HTML pages can be designed. Maybe FireMonkey (I don't ave a Delphi XE) works in a similar way, and yet maybe implementing of FireMonkey makes sense for Lazarus... -Michael From mailinglists at geldenhuys.co.uk Wed Jul 20 12:17:36 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 11:17:36 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <578F4BDE.8060000@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <1468947903.2743858.670810873.0E874C9A@webmail.messagingengine.com> <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> <201607192120.34258.mse00000@gmail.com> <578F4BDE.8060000@lumino.de> Message-ID: <25df49ed-5a46-f9d1-e75e-d578bc8a1d1d@geldenhuys.co.uk> On 2016-07-20 11:01, Michael Schnell wrote: > E.g. a grid in a grid's field is the > standard way of designing, and Buttons etc usually seem to be placed in > grid fields. That sound like a “grid layout manager” implementation - similar to the 100’s of Java layout managers out in the wild. A Visual Guide to Layout Managers: https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html Layout Manager Showdown: http://web.archive.org/web/20081228153757/http://wiki.java.net/bin/view/Javadesktop/LayoutManagerShowdown?TWIKISID=3e5882397bd2ed89e1212654998feda6 Regards, Graeme From mschnell at lumino.de Wed Jul 20 12:23:00 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 12:23:00 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> Message-ID: <578F5104.7000207@lumino.de> On 07/20/2016 11:59 AM, Graeme Geldenhuys wrote: > I never really understood the need for that - but then I don't know > MSEgui very well. What I mean is, X11 already natively supports > running applications remotely. Also with the popularity of Remote > Desktop, VNC, TeamViewer (which is absolutely brilliant and even does > session recordings in unbelievable small file sizes), I think all > based are already covered pretty well. All these options use an external complex graphics library in the remote "embedded" target. The device is a thingy that nowadays in "new speak" is called and "Internet of Things" node. Hence a potentially very small and needing to be very cheap and extremely energy efficiently running device. So it does not feature any hardware allowing for displaying a GUI, and the OS and library infrastructure does not support any GUI work. Microsoft recently hopped on that bus by providing "Windows IoT" for free that in fact is Windows 10 with all GUI stuff stripped off. (A Colleague of mine was able to run Windows Services (that don't have a GUI) written in Delphi on Win IoT running on an Intel CPU based "embedded" board.) So, my original (some 5 years old) motivation for the said enhancement to the LCL was running Lazarus- (or having been Delphi-) projects on such a board (usually called "embedded" at that time, the infrastructure of which does not provide any support for a GUI), after developing them on a PC in the "normal" RAD way (i.e. porting them from existing projects). Here having a Widget Type "remote GUI" would be extremely helpful for testing/examining and occasionally configuring the device. -Michael From mschnell at lumino.de Wed Jul 20 12:26:14 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 12:26:14 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> Message-ID: <578F51C6.5040303@lumino.de> On 07/20/2016 11:59 AM, Graeme Geldenhuys wrote: > TeamViewer (which is absolutely brilliant and even does session > recordings in unbelievable small file sizes), I think all based are > already covered pretty well. Can you run this on an ARM-Linux device without GUI support (I could test it on a QNAP NAS) to occasionally remote control a permanently running Lazarus program from a Linux or Windows PC ? -Michael From michael at freepascal.org Wed Jul 20 12:32:32 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 12:32:32 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: <578F5104.7000207@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> Message-ID: On Wed, 20 Jul 2016, Michael Schnell wrote: > On 07/20/2016 11:59 AM, Graeme Geldenhuys wrote: >> I never really understood the need for that - but then I don't know >> MSEgui very well. What I mean is, X11 already natively supports >> running applications remotely. Also with the popularity of Remote >> Desktop, VNC, TeamViewer (which is absolutely brilliant and even does >> session recordings in unbelievable small file sizes), I think all >> based are already covered pretty well. > > All these options use an external complex graphics library in the remote > "embedded" target. > > The device is a thingy that nowadays in "new speak" is called and > "Internet of Things" node. Hence a potentially very small and needing to > be very cheap and extremely energy efficiently running device. So it > does not feature any hardware allowing for displaying a GUI, and the OS > and library infrastructure does not support any GUI work. Microsoft > recently hopped on that bus by providing "Windows IoT" for free that in > fact is Windows 10 with all GUI stuff stripped off. (A Colleague of mine > was able to run Windows Services (that don't have a GUI) written in > Delphi on Win IoT running on an Intel CPU based "embedded" board.) > > So, my original (some 5 years old) motivation for the said enhancement > to the LCL was running Lazarus- (or having been Delphi-) projects on > such a board (usually called "embedded" at that time, the infrastructure > of which does not provide any support for a GUI), after developing them > on a PC in the "normal" RAD way (i.e. porting them from existing > projects). Here having a Widget Type "remote GUI" would be extremely > helpful for testing/examining and occasionally configuring the device. Why would you not do this with a HTML interface ? The browsers are so powerful these days that your solution is hopelessly outdated even before you started. The added benefit is that no installation is needed. And you can control your device from anywhere: PC, tablet, smartphone. If you write your own GUI (client/server or not), you will need a 'client' for each of these devices In my line of work, a starting a new PC/Mac-based program is simply no longer an option. It's web-based or you're doomed. Michael. From svaa at ciberpiula.net Wed Jul 20 12:34:40 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 20 Jul 2016 12:34:40 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <578F45D6.3080504@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> Message-ID: <331da39d-b07a-cbc5-6020-462ad9a9c073@ciberpiula.net> El 20/07/2016 a las 11:35, Michael Schnell escribió: > On 07/19/2016 05:31 PM, Graeme Geldenhuys wrote: >> Many of fpGUI's standard components are much faster than LCL or VCL >> equivalents,... > I am astonished to hear that, because up to now I thought that fpGUI > ("drawing" a lot of the more complex stuff in Pascal code) would > necessarily be slower than a library that links to a complex external > graphical framework, that is OS and graphics driver aware and hence > should be able to make use of the underlying system in a more > optimized way. It's not that astonishing. A external library adds another layer. In addition, a library is usually a bloated, that's the price to pay for having a lot of things off-shelf. -- Saludos Santiago A. svaa at ciberpiula.net From mailinglists at geldenhuys.co.uk Wed Jul 20 12:34:55 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 11:34:55 +0100 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> Message-ID: <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> On 2016-07-20 11:32, Michael Van Canneyt wrote: >> Here having a Widget Type "remote GUI" would be extremely >> > helpful for testing/examining and occasionally configuring the device. > Why would you not do this with a HTML interface ? > > The browsers are so powerful these days that your solution is hopelessly > outdated even before you started. That is exactly what I was about to say. And as you rightly pointed out, an HTML interface can work on every type of device out there - PC, mobile phone etc. Regards, Graeme From mschnell at lumino.de Wed Jul 20 12:43:57 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 12:43:57 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> Message-ID: <578F55ED.6030400@lumino.de> On 07/20/2016 12:32 PM, Michael Van Canneyt wrote: > Why would you not do this with a HTML interface ? This would need to be completely new designed from scratch with "non visual" methods, while the LCL (aka Delphi VCL) interfacing software is already in place with the (to be) ported projects. In fact I was not intending to do the (re-) design of the actual projects, but I only tried to create an infrastructure to enable the team of programmers who did the Delphi projects to have them port their code to be "embedded" in the said way. > > The browsers are so powerful these days that your solution is hopelessly > outdated even before you started. OK. Completely re-implementing the software in Java, Python, PHP or whatever world be a "modern" way, but dumping millions of lines of code did not seem attractive. Right mow they live with doing nothing about the software (i.e. staying with Delphi) and buying much too expensive Windows enabled hardware for the "IoT nodes", so that a GUI is supported and can be remoted by standard tools . -Michael From svaa at ciberpiula.net Wed Jul 20 12:45:08 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 20 Jul 2016 12:45:08 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> Message-ID: <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> El 20/07/2016 a las 12:34, Graeme Geldenhuys escribió: > On 2016-07-20 11:32, Michael Van Canneyt wrote: >>> Here having a Widget Type "remote GUI" would be extremely >>>> helpful for testing/examining and occasionally configuring the device. >> Why would you not do this with a HTML interface ? >> >> The browsers are so powerful these days that your solution is hopelessly >> outdated even before you started. > > That is exactly what I was about to say. And as you rightly pointed out, > an HTML interface can work on every type of device out there - PC, > mobile phone etc. Time ago I post in this forum a message "the future of desktop", and I agree, web is not the best GUI, (in fact, I hate it) but it's ubiquitous. The problem is that when I write an application in freepascal, I'd rather not to have to write half application in html-css-javascript and mess with communication protocol. -- Saludos Santiago A. svaa at ciberpiula.net From mschnell at lumino.de Wed Jul 20 12:45:24 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 12:45:24 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <331da39d-b07a-cbc5-6020-462ad9a9c073@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <331da39d-b07a-cbc5-6020-462ad9a9c073@ciberpiula.net> Message-ID: <578F5644.4080106@lumino.de> On 07/20/2016 12:34 PM, Santiago A. wrote: > It's not that astonishing. A external library adds another layer. In > addition, a library is usually a bloated, that's the price to pay for > having a lot of things off-shelf. ... such as "themes". I see. Thanks, -Michael From mschnell at lumino.de Wed Jul 20 12:54:12 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 12:54:12 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> Message-ID: <578F5854.8020702@lumino.de> On 07/20/2016 12:34 PM, Graeme Geldenhuys wrote: > That is exactly what I was about to say. And as you rightly pointed out, > an HTML interface can work on every type of device out there - PC, > mobile phone etc. AFAIK there is no LCL "widget type" that supports this. IOW, no Lazarus-built-in GUI Builder, hence no RAD-Design for the software creator. The QNAP device I have at home has a Java-Script-toolkit enabled remote HTML/HTTP GUI that looks very similar to a GUI created by LCL. It is really nice and fast. Allowing for same simply by switching the LCL Widget-Type from the local standard to "remote HTML" would be the perfect (maybe unreachable) solution for poring a "normal" LCL application to be a "smart internet" application. -Michael From mschnell at lumino.de Wed Jul 20 13:09:25 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 13:09:25 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> Message-ID: <578F5BE5.40603@lumino.de> On 07/20/2016 11:59 AM, Graeme Geldenhuys wrote: >> "ifi" (invented by Martin, > I never really understood the need for that In fact the most basic idea of "ifi" is the same as doing a HTML GUI for a "rich internet" application: a (propriety format) byte stream connects the "busyness" software and the GUI. With ifi, the GUI part is done in fpc with means of a semi-standard (here: mse) GUI library, that connects to a standard (here Windows or Linux Widget set) library. With "rich internet", the GUI part is done in Java Script, that connects to a standard (here Browser JAVA-Script API) library. -Michael From mailinglists at geldenhuys.co.uk Wed Jul 20 13:22:25 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 12:22:25 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> Message-ID: <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> On 2016-07-20 11:45, Santiago A. wrote: > web is not the best GUI, (in fact, I hate it) but it's ubiquitous. +1 Web interfaces tend to be slow too, but I have recently seen some pretty amazing "web applications". Regards, Graeme From mailinglists at geldenhuys.co.uk Wed Jul 20 13:23:56 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 12:23:56 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <578F5854.8020702@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: On 2016-07-20 11:54, Michael Schnell wrote: > AFAIK there is no LCL "widget type" that supports this. IOW, no > Lazarus-built-in GUI Builder, hence no RAD-Design for the software creator. Get writing then! ;-) I'm sure many would appreciated such a contribution. Regards, Graeme From mailinglists at geldenhuys.co.uk Wed Jul 20 13:26:56 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 12:26:56 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <578F5854.8020702@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: On 2016-07-20 11:54, Michael Schnell wrote: > Allowing for same simply by switching the LCL Widget-Type from the local > standard to "remote HTML" would be the perfect (maybe unreachable) I forgot to mention. Recently I saw just such a solution for Delphi's VCL. No idea how they did it, but I was very impressed with that. I can't remember the name of that add-on though. Michael van Canneyt might remember what I'm talking about. Regards, Graeme From lacak at zoznam.sk Wed Jul 20 14:02:30 2016 From: lacak at zoznam.sk (LacaK) Date: Wed, 20 Jul 2016 14:02:30 +0200 Subject: [Lazarus] Request for preview patch in #27764 Message-ID: <4bd801cc-bf1b-c468-a1c5-41a5e6b6b62d@zoznam.sk> Hello, Can somebody please review and apply patch in bug report : http://bugs.freepascal.org/view.php?id=27764 It is one new unit (Delphi compatible), which adds database login dialog (TForm descendant) and in its initialization section registers them to DB.LoginDialogExProc callback Thanks -Laco. From svaa at ciberpiula.net Wed Jul 20 14:04:20 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 20 Jul 2016 14:04:20 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> Message-ID: <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> El 20/07/2016 a las 13:22, Graeme Geldenhuys escribió: > On 2016-07-20 11:45, Santiago A. wrote: >> web is not the best GUI, (in fact, I hate it) but it's ubiquitous. > +1 > > Web interfaces tend to be slow too, but I have recently seen some pretty > amazing "web applications". The problem is no aesthetic but of design and productivity. HTML was designed to display documents and close connection, thus it has no concept of session, the session ends when you display the page and close connection. Cookies came to keep some data from session to session. Later came websockets etc. All are dirty patches to convert the initial design as displayer into a GUI. You started with bicycle, you added an engine, later four wheels, later a chassis, and now you have a car. Xwindows is too low level, no widget.... VNC is no really a remote GUI (the server admits just one connection), Microsoft remote desktop is a good solution, but it's tied to windows. The monster ERP SAP has it's own GUI , that is the way. The world needs really bad a standard remote GUI protocol that can run on any graphic/OS. There have been some tries: XUL, Fresco , and others I've never heard about. > > Regards, > Graeme > -- Saludos Santi svaa at ciberpiula.net -------------- next part -------------- An HTML attachment was scrubbed... URL: From mailinglists at geldenhuys.co.uk Wed Jul 20 14:09:52 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 13:09:52 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> Message-ID: <4da345f5-8ab6-52e7-76bd-9948ba7e6381@geldenhuys.co.uk> On 2016-07-20 13:04, Santiago A. wrote: > The world needs really bad a standard remote GUI protocol that can run > on any graphic/OS. Personally I loved the idea of Java Applets. You had the full power of the Java language and a full feature GUI to work with. Just a pity Sun/Oracle went through a period of not keeping up with Java bugs. Luckily that is all behind us now, but unfortunately Java Applets paid the price. Regards, Graeme From michael at freepascal.org Wed Jul 20 14:10:36 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 14:10:36 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: On Wed, 20 Jul 2016, Graeme Geldenhuys wrote: > On 2016-07-20 11:54, Michael Schnell wrote: >> Allowing for same simply by switching the LCL Widget-Type from the local >> standard to "remote HTML" would be the perfect (maybe unreachable) > > I forgot to mention. Recently I saw just such a solution for Delphi's > VCL. No idea how they did it, but I was very impressed with that. > > I can't remember the name of that add-on though. Michael van Canneyt > might remember what I'm talking about. Unigui or raudus. The latter even works with Lazarus. http://www.unigui.com/ http://www.raudus.com/ The problem with this approach is that they are stateful on the server. Michael. From michael at freepascal.org Wed Jul 20 14:23:43 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 14:23:43 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> Message-ID: On Wed, 20 Jul 2016, Santiago A. wrote: > El 20/07/2016 a las 12:34, Graeme Geldenhuys escribió: >> On 2016-07-20 11:32, Michael Van Canneyt wrote: >>>> Here having a Widget Type "remote GUI" would be extremely >>>>> helpful for testing/examining and occasionally configuring the device. >>> Why would you not do this with a HTML interface ? >>> >>> The browsers are so powerful these days that your solution is hopelessly >>> outdated even before you started. >> >> That is exactly what I was about to say. And as you rightly pointed out, >> an HTML interface can work on every type of device out there - PC, >> mobile phone etc. > Time ago I post in this forum a message "the future of desktop", and I > agree, web is not the best GUI, (in fact, I hate it) but it's ubiquitous. > The problem is that when I write an application in freepascal, I'd > rather not to have to write half application in html-css-javascript and > mess with communication protocol. We're working on a solution for this. Michael. From mailinglists at geldenhuys.co.uk Wed Jul 20 14:27:40 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 13:27:40 +0100 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: <0b30cf28-f37c-7187-8acb-0cb8d9dd2cf8@geldenhuys.co.uk> On 2016-07-20 13:10, Michael Van Canneyt wrote: > > http://www.unigui.com/ Thanks Michael. That’s the one I was referring to. Regards, Graeme From d.ioannidis at nephelae.eu Wed Jul 20 14:42:54 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Wed, 20 Jul 2016 15:42:54 +0300 Subject: [Lazarus] Lazarus 1.6.1 and fpc 2.6.4 Message-ID: <637b777f-b1dc-5e80-76ed-a732d3dd42fb@nephelae.eu> Hi, is Lazarus 1.6 fixes ( aka 1.6.1 soon to be 1.6.2 ) support fpc 2.6.4 or it needs fpc 3.0.0 ? Tried to build a today's update from svn and got this error : "(1002) Target OS: Win32 for i386 (3104) Compiling lazutils.pas (3104) Compiling laz2_dom.pas (3104) Compiling laz2_xmlutils.pas (3104) Compiling lazutf8.pas C:\Users\Programming\tools\svn\laz-1.6.x\components\lazutils\winlazutf8.inc(358,59) Error: (3026) Wrong number of parameters specified for call to "" lazutf8.pas(3738) Fatal: (10026) There were 1 errors compiling module, stopping Fatal: (1018) Compilation aborted make[1]: *** [lazutils.ppu] Error 1" regrds, -- Dimitrios Chr. Ioannidis From mschnell at lumino.de Wed Jul 20 15:41:07 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 15:41:07 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> Message-ID: <578F7F73.5040305@lumino.de> On 07/20/2016 02:04 PM, Santiago A. wrote: > > > HTML was designed to display documents and close connection,.... All > are dirty patches to convert the initial design as displayer into a GUI. You are right, but the culprit is not HTML, but HTTP. If we could have the browser use a simple bidirectional socket connection instead, this would not be a problem. -Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: From mschnell at lumino.de Wed Jul 20 15:42:39 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 15:42:39 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> Message-ID: <578F7FCF.6050302@lumino.de> On 07/20/2016 02:04 PM, Santiago A. wrote: > > > The world needs really bad a standard remote GUI protocol that can run > on any graphic/OS. There have been some tries: XUL, Fresco > , and > others I've never heard about. > Open sourcing Windows "Remote Desktop" ?!?!? -Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: From mschnell at lumino.de Wed Jul 20 15:45:40 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 15:45:40 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> Message-ID: <578F8084.1000006@lumino.de> On 07/20/2016 02:23 PM, Michael Van Canneyt wrote: > > We're working on a solution for this. > Any description / preview ? If this is going to be reality out of the box, I maybe stop thinking about it myself :-) . -Michael From mschnell at lumino.de Wed Jul 20 15:49:56 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 15:49:56 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: <578F8184.7030901@lumino.de> On 07/20/2016 01:26 PM, Graeme Geldenhuys wrote: > I forgot to mention. Recently I saw just such a solution for Delphi's > VCL. No idea how they did it, but I was very impressed with that. I > can't remember the name of that add-on though. Michael van Canneyt > might remember what I'm talking about. Years ago there was ExtPascal. but that had been abandoned long ago. -Michael From mschnell at lumino.de Wed Jul 20 16:00:11 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 16:00:11 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <0b30cf28-f37c-7187-8acb-0cb8d9dd2cf8@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> <0b30cf28-f37c-7187-8acb-0cb8d9dd2cf8@geldenhuys.co.uk> Message-ID: <578F83EB.10208@lumino.de> On 07/20/2016 02:27 PM, Graeme Geldenhuys wrote: > On 2016-07-20 13:10, Michael Van Canneyt wrote: >> http://www.unigui.com/ A whole tot of *new *"TUnim..." visual components. Hence supposedly a simple porting of an existing (local GUI) project is not supported. -Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: From michael at freepascal.org Wed Jul 20 16:00:37 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 16:00:37 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: <578F8084.1000006@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <578F8084.1000006@lumino.de> Message-ID: On Wed, 20 Jul 2016, Michael Schnell wrote: > On 07/20/2016 02:23 PM, Michael Van Canneyt wrote: >> >> We're working on a solution for this. >> > Any description / preview ? > > If this is going to be reality out of the box, I maybe stop thinking > about it myself :-) . I suspect you'll have to keep thinking, because I doubt our solution will help you: As far as I understand, you want to keep your current code as-is, but that will not be possible. What we will offer you is to design/code in Lazarus/Delphi, transpile to Javascript and then run the code in the browser. There will be a widgetset for the browser, but it will not do everything the LCL/VCL does. Michael. From mschnell at lumino.de Wed Jul 20 16:03:06 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 16:03:06 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: <578F849A.7080805@lumino.de> On 07/20/2016 02:10 PM, Michael Van Canneyt wrote: > > The problem with this approach is that they are stateful on the server. It should allow for the application "pushing" (via some kind of polling) state information onto the Java Scripted GUI in a fast and protocol-efficient way as well with a built-in webserver as when placed "behind" a server like Apache. -Michael From michael at freepascal.org Wed Jul 20 16:04:27 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 16:04:27 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: <578F83EB.10208@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> <0b30cf28-f37c-7187-8acb-0cb8d9dd2cf8@geldenhuys.co.uk> <578F83EB.10208@lumino.de> Message-ID: On Wed, 20 Jul 2016, Michael Schnell wrote: > On 07/20/2016 02:27 PM, Graeme Geldenhuys wrote: >> On 2016-07-20 13:10, Michael Van Canneyt wrote: >>> http://www.unigui.com/ > > A whole tot of *new *"TUnim..." visual components. > > Hence supposedly a simple porting of an existing (local GUI) project is not > supported. You keep coming back to this 'simple porting of an existing GUI'. This leads me to believe that you have run deeply in the RAD trap: Business code and GUI code tightly intertwined, making it impossible to quickly create a new front-end. If so, my advice to you is: don't wait for the impossible, but start detangling your code. Then a HTML/unigui/whatever front end will be less painful. Michael. From gaborboros at yahoo.com Wed Jul 20 16:06:36 2016 From: gaborboros at yahoo.com (Gabor Boros) Date: Wed, 20 Jul 2016 16:06:36 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <578F7FCF.6050302@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> Message-ID: 2016. 07. 20. 15:42 keltezéssel, Michael Schnell írta: > Open sourcing Windows "Remote Desktop" ?!?!? The protocol documentation is available freely (search for [MS-RDP*]): https://msdn.microsoft.com/en-us/library/jj712081.aspx But: https://blogs.technet.microsoft.com/enterprisemobility/2013/12/11/remote-desktop-protocol-licensing-available-for-rdp-8 Gabor From mschnell at lumino.de Wed Jul 20 16:06:51 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 16:06:51 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <578F8084.1000006@lumino.de> Message-ID: <578F857B.6090409@lumino.de> On 07/20/2016 04:00 PM, Michael Van Canneyt wrote: > > I suspect you'll have to keep thinking, because I doubt our solution > will help you: > > As far as I understand, you want to keep your current code as-is, but > that will not be possible. > > What we will offer you is to design/code in Lazarus/Delphi, transpile > to Javascript and then run the code in the browser. > > There will be a widgetset for the browser, but it will not do > everything the LCL/VCL does. I feel that this is a great way to go ! Maybe it is possible to build on this to go even further one day, combining it with what ifi might offer (i.e. transpiling the GUI site of ifi to run it in a browser) :-) -Michael From mailinglists at geldenhuys.co.uk Wed Jul 20 16:08:26 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 15:08:26 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <578F7FCF.6050302@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> Message-ID: <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> On 2016-07-20 14:42, Michael Schnell wrote: > Open sourcing Windows "Remote Desktop" ?!?!? It already exists for Linux and FreeBSD, called "rdesktop". Obviously it's not the official Microsoft version, but a reverse engineered open source client and server. Regards, Graeme From mschnell at lumino.de Wed Jul 20 16:11:29 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 16:11:29 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> <0b30cf28-f37c-7187-8acb-0cb8d9dd2cf8@geldenhuys.co.uk> <578F83EB.10208@lumino.de> Message-ID: <578F8691.6010702@lumino.de> On 07/20/2016 04:04 PM, Michael Van Canneyt wrote: > > This leads me to believe that you have run deeply in the RAD trap: You are perfectly right. Only that it is not "me" but I just want(ed) to support my colleagues who built a huge set of projects that way. I suppose you understand that I got kind of angry about exactly this when I got involved in the proceedings some years ago. In the meantime they were forced to un-RAD part of their code due to new Windows versions not any more allowing a pseudo-GUI for services. -Michael From d.ioannidis at nephelae.eu Wed Jul 20 16:11:37 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Wed, 20 Jul 2016 17:11:37 +0300 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <578F8084.1000006@lumino.de> Message-ID: On 20/7/2016 5:00 μμ, Michael Van Canneyt wrote: > What we will offer you is to design/code in Lazarus/Delphi, transpile > to Javascript and then run the code in the browser. I want to help if it is possible .... > There will be a widgetset for the browser, but it will not do > everything the LCL/VCL does. I was thinking that maybe it could be possible to use Gecko embedded or Chromium Embedded Framework to debug and/or design from lazarus . In fact the last 2 - 3 days I was doing some research in that direction .... regards, -- Dimitrios Chr. Ioannidis From mschnell at lumino.de Wed Jul 20 16:14:55 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 16:14:55 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> Message-ID: <578F875F.2010803@lumino.de> On 07/20/2016 04:08 PM, Graeme Geldenhuys wrote: > > It already exists for Linux and FreeBSD, called "rdesktop". Obviously > it's not the official Microsoft version, but a reverse engineered open > source client and server. > > That does sound promising .... -Michael From svaa at ciberpiula.net Wed Jul 20 16:18:11 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 20 Jul 2016 16:18:11 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: El 20/07/2016 a las 14:10, Michael Van Canneyt escribió: > > > http://www.unigui.com/ > http://www.raudus.com/ > > The problem with this approach is that they are stateful on the server. > > Michael. > What's wrong with stateful approach?. Stateless aren't the silver bullet of every problem. REST etc are good solutions when you work with few states and operations. And many times what you do is let data with a few operations and delegate GUI's complex states in the client side with javascript etc. For me that's not the way to go either. Moving complexity from server to client works when you are offering services, but not when you have to program client side as well. -- Saludos Santiago A. svaa at ciberpiula.net From d.ioannidis at nephelae.eu Wed Jul 20 16:17:56 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Wed, 20 Jul 2016 17:17:56 +0300 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <578F8084.1000006@lumino.de> Message-ID: On 20/7/2016 5:00 μμ, Michael Van Canneyt wrote: > What we will offer you is to design/code in Lazarus/Delphi, transpile > to Javascript and then run the code in the browser. This reminds me the Morfik approach ... regards, -- Dimitrios Chr. Ioannidis From michael at freepascal.org Wed Jul 20 16:21:45 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 16:21:45 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: On Wed, 20 Jul 2016, Santiago A. wrote: > El 20/07/2016 a las 14:10, Michael Van Canneyt escribió: >> >> >> http://www.unigui.com/ >> http://www.raudus.com/ >> >> The problem with this approach is that they are stateful on the server. >> >> Michael. >> > What's wrong with stateful approach?. It is not scalable. Michael. From mschnell at lumino.de Wed Jul 20 16:22:13 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 16:22:13 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> Message-ID: <578F8915.7030107@lumino.de> On 07/20/2016 04:06 PM, Gabor Boros wrote: > > https://blogs.technet.microsoft.com/enterprisemobility/2013/12/11/remote-desktop-protocol-licensing-available-for-rdp-8 > > If someone would do a remote desktop running on the free Win IoT we would for free have a rather normal Windows running any normal Windows application. M$ can't allow this. -Michael From michael at freepascal.org Wed Jul 20 16:23:42 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 16:23:42 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <578F8084.1000006@lumino.de> Message-ID: On Wed, 20 Jul 2016, Dimitrios Chr. Ioannidis wrote: > On 20/7/2016 5:00 μμ, Michael Van Canneyt wrote: >> What we will offer you is to design/code in Lazarus/Delphi, transpile >> to Javascript and then run the code in the browser. > > This reminds me the Morfik approach ... Exactly what I am aiming for. IMHO, Morfik was/is the only architectural solution to pascal web apps 'done right'. Sadly, somewhere in time they made a wrong turn. Maybe money ran out, no idea. Michael. From d.ioannidis at nephelae.eu Wed Jul 20 16:24:16 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Wed, 20 Jul 2016 17:24:16 +0300 Subject: [Lazarus] Lazarus 1.6.1 and fpc 2.6.4 In-Reply-To: <637b777f-b1dc-5e80-76ed-a732d3dd42fb@nephelae.eu> References: <637b777f-b1dc-5e80-76ed-a732d3dd42fb@nephelae.eu> Message-ID: On 20/7/2016 3:42 μμ, Dimitrios Chr. Ioannidis wrote: > Hi, > > is Lazarus 1.6 fixes ( aka 1.6.1 soon to be 1.6.2 ) support fpc > 2.6.4 or it needs fpc 3.0.0 ? > > Tried to build a today's update from svn and got this error : > > "(1002) Target OS: Win32 for i386 > (3104) Compiling lazutils.pas > (3104) Compiling laz2_dom.pas > (3104) Compiling laz2_xmlutils.pas > (3104) Compiling lazutf8.pas > C:\Users\Programming\tools\svn\laz-1.6.x\components\lazutils\winlazutf8.inc(358,59) > Error: (3026) Wrong number of parameters specified for call to > "" > lazutf8.pas(3738) Fatal: (10026) There were 1 errors compiling module, > stopping > Fatal: (1018) Compilation aborted > make[1]: *** [lazutils.ppu] Error 1" I can build lazarus 1.6.1 fixes brunch rev. 52571 . The above problem with fpc 2.6.4 is with the rev. 52608 . regards, -- Dimitrios Chr. Ioannidis From mschnell at lumino.de Wed Jul 20 16:32:20 2016 From: mschnell at lumino.de (Michael Schnell) Date: Wed, 20 Jul 2016 16:32:20 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: <578F8B74.7090706@lumino.de> On 07/20/2016 04:18 PM, Santiago A. wrote: > For me that's not the way to go either. Moving complexity from server > to client works when you are offering services, but not when you have > to program client side as well. Facing exactly this task, Microsoft once invented C# and Silverlight. Here the same code (written in C#) can run as well on the server as on the Client (i.e. in the browser). It's up to the user where he places each single function. To me this sounded like a great idea and I felt that the basic design was very well thought out and promising. But obviously the public interest shifting from PCs to mobile devices made Java the winner over C# and finally Microsoft dropped Silverlight. -Michael From svaa at ciberpiula.net Wed Jul 20 16:38:02 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 20 Jul 2016 16:38:02 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> Message-ID: <629c0822-101c-13f0-0a30-ec8da101617d@ciberpiula.net> El 20/07/2016 a las 16:08, Graeme Geldenhuys escribió: > On 2016-07-20 14:42, Michael Schnell wrote: >> Open sourcing Windows "Remote Desktop" ?!?!? > It already exists for Linux and FreeBSD, called "rdesktop". Obviously > it's not the official Microsoft version, but a reverse engineered open > source client and server. I've heard (and used) client in Linux, but I'had never heard about Server. There are third part that offer terminal server, but only for windows. Any link? -- Saludos Santi svaa at ciberpiula.net From d.ioannidis at nephelae.eu Wed Jul 20 16:37:45 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Wed, 20 Jul 2016 17:37:45 +0300 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <578F8084.1000006@lumino.de> Message-ID: <67008af0-bc14-b8a7-7c4a-94bfac686c33@nephelae.eu> On 20/7/2016 5:23 μμ, Michael Van Canneyt wrote: > > > On Wed, 20 Jul 2016, Dimitrios Chr. Ioannidis wrote: > >> On 20/7/2016 5:00 μμ, Michael Van Canneyt wrote: >>> What we will offer you is to design/code in Lazarus/Delphi, >>> transpile to Javascript and then run the code in the browser. >> >> This reminds me the Morfik approach ... > > Exactly what I am aiming for. > > IMHO, Morfik was/is the only architectural solution to pascal web apps > 'done right'. I couldn't agree more, as we're still using Morfik 3 at work ;) We have some web apps, that are too heavy to be done from scratch again ... regards, -- Dimitrios Chr. Ioannidis From mailinglists at geldenhuys.co.uk Wed Jul 20 16:45:43 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 15:45:43 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <578F8B74.7090706@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> <578F8B74.7090706@lumino.de> Message-ID: <68c088ae-e341-825a-2fac-7c2c1af6092a@geldenhuys.co.uk> On 2016-07-20 15:32, Michael Schnell wrote: > and finally Microsoft dropped Silverlight. Oh wow, I didn't know that. Shows you how much I read anything Microsoft related these days. ;-) Now if only Netflix can get their act together and drop Silverlight too, and rather switch to HTML5 Video. Then finally I'll be able to watch Netflix on my FreeBSD system. And other systems like Haiku, Linux etc will be able to enjoy Netflix too. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From michael at freepascal.org Wed Jul 20 16:52:43 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 16:52:43 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: <68c088ae-e341-825a-2fac-7c2c1af6092a@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> <578F8B74.7090706@lumino.de> <68c088ae-e341-825a-2fac-7c2c1af6092a@geldenhuys.co.uk> Message-ID: On Wed, 20 Jul 2016, Graeme Geldenhuys wrote: > On 2016-07-20 15:32, Michael Schnell wrote: >> and finally Microsoft dropped Silverlight. > > Oh wow, I didn't know that. Shows you how much I read anything Microsoft > related these days. ;-) > > Now if only Netflix can get their act together and drop Silverlight too, > and rather switch to HTML5 Video. Then finally I'll be able to watch > Netflix on my FreeBSD system. And other systems like Haiku, Linux etc > will be able to enjoy Netflix too. You can watch netflix with HTML5. Install Google Chrome on a recent Ubuntu Linux, and it should work out of the box. Michael. From mailinglists at geldenhuys.co.uk Wed Jul 20 17:00:26 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 16:00:26 +0100 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> <578F8B74.7090706@lumino.de> <68c088ae-e341-825a-2fac-7c2c1af6092a@geldenhuys.co.uk> Message-ID: <9e09cc21-334b-daf5-9586-f8dfa27e47b7@geldenhuys.co.uk> On 2016-07-20 15:52, Michael Van Canneyt wrote: > Install Google Chrome on a recent Ubuntu Linux, and it should work > out of the box. Google Chrome is not available for FreeBSD and Haiku. Also Chrome comes with proprietary closed-source add-ons which is what Netflix uses for the DRM. No idea if Google will ever support FreeBSD. Chromium is available everywhere, but without those proprietary add-ons it is useless for Netflix viewing. Surely HTML5 video must allow for something else that doesn't require proprietary add-ons? At the moment I just fire up my Win7 VM if I really need to watch on my desktop computer - which is seldom really (alternatively I've got my Macbook Pro). Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From mailinglists at geldenhuys.co.uk Wed Jul 20 17:03:37 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Wed, 20 Jul 2016 16:03:37 +0100 Subject: [Lazarus] Target Survey In-Reply-To: <629c0822-101c-13f0-0a30-ec8da101617d@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> <629c0822-101c-13f0-0a30-ec8da101617d@ciberpiula.net> Message-ID: <512b626d-90eb-21ab-55df-2fc9e52d18ae@geldenhuys.co.uk> On 2016-07-20 15:38, Santiago A. wrote: > Any link? I unfortunately don't have a link, but I'm sure a Google search should help you. I used the server portion about 5 years ago under Linux, so I know it exists. Regards, Graeme From markbass72 at zoho.com Wed Jul 20 17:40:17 2016 From: markbass72 at zoho.com (Marcello) Date: Wed, 20 Jul 2016 17:40:17 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <512b626d-90eb-21ab-55df-2fc9e52d18ae@geldenhuys.co.uk> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> <629c0822-101c-13f0-0a30-ec8da101617d@ciberpiula.net> <512b626d-90eb-21ab-55df-2fc9e52d18ae@geldenhuys.co.uk> Message-ID: Hi all Thinking to HTML and the browsers that turned respectively into a "GUI language" and a "sort of virtual machine where to run" code, I often think about what role could have the pascal. This is the world of interpreted languages, while pascal, currently compiled, has many advantages. I think then to Lazarus and how it was made and the role it might have in a world with different OS. After all, browsers and VMs are not written in interpreted languages. I try to explain, forgive my english, please :) I could put an application server (written like the Lazarus IDE) called for example "LazApplicazionBrowser", on the same floor of a browser or a VM: compiled for each OS. Then put the packages of Lazarus on the same floor of a browser plugin. This "LazApplicazionBrowser" with any module may install modules from either source (require the presence of fpc) or compiled (in this case the modules in repository should already be compiled for all the necessary OS). "LazApplicazionBrowser" then could make the "rebuild", ready for use, natively compiled on target OS. Obviously we're not forced to exclude an interpreted pascal, but I think pascal applications with this system may have a greater spread on all the various OS. I'd like to hear your comments. Thank you Marcello Basso From svaa at ciberpiula.net Wed Jul 20 18:16:01 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 20 Jul 2016 18:16:01 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: El 20/07/2016 a las 16:21, Michael Van Canneyt escribió: > > > On Wed, 20 Jul 2016, Santiago A. wrote: > >> El 20/07/2016 a las 14:10, Michael Van Canneyt escribió: >>> >>> >>> http://www.unigui.com/ >>> http://www.raudus.com/ >>> >>> The problem with this approach is that they are stateful on the server. >>> >>> Michael. >>> >> What's wrong with stateful approach?. > > It is not scalable. Scalable up to what? The GUI of a router. The users connected to an ERP. They needn't to support 10.000 connections a minute, With stateful approach and you can make a more responsive and usable GUI -- Saludos Santi svaa at ciberpiula.net From svaa at ciberpiula.net Wed Jul 20 18:19:00 2016 From: svaa at ciberpiula.net (Santiago A.) Date: Wed, 20 Jul 2016 18:19:00 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <578F45D6.3080504@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> Message-ID: <8fb9c471-65c6-ecb1-7c25-532297c83b72@ciberpiula.net> El 20/07/2016 a las 11:35, Michael Schnell escribió: > In a second step, I intend to do the basics for a "remote GUI" on top > of that. Options here are "ifi" (invented by Martin Any documentation about "ifi"? I haven't found anything inf MSEIde & MSEGui site -- Saludos Santiago A. svaa at ciberpiula.net From michael at freepascal.org Wed Jul 20 18:23:44 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 18:23:44 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <578F5854.8020702@lumino.de> Message-ID: On Wed, 20 Jul 2016, Santiago A. wrote: > El 20/07/2016 a las 16:21, Michael Van Canneyt escribió: >> >> >> On Wed, 20 Jul 2016, Santiago A. wrote: >> >>> El 20/07/2016 a las 14:10, Michael Van Canneyt escribió: >>>> >>>> >>>> http://www.unigui.com/ >>>> http://www.raudus.com/ >>>> >>>> The problem with this approach is that they are stateful on the server. >>>> >>>> Michael. >>>> >>> What's wrong with stateful approach?. >> >> It is not scalable. > > Scalable up to what? The GUI of a router. The users connected to an > ERP. They needn't to support 10.000 connections a minute, I have seen such applications break down at less than 100 users. It all depends on the application and what it does. > With stateful approach and you can make a more responsive and usable GUI Having seen what can be done with ExtJS or other toolkits such as AngularJS, React and whatnot, I disagree completely, but I will not try to convince you... Michael. From mse00000 at gmail.com Wed Jul 20 18:49:46 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Wed, 20 Jul 2016 18:49:46 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <8fb9c471-65c6-ecb1-7c25-532297c83b72@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <578F45D6.3080504@lumino.de> <8fb9c471-65c6-ecb1-7c25-532297c83b72@ciberpiula.net> Message-ID: <201607201849.46405.mse00000@gmail.com> On Wednesday 20 July 2016 18:19:00 Santiago A. wrote: > El 20/07/2016 a las 11:35, Michael Schnell escribió: > > In a second step, I intend to do the basics for a "remote GUI" on top > > of that. Options here are "ifi" (invented by Martin > > Any documentation about "ifi"? > > I haven't found anything inf MSEIde & MSEGui site > A brief explanation is here: http://article.gmane.org/gmane.comp.ide.lazarus.general/73418 An example application here: https://gitlab.com/mseide-msegui/mseuniverse/tree/master/attic/msedocumenting/mse/trunk/help/tutorials/mseifi/ifipipedemo and a video here: http://mseide-msegui.sourceforge.net/pics/mseifiremote.mpeg For questions about MSEide+MSEgui please use the mailinglist: https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk Martin From gaborboros at yahoo.com Wed Jul 20 20:19:44 2016 From: gaborboros at yahoo.com (Gabor Boros) Date: Wed, 20 Jul 2016 20:19:44 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <629c0822-101c-13f0-0a30-ec8da101617d@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> <629c0822-101c-13f0-0a30-ec8da101617d@ciberpiula.net> Message-ID: <9d18682b-439f-a176-f9ef-692f2950e1a2@yahoo.com> 2016. 07. 20. 16:38 keltezéssel, Santiago A. írta: > I've heard (and used) client in Linux, but I'had never heard about Server. > There are third part that offer terminal server, but only for windows. > Any link? xrdp? https://github.com/neutrinolabs/xrdp Gabor From mironsant at googlemail.com Wed Jul 20 21:55:38 2016 From: mironsant at googlemail.com (Dirk Mirons) Date: Wed, 20 Jul 2016 21:55:38 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: <578FD73A.7090003@googlemail.com> Am 13.07.2016 um 18:12 schrieb Santiago A.: > Hi: > > From a message from Gabor, it would be interesting to learn what's the > distribution of Lazarus users: > > OS Target: Linux: 50% Amiga: 30% MorphOS: 20% Widget Target: GTK2: 50%; MUI: 50% From darekm at emadar.com Wed Jul 20 22:21:26 2016 From: darekm at emadar.com (darekm at emadar.com) Date: Wed, 20 Jul 2016 22:21:26 +0200 Subject: [Lazarus] HTML syntax highlighting Message-ID: Hi I want to make Syn editor more usable to edit HTML file. I've start from small things. First I noticed, that attributes are not differentiate from key words, second: Escape_ampersand and comments are paint bold: that make noise. Patch attached. -- Darek -------------- next part -------------- A non-text attachment was scrubbed... Name: ColorDefault.xml.patch Type: text/x-diff Size: 756 bytes Desc: not available URL: From donald at ziesig.org Wed Jul 20 23:04:26 2016 From: donald at ziesig.org (Donald Ziesig) Date: Wed, 20 Jul 2016 17:04:26 -0400 Subject: [Lazarus] I need TTimer (or equivalent) in a CLI program. Message-ID: <383b6fa3-d301-0b3a-f419-b74314ffad9c@ziesig.org> I am writing a command line program that will be started as root from /etc/init.d. (Raspberry PI that will not be connected to the internet.) This program requires TTimer, which seems to be a part of LCL and gives me missing units at compile time. To try to get around LCL, I derived a timer from TCustomTimer. Unfortunately, this pulls in TWidgetSet (also part of LCL but without the missing units) and I get run time error 211 since TWidgetSet is abstract. Is there any timer-like component available without bringing in LCL? Thanks, Don Ziesig From bartjunk64 at gmail.com Wed Jul 20 23:05:58 2016 From: bartjunk64 at gmail.com (Bart) Date: Wed, 20 Jul 2016 23:05:58 +0200 Subject: [Lazarus] HTML syntax highlighting In-Reply-To: References: Message-ID: On 7/20/16, darekm at emadar.com wrote: > Hi > I want to make Syn editor more usable to edit HTML file. ... > Patch attached. Please open a ticket in the bugtracker (in Lazarus->Patches) and attach the patch, along with a sample program (sources only) and a suitable html file to demonstarte the issue. Bart From bartjunk64 at gmail.com Wed Jul 20 23:08:19 2016 From: bartjunk64 at gmail.com (Bart) Date: Wed, 20 Jul 2016 23:08:19 +0200 Subject: [Lazarus] Lazarus 1.6.1 and fpc 2.6.4 In-Reply-To: <637b777f-b1dc-5e80-76ed-a732d3dd42fb@nephelae.eu> References: <637b777f-b1dc-5e80-76ed-a732d3dd42fb@nephelae.eu> Message-ID: On 7/20/16, Dimitrios Chr. Ioannidis wrote: > is Lazarus 1.6 fixes ( aka 1.6.1 soon to be 1.6.2 ) support fpc 2.6.4 > or it needs fpc 3.0.0 ? > It should still support 2.6.4 > Tried to build a today's update from svn and got this error : Please report in the bugtracker. Bart From giuliano.colla at fastwebnet.it Wed Jul 20 23:09:06 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 20 Jul 2016 23:09:06 +0200 Subject: [Lazarus] LCL-fpGUI widgetset support In-Reply-To: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> References: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> Message-ID: Hi Graeme, I think that there is some issue with the unit search path of Lazarus. I just opened in the editor fpg_button.pas and now it works! Currently I'm abroad with limited facilities. ASAP I'll be in better conditions I'll investigate more in detail. Thank you for your assistance, Giuliano Inviato da iPhone > Il giorno 20 lug 2016, alle ore 08:16, Graeme Geldenhuys ha scritto: > > Hello Giuliano, > > [I started a new thread for this] > >> On 2016-07-19 09:28, Giuliano Colla wrote: >> Following the instructions, I've tested. Lazarus = 1.6 Fpc=3.0.0 >> platform linux. >> A blank form compiles and runs ok. The form shows the FPGUI icon. >> Adding a TButton, it fails with: "Class TButton not found" > > That is strange. I just testing with FreeBSD, FPC 2.6.4 (3.0.0 works > too) and Lazarus v1.7 (trunk from about 2 months ago). > > Here is the exact instructions to follow: > > /lcl/interfaces/fpgui/README.txt > > Please note that you must use fpGUI v1.4.1 or the “maint” branch. You > cannot use the fpGUI “develop” branch at this stage. > > I've also attached some screenshots to show a few of the components that > already work. Even specifying one of the built-in themes work with a > LCL-fpGUI application (demo ran with command line parameter: --style > "plastic medium gray") > > I've also attached a screenshot of the Project Options to show where I > specify the LCL-fpGUI widgetset. > > Please excuse the slight color tint in the screenshots. I used Gimp to > reduce the colors to 256 to make them smaller for email purposes. > > Regards, > Graeme > > -- > fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal > http://fpgui.sourceforge.net/ > > My public PGP key: http://tinyurl.com/graeme-pgp > > > > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus From giuliano.colla at fastwebnet.it Wed Jul 20 23:09:06 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 20 Jul 2016 23:09:06 +0200 Subject: [Lazarus] LCL-fpGUI widgetset support In-Reply-To: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> References: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> Message-ID: Hi Graeme, I think that there is some issue with the unit search path of Lazarus. I just opened in the editor fpg_button.pas and now it works! Currently I'm abroad with limited facilities. ASAP I'll be in better conditions I'll investigate more in detail. Thank you for your assistance, Giuliano Inviato da iPhone > Il giorno 20 lug 2016, alle ore 08:16, Graeme Geldenhuys ha scritto: > > Hello Giuliano, > > [I started a new thread for this] > >> On 2016-07-19 09:28, Giuliano Colla wrote: >> Following the instructions, I've tested. Lazarus = 1.6 Fpc=3.0.0 >> platform linux. >> A blank form compiles and runs ok. The form shows the FPGUI icon. >> Adding a TButton, it fails with: "Class TButton not found" > > That is strange. I just testing with FreeBSD, FPC 2.6.4 (3.0.0 works > too) and Lazarus v1.7 (trunk from about 2 months ago). > > Here is the exact instructions to follow: > > /lcl/interfaces/fpgui/README.txt > > Please note that you must use fpGUI v1.4.1 or the “maint” branch. You > cannot use the fpGUI “develop” branch at this stage. > > I've also attached some screenshots to show a few of the components that > already work. Even specifying one of the built-in themes work with a > LCL-fpGUI application (demo ran with command line parameter: --style > "plastic medium gray") > > I've also attached a screenshot of the Project Options to show where I > specify the LCL-fpGUI widgetset. > > Please excuse the slight color tint in the screenshots. I used Gimp to > reduce the colors to 256 to make them smaller for email purposes. > > Regards, > Graeme > > -- > fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal > http://fpgui.sourceforge.net/ > > My public PGP key: http://tinyurl.com/graeme-pgp > > > > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus From donald at ziesig.org Wed Jul 20 23:12:54 2016 From: donald at ziesig.org (Donald Ziesig) Date: Wed, 20 Jul 2016 17:12:54 -0400 Subject: [Lazarus] I need TTimer (or equivalent) in a CLI program. In-Reply-To: <383b6fa3-d301-0b3a-f419-b74314ffad9c@ziesig.org> References: <383b6fa3-d301-0b3a-f419-b74314ffad9c@ziesig.org> Message-ID: On 07/20/2016 05:04 PM, Donald Ziesig wrote: > I am writing a command line program that will be started as root from > /etc/init.d. (Raspberry PI that will not be connected to the internet.) > > This program requires TTimer, which seems to be a part of LCL and > gives me missing units at compile time. > > To try to get around LCL, I derived a timer from TCustomTimer. > Unfortunately, this pulls in TWidgetSet (also part of LCL but without > the missing units) and I get run time error 211 since TWidgetSet is > abstract. > > Is there any timer-like component available without bringing in LCL? > > > Thanks, > > > Don Ziesig > > OOPS, I forgot to mention, I found TFPTimer, but it does not implement the OnTimerStart and OnTimerStop events which I need as well. Now that I am thinking about it, perhaps I can derive something from that that implements those event callbacks. From frederic.crapez at wanadoo.fr Wed Jul 20 23:17:08 2016 From: frederic.crapez at wanadoo.fr (fred) Date: Wed, 20 Jul 2016 23:17:08 +0200 Subject: [Lazarus] Lazarus - fpc - qt - haiku In-Reply-To: References: <637b777f-b1dc-5e80-76ed-a732d3dd42fb@nephelae.eu> Message-ID: <1469049428.16162.5.camel@wanadoo.fr> Hy, recently i install qt4 on haiku with haikudepots. i compile qt bindings, i launch from lazarus directory : make LCL_PLATFORM=qt I copy libQt4* in lazarus/lcl/interfaces/qt and units/i386-haiku/qt, the compilation whas good if not compilation abort. When i launch startlazarus (i receive cannot open library (the file libQt4.so.5 is missing). (before i copy libQt4*.* in /boot/common/lib ) Have you information about this ? Thank's Frederic From nc-gaertnma at netcologne.de Wed Jul 20 23:21:06 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Wed, 20 Jul 2016 23:21:06 +0200 Subject: [Lazarus] I need TTimer (or equivalent) in a CLI program. In-Reply-To: References: <383b6fa3-d301-0b3a-f419-b74314ffad9c@ziesig.org> Message-ID: <20160720232106.0f5bf2bc@limapholos.matflo.wg> On Wed, 20 Jul 2016 17:12:54 -0400 Donald Ziesig wrote: >[...] > > Is there any timer-like component available without bringing in LCL? Yes, TFPTimer. You found it. > OOPS, I forgot to mention, I found TFPTimer, but it does not implement > the OnTimerStart and OnTimerStop events which I need as well. Now that > I am thinking about it, perhaps I can derive something from that that > implements those event callbacks. Good idea. Mattias From norbert at crettol.ch Wed Jul 20 23:21:51 2016 From: norbert at crettol.ch (Norbert Crettol) Date: Wed, 20 Jul 2016 23:21:51 +0200 Subject: [Lazarus] Target Survey In-Reply-To: References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> <629c0822-101c-13f0-0a30-ec8da101617d@ciberpiula.net> <512b626d-90eb-21ab-55df-2fc9e52d18ae@geldenhuys.co.uk> Message-ID: <0093f2c0-017a-2610-cc7c-f29767c0cea9@crettol.ch> Le 20.07.16 à 17:40, Marcello a écrit : > Hi all > Thinking to HTML and the browsers that turned respectively into a "GUI language" and a "sort of virtual machine where to run" code, I often think about what role could have the pascal. > > This is the world of interpreted languages, while pascal, currently compiled, has many advantages. > > I think then to Lazarus and how it was made and the role it might have in a world with different OS. After all, browsers and VMs are not written in interpreted languages. > > I try to explain, forgive my english, please :) > > I could put an application server (written like the Lazarus IDE) called for example "LazApplicazionBrowser", on the same floor of a browser or a VM: compiled for each OS. Then put the packages of Lazarus on the same floor of a browser plugin. > > This "LazApplicazionBrowser" with any module may install modules from either source (require the presence of fpc) or compiled (in this case the modules in repository should already be compiled for all the necessary OS). "LazApplicazionBrowser" then could make the "rebuild", ready for use, natively compiled on target OS. > > Obviously we're not forced to exclude an interpreted pascal, but I think pascal applications with this system may have a greater spread on all the various OS. > > I'd like to hear your comments. > Thank you > Marcello Basso > Hello, It sounds like the Ada Web Server project (http://libre.adacore.com/tools/aws/). You've an open source web server you can compile on any Gnat Ada supported platform and customize to your own needs. I don't know if they have plugins. Regards Norbert From michael at freepascal.org Wed Jul 20 23:26:37 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 20 Jul 2016 23:26:37 +0200 (CEST) Subject: [Lazarus] I need TTimer (or equivalent) in a CLI program. In-Reply-To: References: <383b6fa3-d301-0b3a-f419-b74314ffad9c@ziesig.org> Message-ID: On Wed, 20 Jul 2016, Donald Ziesig wrote: > On 07/20/2016 05:04 PM, Donald Ziesig wrote: >> I am writing a command line program that will be started as root from >> /etc/init.d. (Raspberry PI that will not be connected to the internet.) >> >> This program requires TTimer, which seems to be a part of LCL and >> gives me missing units at compile time. >> >> To try to get around LCL, I derived a timer from TCustomTimer. >> Unfortunately, this pulls in TWidgetSet (also part of LCL but without >> the missing units) and I get run time error 211 since TWidgetSet is >> abstract. >> >> Is there any timer-like component available without bringing in LCL? >> >> >> Thanks, >> >> >> Don Ziesig >> >> > OOPS, I forgot to mention, I found TFPTimer, but it does not implement > the OnTimerStart and OnTimerStop events which I need as well. Now that > I am thinking about it, perhaps I can derive something from that that > implements those event callbacks. A patch for this will certainly be accepted. Michael. From markbass72 at zoho.com Thu Jul 21 09:30:50 2016 From: markbass72 at zoho.com (Marcello) Date: Thu, 21 Jul 2016 09:30:50 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <0093f2c0-017a-2610-cc7c-f29767c0cea9@crettol.ch> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <68ce30f6-e8e1-773e-6d91-d5aa950a292e@gmail.com> <1468939808.2713554.670672585.00859573@webmail.messagingengine.com> <578F45D6.3080504@lumino.de> <613ff44f-4f92-9d6c-41d8-22f6847e060f@geldenhuys.co.uk> <578F5104.7000207@lumino.de> <7923d437-1a4f-32a9-1190-cf614847099c@geldenhuys.co.uk> <204194c7-cdd8-9278-2dd6-b8fbabe7b497@ciberpiula.net> <06c94d34-5c1e-4304-45a8-908fbb660d48@geldenhuys.co.uk> <4b97f493-1a60-99fc-4de8-ee3ab0a1a8af@ciberpiula.net> <578F7FCF.6050302@lumino.de> <69ff3f34-f083-cd1f-cfdf-c360e1329c12@geldenhuys.co.uk> <629c0822-101c-13f0-0a30-ec8da101617d@ciberpiula.net> <512b626d-90eb-21ab-55df-2fc9e52d18ae@geldenhuys.co.uk> <0093f2c0-017a-2610-cc7c-f29767c0cea9@crettol.ch> Message-ID: <5b3a1233-c41e-ee31-0c7b-55175d3260e8@zoho.com> >> > Hello, > > It sounds like the Ada Web Server project > (http://libre.adacore.com/tools/aws/). > You've an open source web server you can compile on any Gnat Ada > supported > platform and customize to your own needs. I don't know if they have > plugins. > > Regards > Norbert > yes, something like that. but oriented to run binaries (already or just) compiled by pascal Regards Marcello From d.ioannidis at nephelae.eu Thu Jul 21 10:08:44 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Thu, 21 Jul 2016 11:08:44 +0300 Subject: [Lazarus] Lazarus 1.6.1 and fpc 2.6.4 In-Reply-To: References: <637b777f-b1dc-5e80-76ed-a732d3dd42fb@nephelae.eu> Message-ID: On 21/7/2016 12:08 πμ, Bart wrote: > On 7/20/16, Dimitrios Chr. Ioannidis wrote: > >> is Lazarus 1.6 fixes ( aka 1.6.1 soon to be 1.6.2 ) support fpc 2.6.4 >> or it needs fpc 3.0.0 ? >> > It should still support 2.6.4 > >> Tried to build a today's update from svn and got this error : > Please report in the bugtracker. Done, plz see http://bugs.freepascal.org/view.php?id=30393 . regards, -- Dimitrios Chr. Ioannidis From mschnell at lumino.de Thu Jul 21 10:41:41 2016 From: mschnell at lumino.de (Michael Schnell) Date: Thu, 21 Jul 2016 10:41:41 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <201607201849.46405.mse00000@gmail.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <578F45D6.3080504@lumino.de> <8fb9c471-65c6-ecb1-7c25-532297c83b72@ciberpiula.net> <201607201849.46405.mse00000@gmail.com> Message-ID: <57908AC5.5070901@lumino.de> On 07/20/2016 06:49 PM, Martin Schreiber wrote: > > A brief explanation is here:... Of course you know that I am a fan :-) . Regarding this discussion being focused on a browser GUI: Do you think there is a chance to do the GUI site of ifi in Java Script (using one of the several Java Script GUI libraries that already have been mentioned in this thread) and with this provide as well the (supposedly more versatile) control-executable solution as the (sometimes necessary) Browser based solution ? Should we discuss this in an mse forum ? -Michael From mschnell at lumino.de Thu Jul 21 10:46:34 2016 From: mschnell at lumino.de (Michael Schnell) Date: Thu, 21 Jul 2016 10:46:34 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <57908AC5.5070901@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <578F45D6.3080504@lumino.de> <8fb9c471-65c6-ecb1-7c25-532297c83b72@ciberpiula.net> <201607201849.46405.mse00000@gmail.com> <57908AC5.5070901@lumino.de> Message-ID: <57908BEA.1050704@lumino.de> On 07/21/2016 10:41 AM, Michael Schnell wrote: > On 07/20/2016 06:49 PM, Martin Schreiber wrote: >> >> A brief explanation is here:.. >> "The client could be realized as browser plug-in (not done up to now). I have no idea how a Browser-plugin can be create with fpc. Moreover when running in a browser and the program to be remote controlled is "behind" a web server, how to do the communication (as I understand that ifi needs a bidirectional byte stream). -Michael From mse00000 at gmail.com Thu Jul 21 12:25:57 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Thu, 21 Jul 2016 12:25:57 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <201607192120.34258.mse00000@gmail.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <2e09abc9-2b36-3cd2-506c-18db3eb4d44c@geldenhuys.co.uk> <201607192120.34258.mse00000@gmail.com> Message-ID: <201607211225.58036.mse00000@gmail.com> On Tuesday 19 July 2016 21:20:34 Martin Schreiber wrote: > On Tuesday 19 July 2016 19:32:33 Graeme Geldenhuys wrote: > > On 2016-07-19 18:05, Aradeonas wrote: > > >> Are you using Virtual Treeview as a treeview or a grid? It seems > > >> some components (VT, ListView etc) don't really know what they want > > >> to be. ;-) > > > > > > Both, As VTV is the best grid-ish component I fount in Lazarus world. > > > Kgrid is good but slow. > > > > Umm... using a TreeView component as a Grid. Somewhere the design went > > horrible wrong. :-p > > I don't think so. MSEgui also supports a combination of treeview and grid > by placing a TTreeItemEdit in a TWidgetGrid. TWidgetGrid accepts any data > edit widget as column widget (TStringEdit, TIntegerEdit, TRealEdit, > TDataButton, TSlider, TDropdownListedit...) which builds a column with the > according data type. In case of TTreeItemEdit the datatype is an instance > pointer of TTreeListItem. Very handy. > For illustration see screenshot here: http://mseide-msegui.sourceforge.net/pics/twidgetgrid.png 'Run' is a TDataButton, 'Enabled/Caption' a TTreeItemEdit, 'Filepath' a TFilenameEdit which shows a filedialog by clicking the ellipse-button, 'Comment' a TDialogStringEdit which shows a multiline edit dialog by clicking its ellipse-button and 'ED' a TDataButton in a right aligned column. Martin From mse00000 at gmail.com Thu Jul 21 12:34:04 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Thu, 21 Jul 2016 12:34:04 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <57908AC5.5070901@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <201607201849.46405.mse00000@gmail.com> <57908AC5.5070901@lumino.de> Message-ID: <201607211234.04846.mse00000@gmail.com> On Thursday 21 July 2016 10:41:41 Michael Schnell wrote: > > Do you think there is a chance to do the GUI site of ifi in Java Script > (using one of the several Java Script GUI libraries that already have > been mentioned in this thread) and with this provide as well the > (supposedly more versatile) control-executable solution as the > (sometimes necessary) Browser based solution ? > Maybe but not by me. MSEgui is too much sophisticated for JavaScript. ;-) Why not use the available JavaScript web environments directly? > Should we discuss this in an mse forum ? > Most likely. Martin From mse00000 at gmail.com Thu Jul 21 12:35:22 2016 From: mse00000 at gmail.com (Martin Schreiber) Date: Thu, 21 Jul 2016 12:35:22 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <57908BEA.1050704@lumino.de> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <57908AC5.5070901@lumino.de> <57908BEA.1050704@lumino.de> Message-ID: <201607211235.22225.mse00000@gmail.com> On Thursday 21 July 2016 10:46:34 Michael Schnell wrote: > On 07/21/2016 10:41 AM, Michael Schnell wrote: > > On 07/20/2016 06:49 PM, Martin Schreiber wrote: > >> A brief explanation is here:.. > >> "The client could be realized as browser plug-in (not done up to now). > > I have no idea how a Browser-plugin can be create with fpc. > > Moreover when running in a browser and the program to be remote > controlled is "behind" a web server, how to do the communication (as I > understand that ifi needs a bidirectional byte stream). > It must be tunnelled by one way or another. Martin From mschnell at lumino.de Thu Jul 21 13:24:23 2016 From: mschnell at lumino.de (Michael Schnell) Date: Thu, 21 Jul 2016 13:24:23 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <201607211234.04846.mse00000@gmail.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <201607201849.46405.mse00000@gmail.com> <57908AC5.5070901@lumino.de> <201607211234.04846.mse00000@gmail.com> Message-ID: <5790B0E7.6010201@lumino.de> On 07/21/2016 12:34 PM, Martin Schreiber wrote: > On Thursday 21 July 2016 10:41:41 Michael Schnell wrote: > Maybe but not by me. Of course not :-) > MSEgui is too much sophisticated for JavaScript. ;-) > Why not use the available JavaScript web environments directly? To be able to simply switch a project between local (mse-) GUI, remote (ifi) GUI and browser based (Java/ifi) GUI mode. This would be a major argument to switch to mseGUI from many development tools. > >> Should we discuss this in an mse forum ? >> > Most likely. > as soon as any longer reply is necessary. -Michael From markbass72 at zoho.com Thu Jul 21 16:09:17 2016 From: markbass72 at zoho.com (Marcello) Date: Thu, 21 Jul 2016 16:09:17 +0200 Subject: [Lazarus] Google Calendar APIs Message-ID: <29ec77df-f925-293c-9563-c808f535d51e@zoho.com> Hi all I'm trying to create a event on a google calendar. Starting from "calendardemo" I create a new procedure to test my code and a button to execute. Following code works properly: after execution I can see the event using a browser. I know that recently a bug was closed (http://bugs.freepascal.org/view.php?id=29487) but I do not think it is the same problem. Any suggestions? Thanks Marcello procedure TMainForm.Insert; var Entry: TEvent; begin Entry:=TEvent.Create(); try Entry.id := 'aaa' + FormatDateTime('yyyymmddhhnnss', Now); Entry.summary:=Format('test event: %s', [Entry.id]); Entry.description:='empty description, yeah!'; Entry.location:='a location'; Entry.start := TEventDateTime.Create(); Entry.start.dateTime:= ComposeDateTime(EncodeDate(2016,7,16),EncodeTime(23 -2,0,0,0)); Entry.start.timeZone:='Europe/Rome'; Entry._end := TEventDateTime.Create(); Entry._end.dateTime := ComposeDateTime(EncodeDate(2016,7,16),EncodeTime(23 -2,10,0,0)); Entry._end.timeZone:='Europe/Rome'; SaveRefreshToken; FCalendarAPI.EventsResource.Insert(FCurrentCalendar.ID, Entry); finally Entry.Free; end; end; Follow request.log -------------------------------------------------------------------------------- Request : POST https://www.googleapis.com/calendar/v3/calendars/mygoogleaccount at gmail.com/events Headers: Content-type:application/json Authorization: Bearer ya29.CjUnA_TOUWN8YvS8KjqYqFtrIyfJEQPJkyrl36V4LuM8T90b6qwMKJ0j4kTsx3YrW42QKF0MAg Body: { "description" : "empty description, yeah!", "end" : { "dateTime" : "2016-07-16T21:10:00.000Z", "timeZone" : "Europe\/Rome" }, "id" : "aaa20160721160146", "location" : "a location", "start" : { "dateTime" : "2016-07-16T21:00:00.000Z", "timeZone" : "Europe\/Rome" }, "summary" : "test event: aaa20160721160146" } Trying multiple protocols. -------------------------------------------------------------------------------- Response : 200 : OK Headers: Cache-Control: no-cache, no-store, max-age=0, must-revalidate Pragma: no-cache Expires: Mon, 01 Jan 1990 00:00:00 GMT Date: Thu, 21 Jul 2016 14:01:46 GMT Vary: X-Origin Content-Type: application/json; charset=UTF-8 X-Content-Type-Options: nosniff X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1; mode=block Server: GSE Alternate-Protocol: 443:quic Alt-Svc: quic=":443"; ma=2592000; v="36,35,34,33,32,31,30,29,28,27,26,25" Accept-Ranges: none Vary: Origin,Accept-Encoding Transfer-Encoding: chunked Body: { "kind": "calendar#event", "etag": "\"2938219412944000\"", "id": "aaa20160721160146", "status": "confirmed", "htmlLink": "https://www.google.com/calendar/event?eid=YWFhMjAxNjA3MjExNjAxNDYgbWFnZ2lvcmRvbW80bUBt", "created": "2016-07-21T14:01:46.000Z", "updated": "2016-07-21T14:01:46.472Z", "summary": "test event: aaa20160721160146", "description": "empty description, yeah!", "location": "a location", "creator": { "email": "mygoogleaccount at gmail.com", "self": true }, "organizer": { "email": "mygoogleaccount at gmail.com", "self": true }, "start": { "dateTime": "2016-07-16T23:00:00+02:00", "timeZone": "Europe/Rome" }, "end": { "dateTime": "2016-07-16T23:10:00+02:00", "timeZone": "Europe/Rome" }, "iCalUID": "aaa20160721160146 at google.com", "sequence": 0, "reminders": { "useDefault": true } } From markbass72 at zoho.com Thu Jul 21 16:21:21 2016 From: markbass72 at zoho.com (Marcello) Date: Thu, 21 Jul 2016 16:21:21 +0200 Subject: [Lazarus] Google Calendar APIs In-Reply-To: <29ec77df-f925-293c-9563-c808f535d51e@zoho.com> References: <29ec77df-f925-293c-9563-c808f535d51e@zoho.com> Message-ID: <83b9b30b-df8c-0a8f-9959-f714a672bd67@zoho.com> On 21/07/2016 16:09, Marcello wrote: > > Following code works properly: after execution I can see the event > using a browser. Forgive me code works propery but, closing the application, heaptrace shows many laks Regards Marcello From donald at ziesig.org Thu Jul 21 21:05:17 2016 From: donald at ziesig.org (Donald Ziesig) Date: Thu, 21 Jul 2016 15:05:17 -0400 Subject: [Lazarus] TThread in console mode program. Message-ID: Hi All: I am still trying to get timers to work in a console mode program. While I was doing that I ran into problems with TThread. Question: Do console mode programs have a "run loop"?. The reason I am asking is that both Raspbian and Linux Mint TThread's Synchronize method apparently does nothing (it works fine when used with LCL). I can call it, but it doesn't run the method passed as a parameter, nor does it return. I wrote a trivial console mode program that uses TThread and tested it on both Raspbian and Linux Mint with exactly the same results. The simplest Execute method fails: procedure TXThread.Execute; begin Synchronize( Callback ); end; I have tried stepping into Synchronize, but even the debugger seems to get lost. If I change Execute to: procedure TXThread.Execute; begin Callback; end; the Callback method is invoked (seemingly in the main thread, but I'm not sure... Will have to figure it out later). Thanks, Don Ziesig From jmlandmesser at gmx.de Thu Jul 21 21:14:46 2016 From: jmlandmesser at gmx.de (John Landmesser) Date: Thu, 21 Jul 2016 21:14:46 +0200 Subject: [Lazarus] Lazarus svn 52737 broken: can't open Ctrl + Spacebar in editor! Message-ID: <0344b2ee-1dae-499b-dfac-5bc6cfd526cc@gmx.de> lclintf.pas(65,5) Error: Include-Datei nicht gefunden "lclintfh.inc" Lazarus 1.7 r52737 FPC 3.0.0 x86_64-linux-gtk 2 From nc-gaertnma at netcologne.de Thu Jul 21 21:21:06 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 21 Jul 2016 21:21:06 +0200 Subject: [Lazarus] TThread in console mode program. In-Reply-To: References: Message-ID: <20160721212106.500003cc@limapholos.matflo.wg> On Thu, 21 Jul 2016 15:05:17 -0400 Donald Ziesig wrote: >[...] > Question: Do console mode programs have a "run loop"?. Synchronize requires that your main thread calls CheckSynchronize from time to time. The LCL does that in its loop. >[...] Mattias From donald at ziesig.org Thu Jul 21 21:35:51 2016 From: donald at ziesig.org (Donald Ziesig) Date: Thu, 21 Jul 2016 15:35:51 -0400 Subject: [Lazarus] TThread in console mode program. In-Reply-To: <20160721212106.500003cc@limapholos.matflo.wg> References: <20160721212106.500003cc@limapholos.matflo.wg> Message-ID: <8abe17cc-2d20-06f0-f451-3a7892677250@ziesig.org> On 07/21/2016 03:21 PM, Mattias Gaertner wrote: > On Thu, 21 Jul 2016 15:05:17 -0400 > Donald Ziesig wrote: > >> [...] >> Question: Do console mode programs have a "run loop"?. > Synchronize requires that your main thread calls CheckSynchronize from > time to time. The LCL does that in its loop. > > >> [...] > Mattias That made it work! Thank you. (Where is this documented?) Don From nc-gaertnma at netcologne.de Thu Jul 21 21:37:06 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 21 Jul 2016 21:37:06 +0200 Subject: [Lazarus] Lazarus svn 52737 broken: can't open Ctrl + Spacebar in editor! In-Reply-To: <0344b2ee-1dae-499b-dfac-5bc6cfd526cc@gmx.de> References: <0344b2ee-1dae-499b-dfac-5bc6cfd526cc@gmx.de> Message-ID: <20160721213706.29e4b963@limapholos.matflo.wg> On Thu, 21 Jul 2016 21:14:46 +0200 John Landmesser wrote: > lclintf.pas(65,5) Error: Include-Datei nicht gefunden "lclintfh.inc" > > Lazarus 1.7 r52737 FPC 3.0.0 x86_64-linux-gtk 2 Sorry, my fault. Fixed. Mattias From michael at freepascal.org Thu Jul 21 21:42:42 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Thu, 21 Jul 2016 21:42:42 +0200 (CEST) Subject: [Lazarus] Google Calendar APIs In-Reply-To: <83b9b30b-df8c-0a8f-9959-f714a672bd67@zoho.com> References: <29ec77df-f925-293c-9563-c808f535d51e@zoho.com> <83b9b30b-df8c-0a8f-9959-f714a672bd67@zoho.com> Message-ID: On Thu, 21 Jul 2016, Marcello wrote: > On 21/07/2016 16:09, Marcello wrote: >> >> Following code works properly: after execution I can see the event >> using a browser. > > Forgive me > code works propery but, closing the application, heaptrace shows many laks Memory leaks have been fixed meanwhile, so it should work with the latest source ? Michael. From nc-gaertnma at netcologne.de Thu Jul 21 21:44:49 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 21 Jul 2016 21:44:49 +0200 Subject: [Lazarus] TThread in console mode program. In-Reply-To: <8abe17cc-2d20-06f0-f451-3a7892677250@ziesig.org> References: <20160721212106.500003cc@limapholos.matflo.wg> <8abe17cc-2d20-06f0-f451-3a7892677250@ziesig.org> Message-ID: <20160721214449.613c4c26@limapholos.matflo.wg> On Thu, 21 Jul 2016 15:35:51 -0400 Donald Ziesig wrote: > On 07/21/2016 03:21 PM, Mattias Gaertner wrote: > > On Thu, 21 Jul 2016 15:05:17 -0400 > > Donald Ziesig wrote: > > > >> [...] > >> Question: Do console mode programs have a "run loop"?. > > Synchronize requires that your main thread calls CheckSynchronize from > > time to time. The LCL does that in its loop. > > > > > >> [...] > > Mattias > > That made it work! Thank you. (Where is this documented?) In CheckSynchronize itself, but not in the wiki multithread tutorial. I added it there. Mattias From bo.berglund at gmail.com Thu Jul 21 23:14:23 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Thu, 21 Jul 2016 23:14:23 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... Message-ID: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> I have some shared code which has conditionals built in to check the Delphi version. When I use these functions in Lazarus 1.6/Fpc 3.0 on Windows7 I get a compile error as follows: FormClient.pas(152,7) Error: Incompatible types: got "AnsiString" expected "Int64" FormClient.pas(152,7) Error: Compile time expression: Wanted Boolean but got at IF or ELSEIF The offending code looks like this: {$IF CompilerVersion >= 20} {Delphi 2009 = 20..} with TMemIniFile.Create(IFile, TEncoding.UTF8) do {$ELSE} with TMemIniFile.Create(IFile) do {$IFEND} What should i do to make this error go away? I do not understand from where it gets the error message about int64 and AnsdiString... Second question: ---------------- I use a TFolderDialog component in the program to select a target directory. Apparently this component is not native Delphi (although I have used it for years) and so Lazarus barfs at it... Is there a native Lazarus/Fpc dialog that can be used to let the user select a directory? Note: no file, just the directory. -- Bo Berglund Developer in Sweden From skalogryz.lists at gmail.com Thu Jul 21 23:24:00 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Thu, 21 Jul 2016 17:24:00 -0400 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> Message-ID: On Thu, Jul 21, 2016 at 5:14 PM, Bo Berglund wrote: > Second question: > ---------------- > I use a TFolderDialog component in the program to select a target > directory. Apparently this component is not native Delphi (although I > have used it for years) and so Lazarus barfs at it... > Is there a native Lazarus/Fpc dialog that can be used to let the user > select a directory? Note: no file, just the directory. > It's called TSelectDirectoryDialog in Lazarus. However, if property names are different you still have to modify the code. thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From donald at ziesig.org Thu Jul 21 23:37:54 2016 From: donald at ziesig.org (Donald Ziesig) Date: Thu, 21 Jul 2016 17:37:54 -0400 Subject: [Lazarus] TThread in console mode program. In-Reply-To: <20160721214449.613c4c26@limapholos.matflo.wg> References: <20160721212106.500003cc@limapholos.matflo.wg> <8abe17cc-2d20-06f0-f451-3a7892677250@ziesig.org> <20160721214449.613c4c26@limapholos.matflo.wg> Message-ID: <742859de-2300-0151-b4b9-77b545cf0c79@ziesig.org> On 07/21/2016 03:44 PM, Mattias Gaertner wrote: > On Thu, 21 Jul 2016 15:35:51 -0400 > Donald Ziesig wrote: > >> On 07/21/2016 03:21 PM, Mattias Gaertner wrote: >>> On Thu, 21 Jul 2016 15:05:17 -0400 >>> Donald Ziesig wrote: >>> >>>> [...] >>>> Question: Do console mode programs have a "run loop"?. >>> Synchronize requires that your main thread calls CheckSynchronize from >>> time to time. The LCL does that in its loop. >>> >>> >>>> [...] >>> Mattias >> That made it work! Thank you. (Where is this documented?) > In CheckSynchronize itself, but not in the wiki multithread tutorial. I > added it there. > > Mattias Cool! Thanks again. Now back to TFPTimer. I got it working with a hack in TFPTimerThread.Execute: As implemented it calls Synchronize(@T.Timer). This does *not* work. In desperation I hacked it to call Queue(@T.Timer) and it works perfectly. I understand the difference between Synchronize and Queue, but I sure don't know why Queue works and Synchronize doesn't in this case. (Only on the PI, I didn't try this on Linux Mint). Don -------------- next part -------------- An HTML attachment was scrubbed... URL: From aradeonas at operamail.com Thu Jul 21 23:39:39 2016 From: aradeonas at operamail.com (Aradeonas) Date: Thu, 21 Jul 2016 14:39:39 -0700 Subject: [Lazarus] Time to vote in Graphics Contest Message-ID: <1469137179.3518635.673245369.0470F017@webmail.messagingengine.com> Hi, Come and see friends works in Graphics Contest, have fun and you can vote for one you like. http://forum.lazarus.freepascal.org/index.php/topic,32626.0.html Regards, Ara   -- http://www.fastmail.com - Email service worth paying for. Try it for free -------------- next part -------------- An HTML attachment was scrubbed... URL: From bo.berglund at gmail.com Fri Jul 22 00:05:27 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Fri, 22 Jul 2016 00:05:27 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> Message-ID: On Thu, 21 Jul 2016 17:24:00 -0400, Dmitry Boyarintsev wrote: >On Thu, Jul 21, 2016 at 5:14 PM, Bo Berglund wrote: > >> Second question: >> ---------------- >> I use a TFolderDialog component in the program to select a target >> directory. Apparently this component is not native Delphi (although I >> have used it for years) and so Lazarus barfs at it... >> Is there a native Lazarus/Fpc dialog that can be used to let the user >> select a directory? Note: no file, just the directory. >> > >It's called TSelectDirectoryDialog in Lazarus. >However, if property names are different you still have to modify the code. OK, found it. I had to close Lazarus and then hand edit the lfm and pas files because Lazarus would not let me fix it within... Cannot check if it will work the same yet because of the conditional errors checking the Delphi version. But it seems like it does not have a property for the directory name, maybe I can use the FileName property instead? -- Bo Berglund Developer in Sweden From nc-gaertnma at netcologne.de Fri Jul 22 00:12:17 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Fri, 22 Jul 2016 00:12:17 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> Message-ID: <20160722001217.3efacce6@limapholos.matflo.wg> On Thu, 21 Jul 2016 23:14:23 +0200 Bo Berglund wrote: > I have some shared code which has conditionals built in to check the > Delphi version. When I use these functions in Lazarus 1.6/Fpc 3.0 on > Windows7 I get a compile error as follows: > > FormClient.pas(152,7) Error: Incompatible types: got "AnsiString" > expected "Int64" > FormClient.pas(152,7) Error: Compile time expression: Wanted Boolean > but got at IF or ELSEIF > > The offending code looks like this: > > {$IF CompilerVersion >= 20} {Delphi 2009 = 20..} > with TMemIniFile.Create(IFile, TEncoding.UTF8) do > {$ELSE} > with TMemIniFile.Create(IFile) do > {$IFEND} > > What should i do to make this error go away? For example: {$IF defined(FPC)} TMemIniFile.Create(IFile); {$ElseIf CompilerVersion >= 20} {Delphi 2009 = 20..} TMemIniFile.Create(IFile, TEncoding.UTF8); {$ELSE} TMemIniFile.Create(IFile); {$IFEND} > I do not understand from where it gets the error message about int64 > and AnsdiString... CompilerVersion is only defined by the Delphi compiler. An undefined macro is by default an empty string. FPC uses FPC_FullVersion. Mattias From nc-gaertnma at netcologne.de Fri Jul 22 00:13:01 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Fri, 22 Jul 2016 00:13:01 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> Message-ID: <20160722001301.43e2b67f@limapholos.matflo.wg> On Fri, 22 Jul 2016 00:05:27 +0200 Bo Berglund wrote: >[...] > But it seems like it does not have a property for the directory name, > maybe I can use the FileName property instead? Yes. Mattias From leledumbo_cool at yahoo.co.id Fri Jul 22 00:55:02 2016 From: leledumbo_cool at yahoo.co.id (leledumbo) Date: Thu, 21 Jul 2016 15:55:02 -0700 (MST) Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: <1469141702148-4049162.post@n3.nabble.com> > From a message from Gabor, it would be interesting to learn what's the > distribution of Lazarus users: This is my current daily working stats (doesn't necessarily mean what I can make for): OS target: Linux: 100% Widget Target: Qt: 25% NoGUI: 75% // webservices, webservices everywhere... Country: Indonesia -- View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-Target-Survey-tp4048983p4049162.html Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. From mailinglists at geldenhuys.co.uk Fri Jul 22 01:09:13 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Fri, 22 Jul 2016 00:09:13 +0100 Subject: [Lazarus] Time to vote in Graphics Contest In-Reply-To: <1469137179.3518635.673245369.0470F017@webmail.messagingengine.com> References: <1469137179.3518635.673245369.0470F017@webmail.messagingengine.com> Message-ID: <1a2d2b82-a912-b8fe-b067-19925a193874@geldenhuys.co.uk> On 2016-07-21 22:39, Aradeonas wrote: > Come and see friends works in Graphics Contest, have fun and you can > vote for one you like. Well done, you guys had a good turnout this year. :) Regards, Graeme From mschnell at lumino.de Fri Jul 22 09:42:41 2016 From: mschnell at lumino.de (Michael Schnell) Date: Fri, 22 Jul 2016 09:42:41 +0200 Subject: [Lazarus] TThread in console mode program. In-Reply-To: <742859de-2300-0151-b4b9-77b545cf0c79@ziesig.org> References: <20160721212106.500003cc@limapholos.matflo.wg> <8abe17cc-2d20-06f0-f451-3a7892677250@ziesig.org> <20160721214449.613c4c26@limapholos.matflo.wg> <742859de-2300-0151-b4b9-77b545cf0c79@ziesig.org> Message-ID: <5791CE71.7020500@lumino.de> On 07/21/2016 11:37 PM, Donald Ziesig wrote: > TThread.Queue simply schedules an event in the Main Thread queue (i.e. an event handler procedure will be called when the main thread next time calls CheckSynchronize() ) . TThread.Synchronize additionally stalls the thread that calls TThread.Synchronize() until the main thread is done with executing the scheduled event handler procedure. -Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: From michael at freepascal.org Fri Jul 22 11:01:41 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Fri, 22 Jul 2016 11:01:41 +0200 (CEST) Subject: [Lazarus] Target Survey In-Reply-To: <1469141702148-4049162.post@n3.nabble.com> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> <1469141702148-4049162.post@n3.nabble.com> Message-ID: On Thu, 21 Jul 2016, leledumbo wrote: >> From a message from Gabor, it would be interesting to learn what's the >> distribution of Lazarus users: Linux, no GUI (services): 80% Linux, GUI (GTK): 5% Windows, no GUI (services): 5% Windows, gui: 10% Country: Belgium. Michael. From mailinglists at geldenhuys.co.uk Fri Jul 22 12:11:42 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Fri, 22 Jul 2016 11:11:42 +0100 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <20160722001301.43e2b67f@limapholos.matflo.wg> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> Message-ID: On 2016-07-21 23:13, Mattias Gaertner wrote: >> > But it seems like it does not have a property for the directory name, >> > maybe I can use the FileName property instead? > Yes. That makes *no* sense for a class with the name TSelectDirectoryDialog?? Regards, Graeme From nc-gaertnma at netcologne.de Fri Jul 22 12:17:49 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Fri, 22 Jul 2016 12:17:49 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> Message-ID: <20160722121749.3e7f8352@limapholos.matflo.wg> On Fri, 22 Jul 2016 11:11:42 +0100 Graeme Geldenhuys wrote: > On 2016-07-21 23:13, Mattias Gaertner wrote: > >> > But it seems like it does not have a property for the directory name, > >> > maybe I can use the FileName property instead? > > Yes. > > That makes *no* sense for a class with the name TSelectDirectoryDialog?? TSelectDirectoryDialog is a specialized TOpenDialog. TSelectDirectoryDialog = class(TOpenDialog) TOpenDialog = class(TFileDialog) TFileDialog = class(TCommonDialog) ... Mattias From mailinglists at geldenhuys.co.uk Fri Jul 22 12:26:39 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Fri, 22 Jul 2016 11:26:39 +0100 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <20160722121749.3e7f8352@limapholos.matflo.wg> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> Message-ID: <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> On 2016-07-22 11:17, Mattias Gaertner wrote: > TSelectDirectoryDialog is a specialized TOpenDialog. > > TSelectDirectoryDialog = class(TOpenDialog) > TOpenDialog = class(TFileDialog) > TFileDialog = class(TCommonDialog) I know all that, I checked before I replied. My point is you have a DIRECTORY select dialog, but you have to use a Filename property to retrieve the selected Directory Name. Makes no sense. If you must use the TFileDialog functionality, then at least add another class in the hierarchy (eg: TCustomFileDialog) where properties like "DefaultExt", "FileName", "Files" etc are not published. Then TSelectDirectoryDialog can descend from that, and then publish a "Directory" and "DirectoryList" (if multiple directory selection is supported) properties which internally reads the Filename value. As it is now, the usage is messy. Regards, Graeme From bartjunk64 at gmail.com Fri Jul 22 13:00:09 2016 From: bartjunk64 at gmail.com (Bart) Date: Fri, 22 Jul 2016 13:00:09 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> Message-ID: On 7/22/16, Graeme Geldenhuys wrote: > I know all that, I checked before I replied. My point is you have a > DIRECTORY select dialog, but you have to use a Filename property to > retrieve the selected Directory Name. Makes no sense. > > If you must use the TFileDialog functionality, then at least add another > class in the hierarchy (eg: TCustomFileDialog) where properties like > "DefaultExt", "FileName", "Files" etc are not published. Then > TSelectDirectoryDialog can descend from that, and then publish a > "Directory" and "DirectoryList" (if multiple directory selection is > supported) properties which internally reads the Filename value. It will break every existing program that uses this dialog (including the IDE). > > As it is now, the usage is messy. Unfortunately yes. Bart From mailinglists at geldenhuys.co.uk Fri Jul 22 13:20:50 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Fri, 22 Jul 2016 12:20:50 +0100 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> Message-ID: <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> On 2016-07-22 12:00, Bart wrote: > It will break every existing program that uses this dialog (including > the IDE). The logic is broken already. So at least fix it for future releases. Not improving the LCL or fixing bugs (yes, I consider it a bug) is worse. Regards, Graeme From nc-gaertnma at netcologne.de Fri Jul 22 14:02:25 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Fri, 22 Jul 2016 14:02:25 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> Message-ID: <20160722140225.172aaca1@limapholos.matflo.wg> On Fri, 22 Jul 2016 12:20:50 +0100 Graeme Geldenhuys wrote: > On 2016-07-22 12:00, Bart wrote: > > It will break every existing program that uses this dialog (including > > the IDE). > > > The logic is broken already. So at least fix it for future releases. Not > improving the LCL or fixing bugs (yes, I consider it a bug) is worse. A directory is a file and has a filename. The logic is that similar properties/methods have the same the name (e.g. Create, Clear, Caption, Filename). You don't need special names for specializations. Bo found the Filename pretty fast himself and could use F1 to confirm. Maybe you think it is a bug, because you are used to fpgui? Mattias From skalogryz.lists at gmail.com Fri Jul 22 14:55:22 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Fri, 22 Jul 2016 08:55:22 -0400 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> Message-ID: On Thu, Jul 21, 2016 at 6:05 PM, Bo Berglund wrote: > On Thu, 21 Jul 2016 17:24:00 -0400, Dmitry Boyarintsev > > Cannot check if it will work the same yet because of the conditional > errors checking the Delphi version. > But it seems like it does not have a property for the directory name, > maybe I can use the FileName property instead? > If you're reading/assigning directory name in run-time (rather than design time), you could (conditionally for FPC) add a class helper for TSelectDirectoryDialog, emulating TFolderDialog the property Something like this: {$ifdef fpc} TSelectDirectoryDialogForFolderDialog = class helper for TSelectDirectoryDialog private function GetDirName: string; procedure SetDirName(const AValue: string); public // the property name should match the one used for TFolderDialog // in order to prevent any changes in the code. property DirectoryName: string read GetDirName write SetDirName; end; {$endif} implementation ... {$ifdef fpc} function TSelectDirectoryDialogForFolderDialog.GetDirName: string; begin Result:=Self.FileName; end; procedure TSelectDirectoryDialogForFolderDialogSetDirName(const AValue: string); begin Self.FileName:=Avalue; end; {$endif} thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From coppolastudio at gmail.com Fri Jul 22 17:16:35 2016 From: coppolastudio at gmail.com (Salvatore Coppola) Date: Fri, 22 Jul 2016 17:16:35 +0200 Subject: [Lazarus] Target Survey In-Reply-To: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> References: <49727e36-dcff-fb62-4ff7-c89afdb407fa@ciberpiula.net> Message-ID: pretty much hobbyist Same applications (Linux at home) OS target: Windows: 50% Linux: 50% Widget Target: Win64 50% Gtk2: 50% Country: Italy 2016-07-13 18:12 GMT+02:00 Santiago A. : > Hi: > > From a message from Gabor, it would be interesting to learn what's the > distribution of Lazarus users: > > These are my data: > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bo.berglund at gmail.com Fri Jul 22 17:58:14 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Fri, 22 Jul 2016 17:58:14 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... References: <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> <20160722140225.172aaca1@limapholos.matflo.wg> Message-ID: On Fri, 22 Jul 2016 14:02:25 +0200, Mattias Gaertner wrote: >Bo found the Filename pretty fast himself and could use F1 to >confirm. > Yes, indeed it works and I concur that at least on Linux a directory is nothing but a special file so i am fine with the FileName property! :) Delphi did not have a FolderSelect dialog at the time we needed it, but we found the one we used for so long on the net... Good that Lazarus/Fpc has one built in! -- Bo Berglund Developer in Sweden From donald at ziesig.org Fri Jul 22 18:00:42 2016 From: donald at ziesig.org (Donald Ziesig) Date: Fri, 22 Jul 2016 12:00:42 -0400 Subject: [Lazarus] TThread in console mode program. In-Reply-To: <5791CE71.7020500@lumino.de> References: <20160721212106.500003cc@limapholos.matflo.wg> <8abe17cc-2d20-06f0-f451-3a7892677250@ziesig.org> <20160721214449.613c4c26@limapholos.matflo.wg> <742859de-2300-0151-b4b9-77b545cf0c79@ziesig.org> <5791CE71.7020500@lumino.de> Message-ID: On 07/22/2016 03:42 AM, Michael Schnell wrote: > On 07/21/2016 11:37 PM, Donald Ziesig wrote: >> > TThread.Queue simply schedules an event in the Main Thread queue (i.e. > an event handler procedure will be called when the main thread next > time calls CheckSynchronize() ) . > > TThread.Synchronize additionally stalls the thread that calls > TThread.Synchronize() until the main thread is done with executing the > scheduled event handler procedure. > > -Michael > > Hi Michael, I know the difference between Synchronize and Queue. The problem is that Synchronize appears to suspend the main thread (but only when used in TFPTimer). I have test programs that show that TThread.Synchronize properly suspends the calling thread and executes the callback using the main thread when TThread is used by itself. On the other hand, when TThread is subclassed to be the TFPTimerThread, Synchronize appears to suspend the main thread and the program hangs. The thread ids are all appropriate (Synchronize is called from the timer thread) but, once called, Synchronize never returns and the callback is not executed. When Synchronize is replaced by Queue, the timer program works as expected (the timer thread continues execution immediately after Queue returns, instead of waiting for the callback routine to finish). Both cases behave identically on the Raspberry Pi and Linux Mint so I believe that the problem lies in the FPC code, not the OS. This does not make any sense to me, but, since the behavior of TFPTimer (as modified to use Queue) is appropriate for my application, and I do have a deadline, I will use the modified TFPTimer and return to this weirdness when my project is done. Thanks, Don -------------- next part -------------- An HTML attachment was scrubbed... URL: From bo.berglund at gmail.com Fri Jul 22 18:00:19 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Fri, 22 Jul 2016 18:00:19 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001217.3efacce6@limapholos.matflo.wg> Message-ID: On Fri, 22 Jul 2016 00:12:17 +0200, Mattias Gaertner wrote: >> What should i do to make this error go away? > >For example: > > {$IF defined(FPC)} > TMemIniFile.Create(IFile); > {$ElseIf CompilerVersion >= 20} {Delphi 2009 = 20..} > TMemIniFile.Create(IFile, TEncoding.UTF8); > {$ELSE} > TMemIniFile.Create(IFile); > {$IFEND} > > That is how I did it (using FPC rather than WINDOWS) and it works just fine. The GUI program now runs on Lazarus instead of Delphi 2007. -- Bo Berglund Developer in Sweden From listbox at martoks-place.de Fri Jul 22 18:07:11 2016 From: listbox at martoks-place.de (Martok) Date: Fri, 22 Jul 2016 18:07:11 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <20160722140225.172aaca1@limapholos.matflo.wg> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> <20160722140225.172aaca1@limapholos.matflo.wg> Message-ID: <70f59b1c-7cb0-28f9-3f23-b2847e28b34e@martoks-place.de> > Maybe you think it is a bug, because you are used to fpgui? I have to agree with Graeme here, this is just needlessly confusing. Which apparently the creator of TDirectoryEdit thought as well, as the property containing the selected directory is correctly called Directory there. I only ever use that or the SelectDirectory() wrapper function, so I've never noticed before how strange that dialog is. > A directory is a file and has a filename. Not necessarily true on all file systems (both are directory entries, but that's about it), and also different from how naming this is treated everywhere else in the LCL. Incidentally, in my opinion on Windows this component also invokes the wrong shell dialog. I believe it should use SHBrowseForFolder (which is explicitly for choosing a Folder) instead displaying a File selection dialog filtered to folders. But at least that's consistent with taking directories as files... Regards, Martok From bo.berglund at gmail.com Fri Jul 22 18:34:11 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Fri, 22 Jul 2016 18:34:11 +0200 Subject: [Lazarus] Transfer between RS232 and TCP/IP Message-ID: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> I have an application which talks to a data collection system via serial comm (RS232). Now the instrumentation has switched to WiFi instead and I need to somehow make a "go-between" program that can channel data between a TCP port on the WiFi network and a regular serial port (on Windows) which the existing application can use. The data into and out of the TCP port is exactly the same as the data previously trasnferred via RS232, in fact behind the scenes on the instrument there is still the serial channel but it s now hooked to WiFi. Is there something in Lazarus/Fpc I can use to create such a glue program? -- Bo Berglund Developer in Sweden From lazarus at kluug.net Fri Jul 22 19:36:13 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Fri, 22 Jul 2016 19:36:13 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <70f59b1c-7cb0-28f9-3f23-b2847e28b34e@martoks-place.de> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> <20160722140225.172aaca1@limapholos.matflo.wg> <70f59b1c-7cb0-28f9-3f23-b2847e28b34e@martoks-place.de> Message-ID: On 22.07.2016 18:07, Martok wrote: > Incidentally, in my opinion on Windows this component also invokes the wrong > shell dialog. I believe it should use SHBrowseForFolder (which is explicitly for > choosing a Folder) instead displaying a File selection dialog filtered to > folders. But at least that's consistent with taking directories as files... If you mean this one http://mantis.freepascal.org/view.php?id=29736 then you are wrong ;) I see that open source projects have a disadvantage that sometimes the users tend to start flaming each other because of peanuts ;) Ondrej From corpsman at web.de Fri Jul 22 19:53:30 2016 From: corpsman at web.de (corpsman at web.de) Date: Fri, 22 Jul 2016 19:53:30 +0200 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> Message-ID: <57925D9A.2050404@web.de> this is a easy task you can simple use my uuart component ( http://corpsman.de/index.php?doc=komponenten/uuart ) within the code there is a wrapper, that can handle TCP connections and Serial Connections ( the example program does this for modbus ). All you have to do, is download Synapse (to support the RS232 Connection) and Download LNet to support the TCP Socket Connection ;) Corpsman On 22.07.2016 18:34, Bo Berglund wrote: > I have an application which talks to a data collection system via > serial comm (RS232). > > Now the instrumentation has switched to WiFi instead and I need to > somehow make a "go-between" program that can channel data between a > TCP port on the WiFi network and a regular serial port (on Windows) > which the existing application can use. > > The data into and out of the TCP port is exactly the same as the data > previously trasnferred via RS232, in fact behind the scenes on the > instrument there is still the serial channel but it s now hooked to > WiFi. > > Is there something in Lazarus/Fpc I can use to create such a glue > program? > > From giuliano.colla at fastwebnet.it Fri Jul 22 19:59:00 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Fri, 22 Jul 2016 19:59:00 +0200 Subject: [Lazarus] LCL-fpGUI widgetset support In-Reply-To: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> References: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> Message-ID: <8e178f98-6bc3-ef88-1ef4-5bdf21a3aef4@fastwebnet.it> Il 20/07/2016 08:16, Graeme Geldenhuys ha scritto: > That is strange. Sorry for the noise. It was a Lazarus/fpcup issue. Nothing to do with fpgui. It shows the same error also with gtk WS. The full story is that I tested fpgui with a Lazarus 1.6 downloaded via fpcup, and for some obscure reasons it turns out that that damn thing when you drop a widget to a form, updates properly the .lfm file, adds the required unit in the uses section of the source file, but it doesn't add e.g. "Button1: TButton;" where appropriate. I tested fpgui again both with a Lazarus 1.4.4 (installed via rpm) and with a Lazarus trunk (installed via svn), and everything works as expected. I put in a form the same widgets you provided in your example, and I got exactly the same result. Did you ever stumble into a similar issue with Lazarus? Some wrong setting in the myriad of options? Thank you for your time, Giuliano From wkitty42 at windstream.net Fri Jul 22 20:06:09 2016 From: wkitty42 at windstream.net (wkitty42 at windstream.net) Date: Fri, 22 Jul 2016 14:06:09 -0400 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> Message-ID: On 07/22/2016 12:34 PM, Bo Berglund wrote: > Is there something in Lazarus/Fpc I can use to create such a glue program? i suppose there is but why reinvent the wheel? we, in the old school BBS world, have had these things for years... consider writing a BBS or a game for a BBS... the fidonet guys developed for different platforms... those platforms had different serial hardware and comms methods... think DEC, PDP, Apple //c, commodore, IBM PCes and clones... the fidonet guys came up with the FOSSIL standard... the FOSSIL driver sits between the serial port and the software... this way the BBS and game writers can worry about their software and not get bogged down with having to learn serial comms for numerous platforms... there's a FOSSIL for this hardware and a FOSSIL for that hardware but the software doesn't care about the hardware as it only talks to the FOSSIL driver and the (what is now known as an) API is the same on the software side of the fence... what the FOSSIL driver talks to on the other side can be anything... it could be serial hardware, parallel hardware, TCP port or even something like wrapping the data within a telnet connection... so FOSSIL... when OS/2 Warp Connect came out, there was a FOSSIL developed specifically to allow BBSes to ride on virtual serial ports... those virtual serial ports were one end of a telnet tunnel... now we had telnet capable BBSes using traditional BBS software like Maximus, Remote Access, QuickBBS and others that spoke FOSSIL... winwhatever came on stronger and many sysops went to winwhatever... it took a long time for any good virtual modem stuffs to come out... at least one developer for the winwhatever platform went a step further than others and has a network-to-virtual-serial-port driver known as NETSERIAL... this allows software that doesn't speak FOSSIL to ride on a virtual serial port... i don't remember if NETSERIAL is just a virtual serial port or if it also emulates a modem... he also has NETFOSS for a FOSSIL version... i think NETSERIAL may be what you are after if you are running on a winwhatever NT-derived platform... -- NOTE: No off-list assistance is given without prior approval. *Please keep mailing list traffic on the list* unless private contact is specifically requested and granted. From lazarus2 at de-brouwerij.be Fri Jul 22 20:33:37 2016 From: lazarus2 at de-brouwerij.be (Koenraad Lelong) Date: Fri, 22 Jul 2016 20:33:37 +0200 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> Message-ID: <58d12847-2e00-b1c3-560f-40efb8023dc0@de-brouwerij.be> Op 22-07-16 om 18:34 schreef Bo Berglund: > I have an application which talks to a data collection system via > serial comm (RS232). > > Now the instrumentation has switched to WiFi instead and I need to > somehow make a "go-between" program that can channel data between a > TCP port on the WiFi network and a regular serial port (on Windows) > which the existing application can use. > > The data into and out of the TCP port is exactly the same as the data > previously trasnferred via RS232, in fact behind the scenes on the > instrument there is still the serial channel but it s now hooked to > WiFi. > > Is there something in Lazarus/Fpc I can use to create such a glue > program? > Hi Bo, Maybe you can have look at socat. It has nothing to do with fpc or lazarus, but could do what you want. Koenraad. From listbox at martoks-place.de Fri Jul 22 22:30:23 2016 From: listbox at martoks-place.de (Martok) Date: Fri, 22 Jul 2016 22:30:23 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> <20160722140225.172aaca1@limapholos.matflo.wg> <70f59b1c-7cb0-28f9-3f23-b2847e28b34e@martoks-place.de> Message-ID: > If you mean this one http://mantis.freepascal.org/view.php?id=29736 then > you are wrong ;) Wtf, MS? Not surprised nobody implemented this since Vista... That being a recent change explains why I had a feeling this "worked" before. > I see that open source projects have a disadvantage that sometimes the > users tend to start flaming each other because of peanuts ;) Please believe me that while I still think this is a Bad Choice With Horrible UX, none of that was meant as a flame. Sorry for coming over a bit aggressive, I may have been a bit ticked off by just how little sense that class design makes to me. But then again it really shouldn't as there are perfectly good wrappers for this that have proper terminology. Regards, Martok From mailinglists at geldenhuys.co.uk Fri Jul 22 23:57:33 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Fri, 22 Jul 2016 22:57:33 +0100 Subject: [Lazarus] LCL-fpGUI widgetset support In-Reply-To: <8e178f98-6bc3-ef88-1ef4-5bdf21a3aef4@fastwebnet.it> References: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> <8e178f98-6bc3-ef88-1ef4-5bdf21a3aef4@fastwebnet.it> Message-ID: Hello Giuliano, Very glad to here you resolved your issue. On 2016-07-22 18:59, Giuliano Colla wrote: > I put in a form the same widgets you provided in your example, > and I got exactly the same result. Fantastic! There are quite a few things that work already. Other than widgets there are various dialogs, Win32 API calls like ShowMessage() etc work too. It's not actually that hard adding widget support. My hope is that somebody would eventually take the reins on this and fully implement it. The TLabel support would also be much welcomed - I struggled with that one. > Did you ever stumble into a similar issue with Lazarus? Some wrong > setting in the myriad of options? Now that you described the issue, I have actually experienced that with Lazarus before (or maybe it could have been CodeTyhpon). It was a few months back. Unfortunately I can't remember what I did to resolve the issue. I normally don't use any fancy scripts, update tools or binary packages (eg: RPM, DEB etc). I simply install FPC using the official binary release. Then use Git to get the latest Lazarus code and do a 'make big ide'. This method has worked for years and I've used it under FreeBSD, Linux, Windows and Haiku (though Lazarus was not supported under Haiku - last time I checked). Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp From mailinglists at geldenhuys.co.uk Sat Jul 23 00:01:17 2016 From: mailinglists at geldenhuys.co.uk (Graeme Geldenhuys) Date: Fri, 22 Jul 2016 23:01:17 +0100 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> Message-ID: <0c058bd7-7f6e-f0ec-b395-4542f8b96755@geldenhuys.co.uk> On 2016-07-22 19:06, wkitty42 at windstream.net wrote: > so FOSSIL... when OS/2 Warp Connect came out, there was a FOSSIL developed > specifically to allow BBSes to ride on virtual serial ports... those virtual > serial ports were one end of a telnet tunnel... now we had telnet capable BBSes > using traditional BBS software like Maximus, Remote Access Ah, all the good memories come flooding back. :-) I still have my various BBS setups archived somewhere on my hard drive. Regards, Graeme From giuliano.colla at fastwebnet.it Sat Jul 23 00:35:01 2016 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Sat, 23 Jul 2016 00:35:01 +0200 Subject: [Lazarus] LCL-fpGUI widgetset support In-Reply-To: References: <62c57928-a325-85dd-ac01-7210e3742807@geldenhuys.co.uk> <8e178f98-6bc3-ef88-1ef4-5bdf21a3aef4@fastwebnet.it> Message-ID: <8747b8c0-cd1a-2f2a-5be1-6b9237558fd5@fastwebnet.it> Il 22/07/2016 23:57, Graeme Geldenhuys ha scritto: >> Did you ever stumble into a similar issue with Lazarus? Some wrong >> >setting in the myriad of options? > Now that you described the issue, I have actually experienced that with > Lazarus before (or maybe it could have been CodeTyhpon). It was a few > months back. Unfortunately I can't remember what I did to resolve the issue. For the record: after struggling a bit, I realized that the IDE editor/codetool didn't have access to the fpc units: it claimed that it couldn't even find the "Classes" unit! "Rescan FPC source directory" did the trick. Now everything works even with fpcup. I wanted to test fpcup, because it provides an installation of both Lazarus and FPC fully isolated from the rest, so that I could play in a sandbox with Lazarus and fpc 3.0.0, without affecting production projects which are based on fpc 2.6.4. I can't promise too much, because I happen to be a bit overcharged, but if I manage to squeeze some time I might attempt to see if I can provide some manpower for the fpgui TLabel. Giuliano -------------- next part -------------- An HTML attachment was scrubbed... URL: From bo.berglund at gmail.com Sat Jul 23 00:57:55 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 23 Jul 2016 00:57:55 +0200 Subject: [Lazarus] Transfer between RS232 and TCP/IP References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> <58d12847-2e00-b1c3-560f-40efb8023dc0@de-brouwerij.be> Message-ID: <9395pb1q6jfp4isb70m1mavhh79jrq0767@4ax.com> On Fri, 22 Jul 2016 20:33:37 +0200, Koenraad Lelong wrote: >Maybe you can have look at socat. It has nothing to do with fpc or >lazarus, but could do what you want. Well, I googled socat and got to totally overwhelmingly large pages with a zillion of possible arguments listed but no simple example like I am after. And it seems like it is Linux centric, but my existing application is on Windows7... -- Bo Berglund Developer in Sweden From bo.berglund at gmail.com Sat Jul 23 01:05:19 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 23 Jul 2016 01:05:19 +0200 Subject: [Lazarus] Transfer between RS232 and TCP/IP References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> Message-ID: <1d95pb1f44vldaasfhr66217msqcacgv78@4ax.com> On Fri, 22 Jul 2016 18:34:11 +0200, Bo Berglund wrote: I might add that I have already created a TCP to TCP mapping utility using the Indy10 component TMapTcpComm. I use this in order to connect to a WiFi network via the Ethernet line from out of reach of the WiFi AP. A Raspberry Pi runs my MapPort program so I can access the WiFi device from my PC at thousands of km away by connecting to the RPi and let it forward to the WiFi device. Now I want to make a similar thing, namely to do a RS232 to TCP mapping utility. But this time I want it to run on Windows rather than Linux. -- Bo Berglund Developer in Sweden From d.ioannidis at nephelae.eu Sat Jul 23 01:07:27 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Sat, 23 Jul 2016 02:07:27 +0300 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> Message-ID: <2468cb72-d851-813d-d0b6-38bb3a1ffb99@nephelae.eu> On 22/7/2016 7:34 μμ, Bo Berglund wrote: > I have an application which talks to a data collection system via > serial comm (RS232). > > Now the instrumentation has switched to WiFi instead and I need to > somehow make a "go-between" program that can channel data between a > TCP port on the WiFi network and a regular serial port (on Windows) > which the existing application can use. > > The data into and out of the TCP port is exactly the same as the data > previously trasnferred via RS232, in fact behind the scenes on the > instrument there is still the serial channel but it s now hooked to > WiFi. > > Is there something in Lazarus/Fpc I can use to create such a glue > program? Hi, you can use IdMappedPortTCP from Indy 10 . regards, -- Dimitrios Chr. Ioannidis From d.ioannidis at nephelae.eu Sat Jul 23 01:08:52 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Sat, 23 Jul 2016 02:08:52 +0300 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: <1d95pb1f44vldaasfhr66217msqcacgv78@4ax.com> References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> <1d95pb1f44vldaasfhr66217msqcacgv78@4ax.com> Message-ID: <610a9508-702e-cda8-c33f-efa5124d0f9e@nephelae.eu> On 23/7/2016 2:05 πμ, Bo Berglund wrote: > On Fri, 22 Jul 2016 18:34:11 +0200, Bo Berglund > wrote: > > I might add that I have already created a TCP to TCP mapping utility > using the Indy10 component TMapTcpComm. > I use this in order to connect to a WiFi network via the Ethernet line > from out of reach of the WiFi AP. A Raspberry Pi runs my MapPort > program so I can access the WiFi device from my PC at thousands of km > away by connecting to the RPi and let it forward to the WiFi device. > > Now I want to make a similar thing, namely to do a RS232 to TCP > mapping utility. But this time I want it to run on Windows rather than > Linux. Ha ha, you posted 2 minutes earlier .... regards, -- Dimitrios Chr. Ioannidis From d.ioannidis at nephelae.eu Sat Jul 23 01:16:42 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Sat, 23 Jul 2016 02:16:42 +0300 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> Message-ID: On 22/7/2016 7:34 μμ, Bo Berglund wrote: > I have an application which talks to a data collection system via > serial comm (RS232). > > Now the instrumentation has switched to WiFi instead and I need to > somehow make a "go-between" program that can channel data between a > TCP port on the WiFi network and a regular serial port (on Windows) > which the existing application can use. > > The data into and out of the TCP port is exactly the same as the data > previously trasnferred via RS232, in fact behind the scenes on the > instrument there is still the serial channel but it s now hooked to > WiFi. > > Is there something in Lazarus/Fpc I can use to create such a glue > program? I used ser2net on debian wheezy to control a serial device connected to that box a while go. You can try it ... regards, -- Dimitrios Chr. Ioannidis From d.ioannidis at nephelae.eu Sat Jul 23 01:23:08 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Sat, 23 Jul 2016 02:23:08 +0300 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: <1d95pb1f44vldaasfhr66217msqcacgv78@4ax.com> References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> <1d95pb1f44vldaasfhr66217msqcacgv78@4ax.com> Message-ID: On 23/7/2016 2:05 πμ, Bo Berglund wrote: > Now I want to make a similar thing, namely to do a RS232 to TCP > mapping utility. But this time I want it to run on Windows rather than > Linux. Ok, it's late and didn't read all your posts .... For windows try com2tcp https://sourceforge.net/projects/com0com/files/com2tcp/1.3.0.0/com2tcp-1.3.0.0-386.zip/download example : com2tcp --ignore-dsr \\.\COM25 192.168.50.66 3006 From d.ioannidis at nephelae.eu Sat Jul 23 01:26:07 2016 From: d.ioannidis at nephelae.eu (Dimitrios Chr. Ioannidis) Date: Sat, 23 Jul 2016 02:26:07 +0300 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> <1d95pb1f44vldaasfhr66217msqcacgv78@4ax.com> Message-ID: On 23/7/2016 2:23 πμ, Dimitrios Chr. Ioannidis wrote: > On 23/7/2016 2:05 πμ, Bo Berglund wrote: >> Now I want to make a similar thing, namely to do a RS232 to TCP >> mapping utility. But this time I want it to run on Windows rather than >> Linux. > > Ok, it's late and didn't read all your posts .... > > For windows try > > com2tcp > > https://sourceforge.net/projects/com0com/files/com2tcp/1.3.0.0/com2tcp-1.3.0.0-386.zip/download > > > example : com2tcp --ignore-dsr \\.\COM25 192.168.50.66 3006 Forgot that you need to map / create first the com25 with the com0com so : https://sourceforge.net/projects/com0com/files/com0com/2.2.2.0/com0com-2.2.2.0-i386-fre.zip/download example : com0com pair com3 - com25 and then run the com2tcp ... It used to work on XP don't know for windows 7 .... regards, -- Dimitrios Chr. Ioannidis From lazarus at kluug.net Sat Jul 23 10:11:33 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Sat, 23 Jul 2016 10:11:33 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> <20160722140225.172aaca1@limapholos.matflo.wg> <70f59b1c-7cb0-28f9-3f23-b2847e28b34e@martoks-place.de> Message-ID: <430202a3-bf89-1d12-b2bb-b6c20eea6b8f@kluug.net> On 22.07.2016 22:30, Martok wrote: >> If you mean this one http://mantis.freepascal.org/view.php?id=29736 then >> you are wrong ;) > Wtf, MS? Not surprised nobody implemented this since Vista... > > That being a recent change explains why I had a feeling this "worked" before. Try the ofOldStyleDialog option. >> I see that open source projects have a disadvantage that sometimes the >> users tend to start flaming each other because of peanuts ;) > Please believe me that while I still think this is a Bad Choice With Horrible > UX, none of that was meant as a flame. > > Sorry for coming over a bit aggressive, I may have been a bit ticked off by just > how little sense that class design makes to me. But then again it really > shouldn't as there are perfectly good wrappers for this that have proper > terminology. No need to apologize, I didn't mean it against you (sorry if it looked like it). I just wrote it in the same email. Ondrej From wkitty42 at windstream.net Sat Jul 23 10:25:48 2016 From: wkitty42 at windstream.net (wkitty42 at windstream.net) Date: Sat, 23 Jul 2016 04:25:48 -0400 Subject: [Lazarus] Transfer between RS232 and TCP/IP In-Reply-To: <0c058bd7-7f6e-f0ec-b395-4542f8b96755@geldenhuys.co.uk> References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> <0c058bd7-7f6e-f0ec-b395-4542f8b96755@geldenhuys.co.uk> Message-ID: <6eeaa79a-e031-105d-c02c-54422d3c311d@windstream.net> On 07/22/2016 06:01 PM, Graeme Geldenhuys wrote: > On 2016-07-22 19:06, wkitty42 at windstream.net wrote: >> so FOSSIL... when OS/2 Warp Connect came out, there was a FOSSIL developed >> specifically to allow BBSes to ride on virtual serial ports... those virtual >> serial ports were one end of a telnet tunnel... now we had telnet capable BBSes >> using traditional BBS software like Maximus, Remote Access > > Ah, all the good memories come flooding back. :-) I still have my > various BBS setups archived somewhere on my hard drive. hehehe... i'm still living those memories, brother... RA/FD/FE on eCS, mystic on vista, mystic on linux, synchronet on linux and then there's the several sysop editors, mail tossers, and mailers for several fidonet point systems :) /OT -- NOTE: No off-list assistance is given without prior approval. *Please keep mailing list traffic on the list* unless private contact is specifically requested and granted. From bo.berglund at gmail.com Sat Jul 23 10:38:16 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 23 Jul 2016 10:38:16 +0200 Subject: [Lazarus] Transfer between RS232 and TCP/IP References: <0ei4pbh23kogkvnl4jp8ijlcdhm5cvqrsu@4ax.com> Message-ID: <6ta6pbtqu1ih0jnc5qspk399ukc7ktshnh@4ax.com> On Sat, 23 Jul 2016 02:16:42 +0300, "Dimitrios Chr. Ioannidis" wrote: >On 22/7/2016 7:34 ??, Bo Berglund wrote: >> I have an application which talks to a data collection system via >> serial comm (RS232). >> >> Now the instrumentation has switched to WiFi instead and I need to >> somehow make a "go-between" program that can channel data between a >> TCP port on the WiFi network and a regular serial port (on Windows) >> which the existing application can use. >> >> The data into and out of the TCP port is exactly the same as the data >> previously trasnferred via RS232, in fact behind the scenes on the >> instrument there is still the serial channel but it s now hooked to >> WiFi. >> >> Is there something in Lazarus/Fpc I can use to create such a glue >> program? > >I used ser2net on debian wheezy to control a serial device connected to >that box a while go. > >You can try it ... The problem is opposite. I have a windows application which only understands RS232 and a device that used to be RS232 but now instead has a WiFi access point to connect to whereafter the same data stream is available via a TCP port on the device. Cannot change the application so I need a utility that can channel binary data between the TCP port and a regular com port. Of course not having to bridge two regular hardware ports in order to do this (using a virual com port) would be good but not necessary. Furthermore after checking out the suggestions posted I really would like to have more control, i.e. I want a source solution for Delphi or Lazarus (prefer Lazarus) on Windows. -- Bo Berglund Developer in Sweden From listbox at martoks-place.de Sun Jul 24 02:54:40 2016 From: listbox at martoks-place.de (Martok) Date: Sun, 24 Jul 2016 02:54:40 +0200 Subject: [Lazarus] Compile conditionals from Delphi do not work in Laz 1.6... In-Reply-To: <430202a3-bf89-1d12-b2bb-b6c20eea6b8f@kluug.net> References: <7be2pb54tdtn45r5jjp41a5c41u6ldo886@4ax.com> <20160722001301.43e2b67f@limapholos.matflo.wg> <20160722121749.3e7f8352@limapholos.matflo.wg> <4cc0a9e6-89fc-9ea9-1b3a-654b7ecc8268@geldenhuys.co.uk> <823fd276-00b1-19b8-2e26-1cfdf3790874@geldenhuys.co.uk> <20160722140225.172aaca1@limapholos.matflo.wg> <70f59b1c-7cb0-28f9-3f23-b2847e28b34e@martoks-place.de> <430202a3-bf89-1d12-b2bb-b6c20eea6b8f@kluug.net> Message-ID: <48f7c10b-1a84-c56d-c113-2c3a83a4bcea@martoks-place.de> Am 23.07.2016 um 10:11 schrieb Ondrej Pokorny: > Try the ofOldStyleDialog option. Almost. Needs two little changes, I've submitted a patch at . Let's continue over there. > No need to apologize, I didn't mean it against you (sorry if it looked > like it). I just wrote it in the same email. Alright then :) Regards, Martok From terry at haimann.us Mon Jul 25 00:49:53 2016 From: terry at haimann.us (Terry A. Haimann) Date: Sun, 24 Jul 2016 17:49:53 -0500 Subject: [Lazarus] Lazarus, FreePascal and chat Message-ID: <1469400593.26399.3.camel@Hercules> Has anyone ever written a lite chat server and client in FreePascal? I would be looking for something that could handle 2-12 clients is all. From alfred at consulab.nl Mon Jul 25 08:56:26 2016 From: alfred at consulab.nl (Alfred) Date: Mon, 25 Jul 2016 06:56:26 +0000 Subject: [Lazarus] Lazarus, FreePascal and chat In-Reply-To: <1469400593.26399.3.camel@Hercules> Message-ID: The mORMot ? http://synopse.info/fossil/wiki?name=SQLite3+Framework Chat sample based on bi-directional websockets. https://github.com/synopse/mORMot/tree/master/SQLite3/Samples/31%20-%20WebSockets Client: https://github.com/synopse/mORMot/blob/master/SQLite3/Samples/31%20-%20WebSockets/Project31ChatClient.dpr Server: https://github.com/synopse/mORMot/blob/master/SQLite3/Samples/31%20-%20WebSockets/Project31ChatServer.dpr Documentation: http://synopse.info/files/html/Synopse%20mORMot%20Framework%20SAD%201.18.html#GG_PUBLISHSUBSCRIBECHAT_EMF From alfred at consulab.nl Mon Jul 25 09:55:27 2016 From: alfred at consulab.nl (Alfred) Date: Mon, 25 Jul 2016 07:55:27 +0000 Subject: [Lazarus] Lazarus, FreePascal and chat In-Reply-To: <1469400593.26399.3.camel@Hercules> Message-ID: In addition to previous messsage. And to make life a bit easier. https://drive.google.com/file/d/0B96fg3TpL5RDMXFNbkZuT0JHZ1U/view?usp=sharing The archive holds a complete client and server for Lazarus with the mORMot, based on Sample 31. Just unpack it (replace files) in the Sample 31 directory and you should be ready to go ! From leledumbo_cool at yahoo.co.id Tue Jul 26 04:24:27 2016 From: leledumbo_cool at yahoo.co.id (leledumbo) Date: Mon, 25 Jul 2016 19:24:27 -0700 (MST) Subject: [Lazarus] Lazarus, FreePascal and chat In-Reply-To: <1469400593.26399.3.camel@Hercules> References: <1469400593.26399.3.camel@Hercules> Message-ID: <1469499867455-4049202.post@n3.nabble.com> > Has anyone ever written a lite chat server and client in FreePascal? Not really a full client-server chat app, but should serve as a strong base: * Single GUI app that can work as both client and server: http://svn.freepascal.org/svn/fpcprojects/lnet/trunk/examples/visual/tcpudp/ * Separated console client and server: http://svn.freepascal.org/svn/fpcprojects/lnet/trunk/examples/console/ltcp/lclient.pp http://svn.freepascal.org/svn/fpcprojects/lnet/trunk/examples/console/ltcp/lserver.pp Those are lNet examples and meant to be used in desktop applications. For web applications, BrookFramework has intended demo: https://github.com/silvioprog/brookframework/tree/master/demos/chat -- View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-Lazarus-FreePascal-and-chat-tp4049199p4049202.html Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. From markbass72 at zoho.com Tue Jul 26 09:36:24 2016 From: markbass72 at zoho.com (Marcello) Date: Tue, 26 Jul 2016 09:36:24 +0200 Subject: [Lazarus] Google Calendar APIs In-Reply-To: References: <29ec77df-f925-293c-9563-c808f535d51e@zoho.com> <83b9b30b-df8c-0a8f-9959-f714a672bd67@zoho.com> Message-ID: On 21/07/2016 21:42, Michael Van Canneyt wrote: > > Memory leaks have been fixed meanwhile, so it should work with the > latest source ? > > Michael. I was compiling with fpc 3.0.0, this aren't latest source. Looking here http://bugs.freepascal.org/view.php?id=29487 I can find Fixed in Version => 3.1.1 Target Version => 3.0.2 This mean I can use fixes or trunk? Thanks Marcello From michael at freepascal.org Tue Jul 26 09:46:21 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Tue, 26 Jul 2016 09:46:21 +0200 (CEST) Subject: [Lazarus] Google Calendar APIs In-Reply-To: References: <29ec77df-f925-293c-9563-c808f535d51e@zoho.com> <83b9b30b-df8c-0a8f-9959-f714a672bd67@zoho.com> Message-ID: On Tue, 26 Jul 2016, Marcello wrote: > On 21/07/2016 21:42, Michael Van Canneyt wrote: >> >> Memory leaks have been fixed meanwhile, so it should work with the >> latest source ? >> >> Michael. > > I was compiling with fpc 3.0.0, this aren't latest source. > > Looking here http://bugs.freepascal.org/view.php?id=29487 > I can find > > Fixed in Version => 3.1.1 > Target Version => 3.0.2 > > This mean I can use fixes or trunk? trunk, to be sure. Michael. From markbass72 at zoho.com Tue Jul 26 11:38:43 2016 From: markbass72 at zoho.com (Marcello) Date: Tue, 26 Jul 2016 11:38:43 +0200 Subject: [Lazarus] Google Calendar APIs In-Reply-To: References: <29ec77df-f925-293c-9563-c808f535d51e@zoho.com> <83b9b30b-df8c-0a8f-9959-f714a672bd67@zoho.com> Message-ID: <755f5e75-1bd6-d1e4-d464-20cef907201b@zoho.com> On 26/07/2016 09:46, Michael Van Canneyt wrote: > > trunk, to be sure. > > Michael. Now I'm using fpc trunk but there's something wrong. To try with latest source, I've installed lazarus 1.6 and, in another folder (using fpcup), the fpc trunk. After this I configured lazarus to use the fpc trunk compiler (and fpc-source-folder-option points to correct folder). calendardemo is compiled without errors, but simply clicking on "fetch calendars" I got following error. Any suggestion? Thanks Marcello Basso C:\lazarus\components\googleapis\demo\calendar>calendardemo.exe TApplication.HandleException Cannot convert data from object value Stack trace: $0000000100149857 $000000010014C51C $000000010014C88F $000000010014B20A $000000010018786A $0000000100187E8C $0000000100189FF2 $000000010018A276 $0000000100181685 $0000000100180D86 $0000000100185960 $000000010002E811 BFETCHCALENDARSCLICK, line 203 of frmmain.pp $0000000100127627 CLICK, line 2736 of include/control.inc $0000000100140689 CLICK, line 54 of include/buttoncontrol.inc $0000000100140D7A CLICK, line 169 of include/buttons.inc $0000000100140565 WMDEFAULTCLICKED, line 20 of include/buttoncontrol.inc $000000010000DEB6 Heap dump by heaptrc unit 159046 memory blocks allocated : 19189753/19198024 159046 memory blocks freed : 19189753/19198024 0 unfreed memory blocks : 0 True heap size : 229376 (192 used in System startup) True free heap : 229184 From michael at freepascal.org Tue Jul 26 11:53:07 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Tue, 26 Jul 2016 11:53:07 +0200 (CEST) Subject: [Lazarus] Google Calendar APIs In-Reply-To: <755f5e75-1bd6-d1e4-d464-20cef907201b@zoho.com> References: <29ec77df-f925-293c-9563-c808f535d51e@zoho.com> <83b9b30b-df8c-0a8f-9959-f714a672bd67@zoho.com> <755f5e75-1bd6-d1e4-d464-20cef907201b@zoho.com> Message-ID: On Tue, 26 Jul 2016, Marcello wrote: > On 26/07/2016 09:46, Michael Van Canneyt wrote: >> >> trunk, to be sure. >> >> Michael. > > > Now I'm using fpc trunk but there's something wrong. > > To try with latest source, I've installed lazarus 1.6 and, in another > folder (using fpcup), the fpc trunk. > After this I configured lazarus to use the fpc trunk compiler (and > fpc-source-folder-option points to correct folder). > > calendardemo is compiled without errors, but simply clicking on "fetch > calendars" I got following error. > > Any suggestion? No. This needs to be debugged. Michael. From wv99999 at gmail.com Wed Jul 27 11:39:55 2016 From: wv99999 at gmail.com (Wolf) Date: Wed, 27 Jul 2016 21:39:55 +1200 Subject: [Lazarus] Shift returns empty set in MouseWheel events Message-ID: <5798816B.4020009@gmail.com> For any of these MouseWheel handlers procedure TForm1.FormMouseWheelDown(Sender: TObject; Shift: TShiftState; MousePos: TPoint; var Handled: Boolean); procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean); procedure TForm1.FormMouseWheelUp(Sender: TObject; Shift: TShiftState; MousePos: TPoint; var Handled: Boolean); the variable Shift: TShiftState returns an empty set. Is that intentional, or is that a bug? If intentional, how can I restrict the MouseWheel event to ? Other mouse events, such as procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); return ssMiddle as a member of the TShiftState set when the MouseWheel is pressed and can be tested for using if ssMiddle in Shift then . . . How can I determine whether the MouseWheel was pressed or not? My operating system: Kubuntu 16.04 Lazarus version: 1.6+dfsg-1 dated 2016-03-01 FPC Version: 3.0.0 SVN revision: Debian Package 1.6+dfsg-1 x86_64-linux-qt Thank you Wolf From lazarus at kluug.net Wed Jul 27 11:46:55 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Wed, 27 Jul 2016 11:46:55 +0200 Subject: [Lazarus] Shift returns empty set in MouseWheel events In-Reply-To: <5798816B.4020009@gmail.com> References: <5798816B.4020009@gmail.com> Message-ID: <626aaa8c-44e8-0e45-e9b2-a7c5c873ec5b@kluug.net> On 27.07.2016 11:39, Wolf wrote: > For any of these MouseWheel handlers > the variable Shift: TShiftState returns an empty set. IMO bug. How does Delphi behave? Ondrej From gaborboros at yahoo.com Wed Jul 27 12:30:29 2016 From: gaborboros at yahoo.com (Gabor Boros) Date: Wed, 27 Jul 2016 12:30:29 +0200 Subject: [Lazarus] Text height calculation Linux-Qt vs Windows Message-ID: <88901ed3-e166-c885-b854-057edaed87f5@yahoo.com> Hi All, I need to calculate the height of the displayed text line by line. But got different result than whole text height. With Windows the two result is same with Linux-Qt not. I have a label with the next caption: 1 2 3 4 5 6 See the calculation code below. With Linux-Qt H1 differs from H2 for example with Open Sans Regular 9. And the autosized height of the above label on Windows is 102 and with Linux-Qt 97. Is this normal or a Linux-Qt bug? procedure TForm1.FormCreate(Sender: TObject); var R:TRect; H1:Integer; H2:Integer=0; i:Integer; begin R:=Rect(0,0,0,0); DrawText(Label1.Canvas.Handle,PChar(Label1.Caption),Length(Label1.Caption),R,DT_CALCRECT); H1:=R.Bottom; Memo1.Text:=Label1.Caption; for i:=0 to Memo1.Lines.Count-1 do begin R:=Rect(0,0,0,0); DrawText(Label1.Canvas.Handle,PChar(Memo1.Lines[i]),Length(Memo1.Lines[i]),R,DT_CALCRECT); Inc(H2,R.Bottom); end; if H1<>H2 then Beep; end; Gabor From vojtech.cihak at atlas.cz Wed Jul 27 14:36:11 2016 From: vojtech.cihak at atlas.cz (=?utf-8?q?Vojt=C4=9Bch_=C4=8Cih=C3=A1k?=) Date: Wed, 27 Jul 2016 14:36:11 +0200 Subject: [Lazarus] =?utf-8?q?Shift_returns_empty_set_in_MouseWheel_events?= In-Reply-To: 0000000060b100043f5400e6502a References: 0000000060b100043f5400e6502a Message-ID: <20160727143611.67E34ADA@atlas.cz> Hi,   IMO it is correct. OnMouseWheelxxx are events for rolling the mouse wheel, therefore the ssMiddle cannot be in Shift. If you need to detect if Middle button is pressed, use OnMouseDown/OnMouseUp and test "if Mouse=mbMiddle then ..." Also, ssMiddle appears in Shift in OnMouseDown/OnMouseUp.   V. ______________________________________________________________ > Od: Wolf > Komu: lazarus at lists.lazarus-ide.org > Datum: 27.07.2016 11:39 > Předmět: [Lazarus] Shift returns empty set in MouseWheel events > For any of these MouseWheel handlers procedure TForm1.FormMouseWheelDown(Sender: TObject; Shift: TShiftState;   MousePos: TPoint; var Handled: Boolean); procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState;   WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean); procedure TForm1.FormMouseWheelUp(Sender: TObject; Shift: TShiftState;   MousePos: TPoint; var Handled: Boolean); the variable Shift: TShiftState returns an empty set. Is that intentional, or is that a bug? If intentional, how can I restrict the MouseWheel event to ? Other mouse events, such as procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); return ssMiddle as a member of the TShiftState set when the MouseWheel is pressed  and can be tested for using if ssMiddle in Shift then . . . How can I determine whether the MouseWheel was pressed or not? My operating system: Kubuntu 16.04 Lazarus version: 1.6+dfsg-1 dated 2016-03-01 FPC Version: 3.0.0 SVN revision: Debian Package 1.6+dfsg-1 x86_64-linux-qt Thank you Wolf -- _______________________________________________ Lazarus mailing list Lazarus at lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus -------------- next part -------------- An HTML attachment was scrubbed... URL: From lazarus at kluug.net Wed Jul 27 14:56:29 2016 From: lazarus at kluug.net (Ondrej Pokorny) Date: Wed, 27 Jul 2016 14:56:29 +0200 Subject: [Lazarus] Shift returns empty set in MouseWheel events In-Reply-To: <20160727143611.67E34ADA@atlas.cz> References: <20160727143611.67E34ADA@atlas.cz> Message-ID: <510f41f8-9c3f-221e-b1f9-7d9e80799ec7@kluug.net> On 27.07.2016 14:36, Vojtěch Čihák wrote: > > Hi, > > IMO it is correct. OnMouseWheelxxx are events for rolling the mouse > wheel, therefore the ssMiddle cannot be in Shift. > > If you need to detect if Middle button is pressed, use > OnMouseDown/OnMouseUp and test "if Mouse=mbMiddle then ..." > > Also, ssMiddle appears in Shift in OnMouseDown/OnMouseUp. > You are not correct. You can scroll the mouse wheel if it is released or pressed. So for me a valid feature request for the distinction. The OnMouseMove event gets valid Shift states as well. Btw. please use a mail client that supports "In-Reply-To" and "References" headers. Your answers are registered always as a new thread. See the recent discussion with Denis Kozlov on fpc-devel list, thread(s) "NowUTC in FPC". Ondrej -------------- next part -------------- An HTML attachment was scrubbed... URL: From sandro.cumerlato at gmail.com Wed Jul 27 18:56:30 2016 From: sandro.cumerlato at gmail.com (Sandro Cumerlato) Date: Wed, 27 Jul 2016 18:56:30 +0200 Subject: [Lazarus] TCheckListBox property OnSelectionChange not published Message-ID: Hello, property OnSelectionChange is not available for component TCheckListBox. Please review attached patch and apply if OK. Thank you in advance. Sandro Cumerlato -------------- next part -------------- Index: lcl/checklst.pas =================================================================== --- lcl/checklst.pas (revision 52752) +++ lcl/checklst.pas (working copy) @@ -126,6 +126,7 @@ property OnMouseWheelDown; property OnMouseWheelUp; property OnResize; + property OnSelectionChange; property OnShowHint; property OnStartDrag; property OnUTF8KeyPress; From wkitty42 at windstream.net Wed Jul 27 20:07:49 2016 From: wkitty42 at windstream.net (wkitty42 at windstream.net) Date: Wed, 27 Jul 2016 14:07:49 -0400 Subject: [Lazarus] Shift returns empty set in MouseWheel events In-Reply-To: <510f41f8-9c3f-221e-b1f9-7d9e80799ec7@kluug.net> References: <20160727143611.67E34ADA@atlas.cz> <510f41f8-9c3f-221e-b1f9-7d9e80799ec7@kluug.net> Message-ID: <8cae0a05-e3f1-69dd-4723-63bde5a6737b@windstream.net> On 07/27/2016 08:56 AM, Ondrej Pokorny wrote: [...] > Btw. please use a mail client that supports "In-Reply-To" and "References" > headers. Your answers are registered always as a new thread. See the recent > discussion with Denis Kozlov on fpc-devel list, thread(s) "NowUTC in FPC". FWIW: his client does appear to support those headers... From: =?utf-8?q?Vojt=C4=9Bch_=C4=8Cih=C3=A1k?= References: 0000000060b100043f5400e6502a In-Reply-To: 0000000060b100043f5400e6502a X-Mailer: Centrum Email 5.3 X-Priority: 3 X-Original-From: vojtech.cihak at atlas.cz MIME-Version: 1.0 Message-Id: <20160727143611.67E34ADA at atlas.cz> however, they do not appear to be the ones from the original post by wolf... To: lazarus at lists.lazarus-ide.org From: Wolf Message-ID: <5798816B.4020009 at gmail.com> Date: Wed, 27 Jul 2016 21:39:55 +1200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 Subject: [Lazarus] Shift returns empty set in MouseWheel events -- NOTE: No off-list assistance is given without prior approval. *Please keep mailing list traffic on the list* unless private contact is specifically requested and granted. From parmaja at gmail.com Wed Jul 27 20:18:06 2016 From: parmaja at gmail.com (Zaher Dirkey) Date: Wed, 27 Jul 2016 21:18:06 +0300 Subject: [Lazarus] make TSynPythonSyn.GetKeywordIdentifiers public Message-ID: Would you please make SynHighlighterPython\TSynPythonSyn.GetKeywordIdentifiers into public, so i can add it to my AutoComplete Thanks in advance. -- I am using last revision of Lazarus, FPC ​3.0 on Windows ​8.1 -------------- next part -------------- An HTML attachment was scrubbed... URL: From parmaja at gmail.com Wed Jul 27 21:44:58 2016 From: parmaja at gmail.com (Zaher Dirkey) Date: Wed, 27 Jul 2016 22:44:58 +0300 Subject: [Lazarus] TSynPythonSyn.GetKeywordIdentifiers public Message-ID: Would you please make SynHighlighterPython\TSynPythonSyn.GetKeywordIdentifiers into public, so i can add it to my AutoComplete -- I am using last revision of Lazarus, FPC 3.0 on Windows8.1 Best Regards Zaher Dirkey -------------- next part -------------- An HTML attachment was scrubbed... URL: From michael at freepascal.org Wed Jul 27 22:16:23 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Wed, 27 Jul 2016 22:16:23 +0200 (CEST) Subject: [Lazarus] Conditional dependencies on packages ? Message-ID: Hi, How can I make (if at all possible) package dependencies conditional ? Specifically: Depending on a compiler define, a program will depend on the LCL or not. Michael. From skalogryz.lists at gmail.com Wed Jul 27 22:43:33 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Wed, 27 Jul 2016 16:43:33 -0400 Subject: [Lazarus] Package physical location (directory) Message-ID: Hi, How a package (first-time installed) could know its physical location? Specifically the physical location of .lpk file. The path is needed for a package that depends on external configuration/template files. It would be nice, if the package could find the external files automatically, rather than asking the user to point to the package directory. Having these initial configuration/template files as constants in the code is undesirable from maintenance point of view. thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From vfclists at gmail.com Thu Jul 28 08:50:46 2016 From: vfclists at gmail.com (vfclists .) Date: Thu, 28 Jul 2016 07:50:46 +0100 Subject: [Lazarus] I need TTimer (or equivalent) in a CLI program. In-Reply-To: References: <383b6fa3-d301-0b3a-f419-b74314ffad9c@ziesig.org> Message-ID: On 20 July 2016 at 22:26, Michael Van Canneyt wrote: > > > On Wed, 20 Jul 2016, Donald Ziesig wrote: > > On 07/20/2016 05:04 PM, Donald Ziesig wrote: >> >>> I am writing a command line program that will be started as root from >>> /etc/init.d. (Raspberry PI that will not be connected to the internet.) >>> >>> This program requires TTimer, which seems to be a part of LCL and gives >>> me missing units at compile time. >>> >>> To try to get around LCL, I derived a timer from TCustomTimer. >>> Unfortunately, this pulls in TWidgetSet (also part of LCL but without the >>> missing units) and I get run time error 211 since TWidgetSet is abstract. >>> >>> Is there any timer-like component available without bringing in LCL? >>> >>> >>> Thanks, >>> >>> >>> Don Ziesig >>> >>> >>> OOPS, I forgot to mention, I found TFPTimer, but it does not implement >> the OnTimerStart and OnTimerStop events which I need as well. Now that I >> am thinking about it, perhaps I can derive something from that that >> implements those event callbacks. >> > > A patch for this will certainly be accepted. > > Michael. > > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus > Isn't the NoGUI widget set useful in this instance? -- Frank Church ======================= http://devblog.brahmancreations.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From nc-gaertnma at netcologne.de Thu Jul 28 09:51:59 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 28 Jul 2016 09:51:59 +0200 Subject: [Lazarus] Conditional dependencies on packages ? In-Reply-To: References: Message-ID: <20160728095159.7e93a5e3@limapholos.matflo.wg> On Wed, 27 Jul 2016 22:16:23 +0200 (CEST) Michael Van Canneyt wrote: > Hi, > > How can I make (if at all possible) package dependencies conditional ? > > Specifically: > Depending on a compiler define, a program will depend on the LCL or not. Not yet implemented. Only units can be loaded conditionally. Mattias From nc-gaertnma at netcologne.de Thu Jul 28 09:53:37 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 28 Jul 2016 09:53:37 +0200 Subject: [Lazarus] Package physical location (directory) In-Reply-To: References: Message-ID: <20160728095337.5f15d0f3@limapholos.matflo.wg> On Wed, 27 Jul 2016 16:43:33 -0400 Dmitry Boyarintsev wrote: > Hi, > > How a package (first-time installed) could know its physical location? > Specifically the physical location of .lpk file. > > The path is needed for a package that depends on external > configuration/template files. > It would be nice, if the package could find the external files > automatically, rather than asking the user to point to the package > directory. > > Having these initial configuration/template files as constants in the code > is undesirable from maintenance point of view. Do you mean, how can a package installed in the IDE find its lpk? Mattias From nc-gaertnma at netcologne.de Thu Jul 28 09:56:56 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 28 Jul 2016 09:56:56 +0200 Subject: [Lazarus] TSynPythonSyn.GetKeywordIdentifiers public In-Reply-To: References: Message-ID: <20160728095656.1cc94696@limapholos.matflo.wg> On Wed, 27 Jul 2016 22:44:58 +0300 Zaher Dirkey wrote: > Would you please make > SynHighlighterPython\TSynPythonSyn.GetKeywordIdentifiers into public, so i > can add it to my AutoComplete Done. Mattias From michael at freepascal.org Thu Jul 28 10:02:45 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Thu, 28 Jul 2016 10:02:45 +0200 (CEST) Subject: [Lazarus] Conditional dependencies on packages ? In-Reply-To: <20160728095159.7e93a5e3@limapholos.matflo.wg> References: <20160728095159.7e93a5e3@limapholos.matflo.wg> Message-ID: On Thu, 28 Jul 2016, Mattias Gaertner wrote: > On Wed, 27 Jul 2016 22:16:23 +0200 (CEST) > Michael Van Canneyt wrote: > >> Hi, >> >> How can I make (if at all possible) package dependencies conditional ? >> >> Specifically: >> Depending on a compiler define, a program will depend on the LCL or not. > > Not yet implemented. I notice the 'yet', may I assume this can/is/will be planned ? > Only units can be loaded conditionally. Indeed, I don't need packages for that :-) Michael. From nc-gaertnma at netcologne.de Thu Jul 28 10:24:29 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 28 Jul 2016 10:24:29 +0200 Subject: [Lazarus] Conditional dependencies on packages ? In-Reply-To: References: <20160728095159.7e93a5e3@limapholos.matflo.wg> Message-ID: <20160728102429.0c7832d4@limapholos.matflo.wg> On Thu, 28 Jul 2016 10:02:45 +0200 (CEST) Michael Van Canneyt wrote: >[...] > > Not yet implemented. > > I notice the 'yet', may I assume this can/is/will be planned ? Yes. Planned since a long time, so don't expect anything soon. Not sure about the details, because it can easily create hen-egg problems. Mattias From michael at freepascal.org Thu Jul 28 10:43:16 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Thu, 28 Jul 2016 10:43:16 +0200 (CEST) Subject: [Lazarus] Conditional dependencies on packages ? In-Reply-To: <20160728102429.0c7832d4@limapholos.matflo.wg> References: <20160728095159.7e93a5e3@limapholos.matflo.wg> <20160728102429.0c7832d4@limapholos.matflo.wg> Message-ID: On Thu, 28 Jul 2016, Mattias Gaertner wrote: > On Thu, 28 Jul 2016 10:02:45 +0200 (CEST) > Michael Van Canneyt wrote: > >> [...] >> > Not yet implemented. >> >> I notice the 'yet', may I assume this can/is/will be planned ? > > Yes. Planned since a long time, so don't expect anything soon. > Not sure about the details, because it can easily create hen-egg > problems. I'm a rooster, so not overly worried about hen-egg problems ;-) Michael. From michael at freepascal.org Thu Jul 28 10:43:16 2016 From: michael at freepascal.org (Michael Van Canneyt) Date: Thu, 28 Jul 2016 10:43:16 +0200 (CEST) Subject: [Lazarus] Conditional dependencies on packages ? In-Reply-To: <20160728102429.0c7832d4@limapholos.matflo.wg> References: <20160728095159.7e93a5e3@limapholos.matflo.wg> <20160728102429.0c7832d4@limapholos.matflo.wg> Message-ID: On Thu, 28 Jul 2016, Mattias Gaertner wrote: > On Thu, 28 Jul 2016 10:02:45 +0200 (CEST) > Michael Van Canneyt wrote: > >> [...] >> > Not yet implemented. >> >> I notice the 'yet', may I assume this can/is/will be planned ? > > Yes. Planned since a long time, so don't expect anything soon. > Not sure about the details, because it can easily create hen-egg > problems. I'm a rooster, so not overly worried about hen-egg problems ;-) Michael. From fluisgirardi at gmail.com Thu Jul 28 13:47:56 2016 From: fluisgirardi at gmail.com (Fabio Luis Girardi) Date: Thu, 28 Jul 2016 08:47:56 -0300 Subject: [Lazarus] Package physical location (directory) In-Reply-To: <20160728095337.5f15d0f3@limapholos.matflo.wg> References: <20160728095337.5f15d0f3@limapholos.matflo.wg> Message-ID: I don't know if this applies to you, but, If you package depends of some packages that is distributed together with your package, Lazarus has a way to store the path of your package dependency. The best regards, Fabio 2016-07-28 4:53 GMT-03:00 Mattias Gaertner : > On Wed, 27 Jul 2016 16:43:33 -0400 > Dmitry Boyarintsev wrote: > > > Hi, > > > > How a package (first-time installed) could know its physical location? > > Specifically the physical location of .lpk file. > > > > The path is needed for a package that depends on external > > configuration/template files. > > It would be nice, if the package could find the external files > > automatically, rather than asking the user to point to the package > > directory. > > > > Having these initial configuration/template files as constants in the > code > > is undesirable from maintenance point of view. > > Do you mean, how can a package installed in the IDE find its lpk? > > Mattias > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus > -- The best regards, Fabio Luis Girardi PascalSCADA Project http://sourceforge.net/projects/pascalscada http://www.pascalscada.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From fluisgirardi at gmail.com Thu Jul 28 13:47:56 2016 From: fluisgirardi at gmail.com (Fabio Luis Girardi) Date: Thu, 28 Jul 2016 08:47:56 -0300 Subject: [Lazarus] Package physical location (directory) In-Reply-To: <20160728095337.5f15d0f3@limapholos.matflo.wg> References: <20160728095337.5f15d0f3@limapholos.matflo.wg> Message-ID: I don't know if this applies to you, but, If you package depends of some packages that is distributed together with your package, Lazarus has a way to store the path of your package dependency. The best regards, Fabio 2016-07-28 4:53 GMT-03:00 Mattias Gaertner : > On Wed, 27 Jul 2016 16:43:33 -0400 > Dmitry Boyarintsev wrote: > > > Hi, > > > > How a package (first-time installed) could know its physical location? > > Specifically the physical location of .lpk file. > > > > The path is needed for a package that depends on external > > configuration/template files. > > It would be nice, if the package could find the external files > > automatically, rather than asking the user to point to the package > > directory. > > > > Having these initial configuration/template files as constants in the > code > > is undesirable from maintenance point of view. > > Do you mean, how can a package installed in the IDE find its lpk? > > Mattias > -- > _______________________________________________ > Lazarus mailing list > Lazarus at lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus > -- The best regards, Fabio Luis Girardi PascalSCADA Project http://sourceforge.net/projects/pascalscada http://www.pascalscada.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From skalogryz.lists at gmail.com Thu Jul 28 14:16:03 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Thu, 28 Jul 2016 08:16:03 -0400 Subject: [Lazarus] Package physical location (directory) In-Reply-To: <20160728095337.5f15d0f3@limapholos.matflo.wg> References: <20160728095337.5f15d0f3@limapholos.matflo.wg> Message-ID: On Thu, Jul 28, 2016 at 3:53 AM, Mattias Gaertner wrote: > > Do you mean, how can a package installed in the IDE find its lpk? > > Pretty much - yes, Lets say I've a package packagedir/ ./package.lpk ./package.sh ./package.pas . Package is introducing a button into IDE, that does something. On the press of the button I need to execute the script (package.sh). However, I cannot do that, unless I know the path to it. I need to know this path in run-time: pth := GetPackageDir('package'); // do the search by package name pth := IncludePathDelimiter(pth)+ 'package.sh'; RunCommand('bash', pth); thanks, Dmitry -------------- next part -------------- An HTML attachment was scrubbed... URL: From nc-gaertnma at netcologne.de Thu Jul 28 17:10:42 2016 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 28 Jul 2016 17:10:42 +0200 Subject: [Lazarus] Package physical location (directory) In-Reply-To: References: <20160728095337.5f15d0f3@limapholos.matflo.wg> Message-ID: <20160728171042.170e8f17@limapholos.matflo.wg> On Thu, 28 Jul 2016 08:16:03 -0400 Dmitry Boyarintsev wrote: >[...] > pth := GetPackageDir('package'); // do the search by package name See here: http://wiki.lazarus.freepascal.org/Extending_the_IDE#Get_lpk_filename_of_an_installed_package Mattias From skalogryz.lists at gmail.com Thu Jul 28 17:14:22 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Thu, 28 Jul 2016 11:14:22 -0400 Subject: [Lazarus] Package physical location (directory) In-Reply-To: <20160728171042.170e8f17@limapholos.matflo.wg> References: <20160728095337.5f15d0f3@limapholos.matflo.wg> <20160728171042.170e8f17@limapholos.matflo.wg> Message-ID: On Thu, Jul 28, 2016 at 11:10 AM, Mattias Gaertner < nc-gaertnma at netcologne.de> wrote: > On Thu, 28 Jul 2016 08:16:03 -0400 > Dmitry Boyarintsev wrote: > > >[...] > > pth := GetPackageDir('package'); // do the search by package name > > See here: > > http://wiki.lazarus.freepascal.org/Extending_the_IDE#Get_lpk_filename_of_an_installed_package > Thank you! I couldn't ask for more! -------------- next part -------------- An HTML attachment was scrubbed... URL: From skalogryz.lists at gmail.com Thu Jul 28 17:14:22 2016 From: skalogryz.lists at gmail.com (Dmitry Boyarintsev) Date: Thu, 28 Jul 2016 11:14:22 -0400 Subject: [Lazarus] Package physical location (directory) In-Reply-To: <20160728171042.170e8f17@limapholos.matflo.wg> References: <20160728095337.5f15d0f3@limapholos.matflo.wg> <20160728171042.170e8f17@limapholos.matflo.wg> Message-ID: On Thu, Jul 28, 2016 at 11:10 AM, Mattias Gaertner < nc-gaertnma at netcologne.de> wrote: > On Thu, 28 Jul 2016 08:16:03 -0400 > Dmitry Boyarintsev wrote: > > >[...] > > pth := GetPackageDir('package'); // do the search by package name > > See here: > > http://wiki.lazarus.freepascal.org/Extending_the_IDE#Get_lpk_filename_of_an_installed_package > Thank you! I couldn't ask for more! -------------- next part -------------- An HTML attachment was scrubbed... URL: From luizamericop at gmail.com Thu Jul 28 17:58:27 2016 From: luizamericop at gmail.com (Luiz Americo Pereira Camara) Date: Thu, 28 Jul 2016 12:58:27 -0300 Subject: [Lazarus] Conditional dependencies on packages ? In-Reply-To: References: Message-ID: 2016-07-27 17:16 GMT-03:00 Michael Van Canneyt : > > Hi, > > How can I make (if at all possible) package dependencies conditional ? > > Specifically: Depending on a compiler define, a program will depend on the > LCL or not. > > I hit the same issue. Ended with a solution that, IMO, is good and powerful enough. See what i did in VTV: https://github.com/blikblum/VirtualTreeView-Lazarus/blob/lazarus_master/Source/virtualtreeview_package.lpk Created a conditional that adds the package dependencies (multiloglaz) if a macro value is set. Then defined a build macro (VirtualTreeView_Debug) that sets the value In the project i set the macro value according to my need Luiz -------------- next part -------------- An HTML attachment was scrubbed... URL: From bo.berglund at gmail.com Fri Jul 29 15:31:30 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Fri, 29 Jul 2016 15:31:30 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade Message-ID: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> Moving this thread to Lazarus, posted to FPC by mistake. -------------------------------------------------------- I just upgraded my Raspberry Pi3 from the March to the May version of Raspbian using the dist-upgrade command and then rebooted. Now Lazarus has problems with running some debugging sessions, it immediately displays an error box saying that the debugger failed. More info shows: The GDB command: "-gdb-set confirm off" did not return any result. I have never seen this before so I am at a loss here, can someone please help out? A project that worked fine yesterday before the Raspbian upgrade exhibits this now. -- Bo Berglund Developer in Sweden From lazarus at mfriebe.de Fri Jul 29 15:45:22 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Fri, 29 Jul 2016 14:45:22 +0100 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade In-Reply-To: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> Message-ID: <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> On 29/07/2016 14:31, Bo Berglund wrote: > Moving this thread to Lazarus, posted to FPC by mistake. > -------------------------------------------------------- > I just upgraded my Raspberry Pi3 from the March to the May version of > Raspbian using the dist-upgrade command and then rebooted. > > Now Lazarus has problems with running some debugging sessions, it > immediately displays an error box saying that the debugger failed. > More info shows: > > The GDB command: > "-gdb-set confirm off" > did not return any result. > Sounds like a bug in gdb. what is in the "debug output" window? (open the window BEFORE pressing F9) What version of gdb? what happens (does gdb return a prompt " (gdb)" for the next commad?), if you run (by hand) gdb -i mi and then enter -gdb-set confirm off what if you alternatively enter set confirm off From donald at ziesig.org Fri Jul 29 17:30:06 2016 From: donald at ziesig.org (Donald Ziesig) Date: Fri, 29 Jul 2016 11:30:06 -0400 Subject: [Lazarus] __FILE__ macro, or equivalent Message-ID: <46134652-c977-bf20-37c1-63184b5934a5@ziesig.org> Hi All! I would like to get the path to an fpc package at compile time. I have a package which needs to load some .so files and I would like to store them in a location that will be consistent when I move the package from system to system. By getting the package path, I could store them in the package directory. Is that possible? I tried to use the __FILE__ macro like in C/C++ but the compiler doesn't seem to understand it. Thanks, Don Ziesig From markMLl.lazarus at telemetry.co.uk Fri Jul 29 19:47:40 2016 From: markMLl.lazarus at telemetry.co.uk (Mark Morgan Lloyd) Date: Fri, 29 Jul 2016 17:47:40 +0000 Subject: [Lazarus] __FILE__ macro, or equivalent In-Reply-To: <46134652-c977-bf20-37c1-63184b5934a5@ziesig.org> References: <46134652-c977-bf20-37c1-63184b5934a5@ziesig.org> Message-ID: Donald Ziesig wrote: > Hi All! > > I would like to get the path to an fpc package at compile time. I have a > package which needs to load some .so files and I would like to store > them in a location that will be consistent when I move the package from > system to system. By getting the package path, I could store them in > the package directory. > > Is that possible? > > I tried to use the __FILE__ macro like in C/C++ but the compiler doesn't > seem to understand it. Try something like B5k5_Project := {$I %FILE% } ; (* Possibly used for .ini files etc. *) http://www.freepascal.org/docs-html/current/prog/progsu41.html#x48-470001.2.41 -- Mark Morgan Lloyd markMLl .AT. telemetry.co .DOT. uk [Opinions above are the author's, not those of his employers or colleagues] From donald at ziesig.org Fri Jul 29 21:33:55 2016 From: donald at ziesig.org (Donald Ziesig) Date: Fri, 29 Jul 2016 15:33:55 -0400 Subject: [Lazarus] __FILE__ macro, or equivalent In-Reply-To: References: <46134652-c977-bf20-37c1-63184b5934a5@ziesig.org> Message-ID: On 07/29/2016 01:47 PM, Mark Morgan Lloyd wrote: > Donald Ziesig wrote: >> Hi All! >> >> I would like to get the path to an fpc package at compile time. I >> have a package which needs to load some .so files and I would like to >> store them in a location that will be consistent when I move the >> package from system to system. By getting the package path, I could >> store them in the package directory. >> >> Is that possible? >> >> I tried to use the __FILE__ macro like in C/C++ but the compiler >> doesn't seem to understand it. > > Try something like > > B5k5_Project := {$I %FILE% } ; (* Possibly used for .ini files > etc. *) > > http://www.freepascal.org/docs-html/current/prog/progsu41.html#x48-470001.2.41 > > Thanks Mark, Unfortunately, that directive only returns the file name itself, without the path. The documentation does not show any %xxx% symbol that returns the full file path, which is what I need. I will have to set an environment variable to do what I want, but that will leave me with just one more thing to forget when I port the package :-(. Don From bo.berglund at gmail.com Fri Jul 29 22:59:35 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Fri, 29 Jul 2016 22:59:35 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> Message-ID: <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> On Fri, 29 Jul 2016 14:45:22 +0100, Martin Frb wrote: >On 29/07/2016 14:31, Bo Berglund wrote: >> Moving this thread to Lazarus, posted to FPC by mistake. >> -------------------------------------------------------- >> I just upgraded my Raspberry Pi3 from the March to the May version of >> Raspbian using the dist-upgrade command and then rebooted. >> >> Now Lazarus has problems with running some debugging sessions, it >> immediately displays an error box saying that the debugger failed. >> More info shows: >> >> The GDB command: >> "-gdb-set confirm off" >> did not return any result. >> > >Sounds like a bug in gdb. > >what is in the "debug output" window? (open the window BEFORE pressing F9) This is what I get: =thread-group-added,id="i1" (gdb) <-gdb-set confirm off> &"//\n" &"Undefined command: \"\". Try \"help\".\n" 437^error,msg="Undefined command: \"\". Try \"help\"." (gdb) > >What version of gdb? $ gdb --ver GNU gdb (Raspbian 7.7.1+dfsg-5) 7.7.1 >what happens (does gdb return a prompt " (gdb)" for the next commad?), >if you run (by hand) > gdb -i mi >and then enter > -gdb-set confirm off > >what if you alternatively enter > set confirm off All of these suggestions do not really mean anything to me. Can you be more specific? I have never used gdb by itself, I assume it is used by Lazarus to handle the breakpoints I set in teh source code, but HOW that is done is way beyond me. -- Bo Berglund Developer in Sweden From lazarus at mfriebe.de Sat Jul 30 04:54:32 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Sat, 30 Jul 2016 03:54:32 +0100 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade In-Reply-To: <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> Message-ID: <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> On 29/07/2016 21:59, Bo Berglund wrote: > On Fri, 29 Jul 2016 14:45:22 +0100, Martin Frb > wrote: >> On 29/07/2016 14:31, Bo Berglund wrote: >>> The GDB command: >>> "-gdb-set confirm off" >>> did not return any result. >> what happens (does gdb return a prompt " (gdb)" for the next commad?), >> if you run (by hand) >> gdb -i mi >> and then enter >> -gdb-set confirm off >> >> what if you alternatively enter >> set confirm off > All of these suggestions do not really mean anything to me. Can you be > more specific? > I have never used gdb by itself, I assume it is used by Lazarus to > handle the breakpoints I set in teh source code, but HOW that is done > is way beyond me. Can you open a shell or terminal, and in it enter gdb -i mi (and then return) gdb will print some message, and then let you enter gdb commands. Enter -gdb-set confirm off (and then return) copy the output. Enter q to exit gdb This is just to be on the save side. I expect this will work with no error, in which case there is no easy way to find the problem.... >> Sounds like a bug in gdb. >> >> what is in the "debug output" window? (open the window BEFORE pressing F9) > This is what I get: > > =thread-group-added,id="i1" > (gdb) > <-gdb-set confirm off> > &"//\n" > &"Undefined command: \"\". Try \"help\".\n" > 437^error,msg="Undefined command: \"\". Try \"help\"." > (gdb) > > Depends on what output you get from the above: run gdb yourself... Assuming that this does not give any error (it probably will be fine), then the bug could be anywhere. what else did you upgrade? Lazarus? FPC? From the code in components\lazdebuggergdbmi\cmdlinedebugger.pp > DoDbgOutput('<' + ACommand + '>'); // this causes the log in the > debug output, the ACommand is correct here > if ACommand <> '' > then FDbgProcess.Input.Write(ACommand[1], Length(ACommand)); > // store LineEnding in local variable, so the same statement can > be used > // for windows and *nix (1 or 2 character line ending) > LE := LineEnding; // this hopefully is a lineend > \n (gdb output suggest it got a line end) > FDbgProcess.Input.Write(LE[1], Length(LE)); But it seem gdb did not get the command, it got "//" instead. the "&" in the text, is gdb echoing back what it got. I have no idea where that could have been lost/changed.... (assuming I interpret this correct) I dont know if some of those could be caused by changes in fpc. if I remember correctly fpc TProccess may start a terminal/shell. Maybe there is a change there? Do you have a pstree (or use ps with parent pid), to see the parent of gdb process? Sorry but at this stage I dont have any more than those (wild) guesses. ---------------- There is something else in the output that makes no sense. the 437 does not belong there. I dont know if gdb generated this, or if something else in the middle caused it. Usually all gdb output is prefixed &, ^, * and a few chars like that. The GDB line starts with the ^ after the 437. That strongly suggests something else printed that. (And it is not your app, the IDE has not even send the filename at this stage, so your app can not be loaded yet) -------------- next part -------------- An HTML attachment was scrubbed... URL: From bo.berglund at gmail.com Sat Jul 30 07:43:40 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 30 Jul 2016 07:43:40 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> Message-ID: On Sat, 30 Jul 2016 03:54:32 +0100, Martin Frb wrote: >On 29/07/2016 21:59, Bo Berglund wrote: >> On Fri, 29 Jul 2016 14:45:22 +0100, Martin Frb >> wrote: >>> On 29/07/2016 14:31, Bo Berglund wrote: >>>> The GDB command: >>>> "-gdb-set confirm off" >>>> did not return any result. > >>> what happens (does gdb return a prompt " (gdb)" for the next commad?), >>> if you run (by hand) >>> gdb -i mi >>> and then enter >>> -gdb-set confirm off >>> >>> what if you alternatively enter >>> set confirm off >> All of these suggestions do not really mean anything to me. Can you be >> more specific? >> I have never used gdb by itself, I assume it is used by Lazarus to >> handle the breakpoints I set in teh source code, but HOW that is done >> is way beyond me. >Can you open a shell or terminal, and in it enter >gdb -i mi >(and then return) > >gdb will print some message, and then let you enter gdb commands. >Enter > >-gdb-set confirm off >(and then return) > >copy the output. > >Enter >q >to exit gdb pi at rpi3-jessie:~ $ gdb -i mi =thread-group-added,id="i1" ~"GNU gdb (Raspbian 7.7.1+dfsg-5) 7.7.1\n" ~"Copyright (C) 2014 Free Software Foundation, Inc.\n" ~"License GPLv3+: GNU GPL version 3 or later \nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \"show copying\"\nand \"show warranty\" for details.\n" ~"This GDB was configured as \"arm-linux-gnueabihf\".\nType \"show configuration\" for configuration details." ~"\nFor bug reporting instructions, please see:\n" ~".\n" ~"Find the GDB manual and other documentation resources online at:\n.\n" ~"For help, type \"help\".\n" ~"Type \"apropos word\" to search for commands related to \"word\".\n" (gdb) -gdb-set confirm off ^done (gdb) > >This is just to be on the save side. I expect this will work with no >error, in which case there is no easy way to find the problem.... No error visible.... >>> Sounds like a bug in gdb. >>> >>> what is in the "debug output" window? (open the window BEFORE pressing F9) >> This is what I get: >> >> =thread-group-added,id="i1" >> (gdb) >> <-gdb-set confirm off> >> &"//\n" >> &"Undefined command: \"\". Try \"help\".\n" >> 437^error,msg="Undefined command: \"\". Try \"help\"." >> (gdb) >> >> > > >Depends on what output you get from the above: run gdb yourself... >Assuming that this does not give any error (it probably will be fine), >then the bug could be anywhere. > >what else did you upgrade? Lazarus? FPC? I only did: sudo apt-get update sudo apt-get dist-upgrade and then I ran sudo rapi-config so I could activate the GPIO server, which is the new item I needed and was added in the latest Raspbian release. After a reboot the error started to appear in Lazarus. > From the code in components\lazdebuggergdbmi\cmdlinedebugger.pp >> DoDbgOutput('<' + ACommand + '>'); // this causes the log in the >> debug output, the ACommand is correct here >> if ACommand <> '' >> then FDbgProcess.Input.Write(ACommand[1], Length(ACommand)); >> // store LineEnding in local variable, so the same statement can >> be used >> // for windows and *nix (1 or 2 character line ending) >> LE := LineEnding; // this hopefully is a lineend >> \n (gdb output suggest it got a line end) >> FDbgProcess.Input.Write(LE[1], Length(LE)); > >But it seem gdb did not get the command, it got "//" instead. >the "&" in the text, is gdb echoing back what it got. > >I have no idea where that could have been lost/changed.... (assuming I >interpret this correct) > >I dont know if some of those could be caused by changes in fpc. >if I remember correctly fpc TProccess may start a terminal/shell. Maybe >there is a change there? > >Do you have a pstree (or use ps with parent pid), to see the parent of >gdb process? I did this: - In Lazarus I started the debug session and got the pop-up error. - leaving the pop-up unconfirmed I used the terminal via PuTTY and ran pstree: pi at rpi3-jessie:~ $ pstree systemd---Xtightvnc +-apache2---5*[apache2] +-autocutsel +-avahi-daemon---avahi-daemon +-bluetoothd +-cron +-3*[dbus-daemon] +-2*[dbus-launch] +-dhcpcd +-gpsd +-2*[gvfs-afc-volume---{gdbus}] ¦ +-{gvfs-afc-volume}] +-2*[gvfs-goa-volume---{gdbus}] +-2*[gvfs-gphoto2-vo---{gdbus}] +-2*[gvfs-mtp-volume---{gdbus}] +-2*[gvfs-udisks2-vo---{gdbus}] ¦ +-{gmain}] +-2*[gvfsd---{gdbus}] +-2*[gvfsd-fuse---{gdbus}] ¦ +-{gvfs-fuse-sub}] ¦ +-2*[{gvfsd-fuse}]] +-gvfsd-trash---{gdbus} ¦ +-{gmain} +-gvfsd-trash---{gdbus} ¦ +-{gmain} ¦ +-{pool} +-hciattach +-lightdm---Xorg---{llvmpipe-0} ¦ ¦ +-{llvmpipe-1} ¦ ¦ +-{llvmpipe-2} ¦ ¦ +-{llvmpipe-3} ¦ +-lightdm---lxsession---lxpanel---{gdbus} ¦ ¦ ¦ ¦ +-{gmain} ¦ ¦ ¦ ¦ +-{menu-cache-io} ¦ ¦ ¦ +-lxpolkit---{gdbus} ¦ ¦ ¦ +-openbox ¦ ¦ ¦ +-pcmanfm---{gdbus} ¦ ¦ ¦ ¦ +-{gmain} ¦ ¦ ¦ +-ssh-agent ¦ ¦ ¦ +-{gdbus} ¦ ¦ ¦ +-{gmain} ¦ ¦ +-{gdbus} ¦ ¦ +-{gmain} ¦ +-{gdbus} ¦ +-{gmain} +-login---bash +-2*[menu-cached---{gdbus}] ¦ +-{gmain}] +-nmbd +-ntpd +-polkitd---{gdbus} ¦ +-{gmain} +-rsyslogd---{in:imklog} ¦ +-{in:imuxsock} ¦ +-{rs:main Q:Reg} +-rtkit-daemon---2*[{rtkit-daemon}] +-smbd---smbd +-2*[ssh-agent] +-sshd---sshd---sshd---bash---pstree +-2*[start-pulseaudi---xprop] +-startlazarus---lazarus---{gdbus} +-systemd-journal +-systemd-logind +-systemd-udevd +-thd +-udisksd---{cleanup} ¦ +-{gdbus} ¦ +-{gmain} ¦ +-{probing-thread} +-wpa_supplicant +-xstartup---lxsession---lxpanel---{gdbus} ¦ +-{gmain} ¦ +-{menu-cache-io} +-lxpolkit---{gdbus} +-openbox +-pcmanfm---{gdbus} ¦ +-{gmain} +-ssh-agent +-{gdbus} +-{gmain} Can't find gdb here (unless {gdbus} means gdb of course... Note that I do all my RPi operations from WEindows 7 via TightVNC and PuTTY, if that is a concern. Has worked fine for years. >Sorry but at this stage I dont have any more than those (wild) guesses. > >---------------- > >There is something else in the output that makes no sense. the 437 does >not belong there. >I dont know if gdb generated this, or if something else in the middle >caused it. > >Usually all gdb output is prefixed &, ^, * and a few chars like that. > >The GDB line starts with the ^ after the 437. That strongly suggests >something else printed that. (And it is not your app, the IDE has not >even send the filename at this stage, so your app can not be loaded yet) > The Lazarus interface is what is running gdb, I would think. But I did not do antything with Lazarus during my Raspbian upgrade.... -- Bo Berglund Developer in Sweden From bo.berglund at gmail.com Sat Jul 30 10:17:51 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 30 Jul 2016 10:17:51 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> Message-ID: On Sat, 30 Jul 2016 03:54:32 +0100, Martin Frb wrote: >Sorry but at this stage I dont have any more than those (wild) guesses. Well, that is even more than I have at the moment... Thanks for your interest and contribution! Note that not all Lazarus projects are affected by this. The project I am looking at, which prompted me to update Raspbian, was supplied by a person at the fpc list in regard to controlling the hardware on an RPi from Pascal. Apparently there is an improvement in the access possibilities for the GPIO functionality in the latest Raspbian where one can even connect via the network and switch on/off outputs and read inputs. The provider had ported some C code library to FreePascal and claims that it is now very simple to access the GPIO even via the network. Since I am programming the Pi using rather much of the GPIO to control relays and stuff I was interested in testing it out, but first it would not build because of the lack of the support functions in my Raspbian version and after the update it builds but would not start due to the gdb problems. I still can use my old code going directly to memgpio to switch the relays, though, so it is no showstopper. I probably will not spend much more time on this now since I am soon away for a week-long trip. -- Bo Berglund Developer in Sweden From lazarus at mfriebe.de Sat Jul 30 13:45:54 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Sat, 30 Jul 2016 12:45:54 +0100 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade In-Reply-To: References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> Message-ID: On 30/07/2016 09:17, Bo Berglund wrote: > On Sat, 30 Jul 2016 03:54:32 +0100, Martin Frb > wrote: > >> Sorry but at this stage I dont have any more than those (wild) guesses. > Well, that is even more than I have at the moment... > Thanks for your interest and contribution! > > Note that not all Lazarus projects are affected by this. > This is odd. "-gdb-set confirm off" is the very first command that the ide sends to gdb. gdb can therefore not know which app you are trying to debug. The filename is sent later. only. So I dont know, how it can depend on the file you want to debug? It strange, but I have no idea, sorry. You dont have anything in Debugger_Startup_Options? From juha.manninen62 at gmail.com Sat Jul 30 15:35:52 2016 From: juha.manninen62 at gmail.com (Juha Manninen) Date: Sat, 30 Jul 2016 16:35:52 +0300 Subject: [Lazarus] TCheckListBox property OnSelectionChange not published In-Reply-To: References: Message-ID: On Wed, Jul 27, 2016 at 7:56 PM, Sandro Cumerlato wrote: > property OnSelectionChange is not available for component TCheckListBox. > > Please review attached patch and apply if OK. Applied in r52754, thanks. Juha From bo.berglund at gmail.com Sat Jul 30 17:37:13 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 30 Jul 2016 17:37:13 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> Message-ID: On Sat, 30 Jul 2016 12:45:54 +0100, Martin Frb wrote: >On 30/07/2016 09:17, Bo Berglund wrote: >> Note that not all Lazarus projects are affected by this. >> >This is odd. > >"-gdb-set confirm off" is the very first command that the ide sends to >gdb. gdb can therefore not know which app you are trying to debug. The >filename is sent later. only. >So I dont know, how it can depend on the file you want to debug? > >It strange, but I have no idea, sorry. > >You dont have anything in Debugger_Startup_Options? Where can I find this? I looked in Project options but did not find anything seemingly connected to that. -- Bo Berglund Developer in Sweden From lazarus at mfriebe.de Sat Jul 30 17:43:03 2016 From: lazarus at mfriebe.de (Martin Frb) Date: Sat, 30 Jul 2016 16:43:03 +0100 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade In-Reply-To: References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> Message-ID: <9878b939-6d39-67f9-4353-eeecee3a5c79@mfriebe.de> On 30/07/2016 16:37, Bo Berglund wrote: > On Sat, 30 Jul 2016 12:45:54 +0100, Martin Frb > wrote: > >> >> You dont have anything in Debugger_Startup_Options? > Where can I find this? I looked in Project options but did not find > anything seemingly connected to that. It is in the global options. in the property grid of the debugger settings. But it would apply to all projects. And if your error is some project only..... Another thing, that may be worth checking is if you did set any Environment values (run > run params) that would be per project. From bo.berglund at gmail.com Sat Jul 30 18:12:28 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 30 Jul 2016 18:12:28 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> <9878b939-6d39-67f9-4353-eeecee3a5c79@mfriebe.de> Message-ID: <59jppbpdc2l7h61d86nkb6klsvenjf2c1p@4ax.com> On Sat, 30 Jul 2016 16:43:03 +0100, Martin Frb wrote: >On 30/07/2016 16:37, Bo Berglund wrote: >> On Sat, 30 Jul 2016 12:45:54 +0100, Martin Frb >> wrote: >> >>> >>> You dont have anything in Debugger_Startup_Options? >> Where can I find this? I looked in Project options but did not find >> anything seemingly connected to that. > >It is in the global options. in the property grid of the debugger settings. > >But it would apply to all projects. And if your error is some project >only..... > >Another thing, that may be worth checking is if you did set any >Environment values (run > run params) >that would be per project. All I see there is an override for the IP address of PIGPIO: PIGPIO_ADDR = 192.168.185.97 which is totally wrong for my network in any case That identifier is used in a statement like this to set a const value: PI_ENVADDR = 'PIGPIO_ADDR'; But however I search I cannot see where this is later used in the project... Anyway, changing it to the valid address of my Pi did not stop the gdb error. :( -- Bo Berglund Developer in Sweden From aaa5500 at ya.ru Sat Jul 30 18:21:52 2016 From: aaa5500 at ya.ru (Alex) Date: Sat, 30 Jul 2016 19:21:52 +0300 Subject: [Lazarus] __FILE__ macro, or equivalent In-Reply-To: References: <46134652-c977-bf20-37c1-63184b5934a5@ziesig.org> Message-ID: <46101469895712@web26h.yandex.ru> Hello, IMO it is worth to ask FPC dev's, to make variable %FILE_PATH% along with the %FILE% (which exists). You can ask at Mantis about it. Alex Regards, Alex From lazarus2 at de-brouwerij.be Sat Jul 30 18:33:47 2016 From: lazarus2 at de-brouwerij.be (Koenraad Lelong) Date: Sat, 30 Jul 2016 18:33:47 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade In-Reply-To: <59jppbpdc2l7h61d86nkb6klsvenjf2c1p@4ax.com> References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> <9878b939-6d39-67f9-4353-eeecee3a5c79@mfriebe.de> <59jppbpdc2l7h61d86nkb6klsvenjf2c1p@4ax.com> Message-ID: Op 30-07-16 om 18:12 schreef Bo Berglund: > On Sat, 30 Jul 2016 16:43:03 +0100, Martin Frb > wrote: > >> On 30/07/2016 16:37, Bo Berglund wrote: >>> On Sat, 30 Jul 2016 12:45:54 +0100, Martin Frb >>> wrote: >>> >>>> >>>> You dont have anything in Debugger_Startup_Options? >>> Where can I find this? I looked in Project options but did not find >>> anything seemingly connected to that. >> >> It is in the global options. in the property grid of the debugger settings. >> >> But it would apply to all projects. And if your error is some project >> only..... >> >> Another thing, that may be worth checking is if you did set any >> Environment values (run > run params) >> that would be per project. > All I see there is an override for the IP address of PIGPIO: > PIGPIO_ADDR = 192.168.185.97 > which is totally wrong for my network in any case > That identifier is used in a statement like this to set a const value: > PI_ENVADDR = 'PIGPIO_ADDR'; > > But however I search I cannot see where this is later used in the > project... > > Anyway, changing it to the valid address of my Pi did not stop the gdb > error. :( > > Bo, That environment variable is a remainder of previous tests. The original c-test-program (x_pigpiod_if2) can be used in two ways : without that environment variable, then the defaults are used (ip-address 127.0.0.1 and port 8888), or with environment variables set, then those values are used for port and/or ip-address. The lazarus program never did use these environment variables. Would it be a problem if you used the latest ready-made image of raspbian, and try again ? I used that image and only did safe-upgrade's after that. I never used the distupgrade. Koenraad. From bo.berglund at gmail.com Sat Jul 30 23:00:11 2016 From: bo.berglund at gmail.com (Bo Berglund) Date: Sat, 30 Jul 2016 23:00:11 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> <9878b939-6d39-67f9-4353-eeecee3a5c79@mfriebe.de> <59jppbpdc2l7h61d86nkb6klsvenjf2c1p@4ax.com> Message-ID: <6rnppblsn4ngli7po15o6n1i3pm08bsrlg@4ax.com> On Sat, 30 Jul 2016 18:33:47 +0200, Koenraad Lelong wrote: >Bo, > >That environment variable is a remainder of previous tests. The original >c-test-program (x_pigpiod_if2) can be used in two ways : without that >environment variable, then the defaults are used (ip-address 127.0.0.1 >and port 8888), or with environment variables set, then those values are >used for port and/or ip-address. The lazarus program never did use these >environment variables. > >Would it be a problem if you used the latest ready-made image of >raspbian, and try again ? I used that image and only did safe-upgrade's >after that. I never used the distupgrade. > >Koenraad. Well, the Pi I am testing on has a lot of other stuff installed like FPC/Lazarus and component packages in Lazarus etc etc. It is used as a development platform for a data logging automation software system (where I use the GPIO to control power relays). Because of the relay/GPIO issue I was interested when I read about the new GPIO server in Jessie and the Pascal port of the C code you have done. But I cannot re-image the Pi right now with the May Jessie image because I will have to go through all of the setup issues I have already dealt with on the system I have. -- Bo Berglund Developer in Sweden From lazarus2 at de-brouwerij.be Sun Jul 31 09:37:47 2016 From: lazarus2 at de-brouwerij.be (Koenraad Lelong) Date: Sun, 31 Jul 2016 09:37:47 +0200 Subject: [Lazarus] Lazarus cannot debug after Raspbian upgrade In-Reply-To: <6rnppblsn4ngli7po15o6n1i3pm08bsrlg@4ax.com> References: <9immpblk20vlefsb4l1q0umjruk40pamve@4ax.com> <4e76e801-f0c0-0310-91da-d0b7365f070a@mfriebe.de> <2mgnpbp6p30k5u5lu7ghf4n2srlecu6elt@4ax.com> <99c065dd-446f-6288-717d-4e580b564995@mfriebe.de> <9878b939-6d39-67f9-4353-eeecee3a5c79@mfriebe.de> <59jppbpdc2l7h61d86nkb6klsvenjf2c1p@4ax.com> <6rnppblsn4ngli7po15o6n1i3pm08bsrlg@4ax.com> Message-ID: <1c74152a-d8db-0532-34f0-9351e696642b@de-brouwerij.be> Op 30-07-16 om 23:00 schreef Bo Berglund: > Well, > the Pi I am testing on has a lot of other stuff installed like > FPC/Lazarus and component packages in Lazarus etc etc. > It is used as a development platform for a data logging automation > software system (where I use the GPIO to control power relays). > Because of the relay/GPIO issue I was interested when I read about the > new GPIO server in Jessie and the Pascal port of the C code you have > done. > > But I cannot re-image the Pi right now with the May Jessie image > because I will have to go through all of the setup issues I have > already dealt with on the system I have. > > If you only have one sd-card, you could clone your existing sd-card and re-image it. Afterwards, you can restore that image. As far as I remember, I just copied all lazarus/fpc stuff from my old image to the new. That's one of the reasons why installing in a user-directory is so interesting. Koenraad. From wv99999 at gmail.com Thu Jul 28 00:13:21 2016 From: wv99999 at gmail.com (Wolf) Date: Thu, 28 Jul 2016 10:13:21 +1200 Subject: [Lazarus] Shift returns empty set in MouseWheel events In-Reply-To: <510f41f8-9c3f-221e-b1f9-7d9e80799ec7@kluug.net> References: <20160727143611.67E34ADA@atlas.cz> <510f41f8-9c3f-221e-b1f9-7d9e80799ec7@kluug.net> Message-ID: <57993201.2000404@gmail.com> I enclose a little program where you can see the effects of pressing/rolling mouse keys. Vojtěch Čihák is correct in saying that OnMouseDown/Up can be used to distinguish whether the mousewheel is rolled when pressed or not. But then, why is Shift part of the procedure's parameters if it has no place in the OnMouseWheel events? So there is a workaround. By the way, the proper test is *if* ssMiddle *in* Shift *then* . . . since Shift is a set of values, not an enumerated value, meaning it can contain more than one value. Press a mouse key and or to see what I mean. What is your view? Is this a bug that ought to be fixed, or is it not? My vote is: "If Shift in OnMouseWheelxxx events is supposed to return an empty set, remove the parameter from the handling procedures. If you say "keep it" then ensure the parameter does carry a value. Wolf On 28/07/16 00:56, Ondrej Pokorny wrote: > On 27.07.2016 14:36, Vojtěch Čihák wrote: >> >> Hi, >> >> IMO it is correct. OnMouseWheelxxx are events for rolling the mouse >> wheel, therefore the ssMiddle cannot be in Shift. >> >> If you need to detect if Middle button is pressed, use >> OnMouseDown/OnMouseUp and test "if Mouse=mbMiddle then ..." >> >> Also, ssMiddle appears in Shift in OnMouseDown/OnMouseUp. >> > > You are not correct. You can scroll the mouse wheel if it is released > or pressed. So for me a valid feature request for the distinction. The > OnMouseMove event gets valid Shift states as well. > > Btw. please use a mail client that supports "In-Reply-To" and > "References" headers. Your answers are registered always as a new > thread. See the recent discussion with Denis Kozlov on fpc-devel list, > thread(s) "NowUTC in FPC". > > Ondrej > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- object Form1: TForm1 Left = 332 Height = 253 Top = 288 Width = 376 Caption = 'Mouse wheel test' ClientHeight = 253 ClientWidth = 376 Icon.Data = { EE3A00000000010003003030000001002000A825000036000000202000000100 2000A8100000DE25000010100000010020006804000086360000280000003000 0000600000000100200000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000003FFE0F003FFE46003FFE7B003FFEA3003F FEBB003FFEC7003FFEC8003FFEBB003FFEA4003FFE7E003FFE4A003FFE110000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000F4AC9B09F4AC9B17F4AC9B26F4AC9B31F4AC 9B38DEA2A5395866DB5B003EFEAF003EFEF30041FEFF0042FEFF0044FEFF0045 FEFF0043FEFF0042FEFF003EFEFF003FFEFF003EFEFF003EFEFF003EFEF5003E FEB3003EFE52003EFE0800000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000F4AC980EF4AC992BF4AC9946F4AC9954F4AC9957F4AC9957F0AA9B589582 C1851A51F3D90050FEFE0061FFFF0071FFFF007CFEFF0085FEFF0087FFFF0087 FFFF0086FFFF0080FEFF0076FEFF0068FFFF0057FFFF0049FEFF0040FEFF003E FFFF003EFFFE003EFED8003EFE5A003EFE030000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000F4AC9511F4AC 963CF4AC9655F4AC9657F4AC9657F4AC9657F4AC9657D49FA4693F6AE4C90069 FEFD0083FEFF0094FEFF00A1FEFF00AAFEFF00AFFEFF00B3FEFF00B4FEFF00B4 FEFF00B3FEFF00B1FEFF00ACFEFF00A5FEFF009AFEFF008BFEFF0074FEFF0057 FEFF0043FEFF003EFEFF003EFEFE003EFEBB003EFE2300000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000F5AD9203F5AD922FF5AD9354F5AD 9357F5AD9357F5AD9357F5AD9357F4AC9357B199B184157AF5EE008EFFFF00A4 FFFF00B0FFFF00B9FFFF00BFFFFF00C4FFFF00C7FFFF00C9FFFF00CBFFFF00CB FFFF00CAFFFF00C8FFFF00C5FFFF00C1FFFF00BCFFFF00B4FFFF00AAFFFF0097 FFFF007EFFFF005AFEFF0041FFFF003FFEFF003EFEEA003FFF50000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000F4AC8E06F4AC8F41F4AC9057F4AC9057F4AC 9057F4AC9057F4AC9057F4AC90579F9CB693098FFAFA00A5FEFF00B4FEFF00BF FEFF00C7FEFF00CDFEFF00D2FFFF00D5FFFF00D7FEFF00D8FEFF00D9FFFF00D9 FFFF00D9FFFF00D7FFFF00D6FEFF00D3FFFF00CFFFFF00CAFFFF00C2FEFF00B9 FFFF00ACFFFF0098FEFF0076FEFF004BFEFF003FFEFF003EFEFA003EFE680000 0000000000000000000000000000000000000000000000000000000000000000 00000000000000000000F3AC8A05F3AC8C44F3AC8C57F3AC8C57F3AC8C57F3AC 8C57F3AC8C57F3AC8C57A8A4AF8E099FFAFB00B2FEFF00BFFEFF00C9FEFF00D1 FEFF00D6FEFF00DAFEFF00DCFEFF00DEFEFF00E0FEFF00E1FEFF00E1FEFF00E1 FFFF00E1FEFF00E0FEFF00DFFEFF00DDFEFF00DBFEFF00D8FEFF00D3FEFF00CD FEFF00C3FEFF00B8FEFF00A7FEFF008AFEFF005BFEFF003FFEFF003EFEFD003E FE5D000000000000000000000000000000000000000000000000000000000000 000000000000F3AC8501F3AC8738F3AC8857F3AC8857F3AC8857F3AC8857F3AC 8857F3AC8857C5A99E7B13A8F5F700B9FEFF00C6FEFF00D0FEFF00D7FEFF00DB FEFF00DFFEFF00E1FEFF00E3FEFF00E5FEFF00E6FEFF01E6FEFF01E7FEFF02E7 FEFF01E7FEFF00E6FEFF00E5FEFF00E4FEFF00E2FEFF00E0FEFF00DDFEFF00D9 FFFF00D3FFFF00CAFEFF00BFFEFF00AFFEFF0094FEFF0067FEFF0042FEFF003E FEF8003EFE3D0000000000000000000000000000000000000000000000000000 000000000000F3AC831BF3AC8356F3AC8357F3AC8357F3AC8357F3AC8357F3AC 8357E8AC896038ADE2E700BDFEFF00CAFEFF00D4FEFF00DAFEFF00DFFEFF00E2 FEFF00E5FEFF01E6FEFF06E8FEFF0FE9FEFF17EAFEFF1CEBFEFF20EBFEFF20EB FEFF1EEBFEFF19EAFEFF12EAFEFF0AE8FEFF03E7FEFF00E5FEFF00E3FEFF00E0 FEFF00DCFEFF00D7FEFF00CFFEFF00C2FEFF00B3FEFF0098FEFF006AFEFF0040 FEFF003EFEDE003EFE1500000000000000000000000000000000000000000000 0000F3AC7D01F3AC7E45F3AC7F57F3AC7F57F3AC7F57F3AC7F57F3AC7F57F3AC 7F5789AFB6B102BEFDFF00CCFEFF00D6FEFF00DCFEFF00E1FEFF08C5FBFF10A4 F8FF0DDDFDFF1BEAFEFF22C0FAFF25A8F8FF29AAF8FF2DB1F9FF2FB2F9FF37CB FBFF2CA8F8FF2EBBFAFF29B3F9FF28C9FBFF1CAAF8FF13CBFCFF10A5F8FF10A4 F8FF07C7FCFF09BAFBFF109DF8FF01CCFEFF00C4FEFF00B4FEFF0097FEFF0060 FEFF0040FEFF003EFE9700000000000000000000000000000000000000000000 0000F3AC7912F3AC7A56F3AC7A57F3AC7A57F3AC7A57F3AC7A57F3AC7A57D6AE 8A7029BBE8F900CCFEFF00D7FEFF00DDFEFF00E2FEFF00E5FEFF12A8F8FF2063 F1FF2BD4FCFF3AEDFEFF2C96F6FF2166F2FF308AF5FF2D83F4FF246CF2FF2D85 F4FF2268F2FF3394F6FF287AF4FF2B89F5FF226AF2FF2BAFF9FF2163F1FF1F7D F4FF0BBEFBFF1399F7FF2063F1FF02D1FEFF00D1FEFF00C4FEFF00B2FEFF008F FEFF0055FEFF003EFEF8003EFE32000000000000000000000000000000000000 0000F3AC7529F3AC7557F3AC7557F3AC7557F3AC7557F3AC7557F3AD755789B4 B1BC0CC9F8FF00D6FEFF00DDFEFF00E3FEFF00E6FEFF0DE9FEFF20AAF8FF2063 F1FF3DCBFBFF52EEFEFF3597F6FF246BF2FF63E6FDFF3F9DF7FF2367F2FF2972 F3FF2770F3FF41A2F7FF2771F3FF2368F2FF236AF2FF39B0F9FF2164F1FF27C2 FAFF17E9FEFF169BF7FF2063F1FF02D6FEFF00D9FEFF00D0FEFF00C1FEFF00AC FEFF0080FEFF0046FEFF003EFEA7000000000000000000000000000000000000 0000F2AC7039F2AC7057F2AC7057F2AC7057F2AC7057F2AC7057E2AE7A6450BE CFF400D4FEFF00DCFEFF00E2FEFF00E6FEFF0FE9FEFF2AECFEFF2DABF8FF2063 F1FF2063F1FF3185F5FF3B96F6FF256BF2FF72E8FDFF51B1F8FF2469F2FF3887 F5FF3583F4FF4AA5F7FF2163F1FF2164F1FF246AF2FF44B1F9FF2163F1FF2269 F2FF2CC7FBFF229CF7FF2063F1FF02DAFEFF00DFFEFF00D8FEFF00CDFEFF00BC FEFF00A1FEFF0069FEFF003FFEF7003EFE1A0000000000000000000000000000 0000F2AC6B41F2AC6B57F2AC6B57F2AC6B57F2AC6B57F2AC6B57B0B393943FC7 D7FF00DAFEFF00E1FEFF00E5FEFF0DE9FEFF2AECFEFF40EEFEFF38ACF8FF2063 F1FF3B96F6FF256CF2FF3F94F6FF266BF2FF7EE9FDFF66C5FAFF2163F2FF296F F3FF489AF6FF50A6F7FF2163F2FF2E77F3FF246AF2FF4DB2F9FF2163F1FF40B2 F9FF45E6FEFF2B9DF7FF2063F1FF04DDFEFF00E3FEFF00DDFEFF00D5FEFF00C7 FEFF00B3FEFF008DFEFF004EFEFF003EFE6B0000000000000000000000000000 0000F2AC6642F2AC6557F2AC6557F2AC6557F2AC6557F2AC655783BBACC43DCC D7FF00DFFEFF00E4FEFF07E8FEFF24EBFEFF3DEEFEFF52EFFEFF41ADF8FF2063 F1FF2D78F3FF2A71F3FF4395F6FF276BF2FF87E9FDFF7CD8FCFF2164F2FF2063 F2FF5CB0F8FF54A6F7FF2164F2FF52A7F8FF256AF2FF54B2F9FF2163F1FF2F83 F4FF369CF7FF2576F3FF2063F1FF198FF6FF01E1FEFF00E1FEFF00DAFEFF00D0 FEFF00BEFEFF00A3FEFF006BFEFF003EFEB20000000000000000000000000000 0000F2AC603BF2AC6057F2AC6057F2AC6057F2AC6057F0AD625863C2BDE844CE D1FF00E2FEFF01E7FEFF1AEAFEFF36EDFEFF4EEFFEFF61F1FEFF5ACCFBFF4AA4 F7FF4FA6F7FF71D0FBFF6AC2FAFF59A9F8FF94EFFEFF94EEFEFF59A6F7FF59A5 F7FF83D9FCFF76CAFBFF5DADF8FF7BD7FCFF55A8F8FF6ED0FBFF4CA4F7FF47A4 F7FF46ADF8FF3AA2F7FF31A2F7FF25A4F8FF08E4FEFF00E4FEFF00DEFEFF00D6 FEFF00C7FEFF00B2FEFF0089FEFF0048FEE8003EFE0400000000000000000000 0000F2AC5B2EF2AC5B57F2AC5B57F2AC5A57CD9D428FBB9B43A874AA79FA6EAE 7DFF32B28DFF33B38CFF45B58CFF54B78CFF60B88CFF69B98CFF71B98CFF77BA 8CFF7BBA8CFF7FBA8CFF83BB8CFF85BB8DFF99E8E2FFA2F6FEFFA3F6FEFFA3F6 FEFFA2F6FEFFA1F6FEFF9EF6FEFF9AF6FEFF95F5FEFF7BDAFCFF59B4F9FF77EB FEFF6ECAAEFF64B88CFF59B78CFF4BB68CFF3AB48CFF2FB28CFF2FAF8CFF2FAB 8CFF2FA48CFF2F9A8CFF2F888CFF2F628CFF5367357B69720072697200330000 0000F1AC551AF1AC5557F1AC5557F1AC5557D3A0428698871CFD97861CFF9786 1CFF777808FF697200FF697200FF697200FF697200FF697200FF697200FF6972 00FF697200FF6A7200FF697200FF6A7200FF7C9A4CFFA7F6FDFFA9F7FEFFA9F7 FEFFA8F7FEFFA6F7FEFFA4F6FEFFA0F6FEFF98F2FEFF3982F4FF2163F1FF479D F7FF76CEB7FF6A7403FF697200FF697200FF697200FF697200FF697200FF6972 00FF697200FF697200FF697200FF697200FF697200FF697200FF697200D96972 000DF1AC5105F1AC5052F1AC5057F1AC5057F1AC5057B7942EBA97861AFF9786 1AFF888012FF6A7300FF697200FF697200FF697200FF697200FF697200FF6972 00FF697200FF697300FF697300FF697300FF6A7301FF94C7A1FFADF7FFFFADF7 FFFFACF7FFFFABF7FFFFA8F7FEFFA5F6FFFF6CBAF9FF2164F2FF2163F1FF2265 F2FF63C9FAFF6FA059FF697200FF697200FF697200FF697200FF697200FF6972 00FF697200FF697200FF697200FF697200FF697200FF697200FF697200FF6972 008900000000F1AC4A36F1AC4A57F1AC4A57F1AC4A57CAB0607C8C9133FF9786 18FF978618FF727604FF697403FF68923FFF6C9544FF709644FF739644FF7596 44FF779644FF799644FF7A9644FF7B9644FF7C9644FF82A057FFAFF4F8FFB1F7 FEFFB1F7FEFFAFF7FEFFACF7FEFF9CE9FDFF2C70F3FF2063F2FF2163F2FF2265 F2FF6BCFFBFF78E6E4FF6A7C12FF697200FF697200FF667709FF1CC7BAFF12CE D3FF16C4C9FF16B9C9FF16A8C9FF168AC9FF316E877369720042697200426972 003E00000000F1AC4511F1AC4555F1AC4557F1AC4557D3B25B7362BD96FE9688 1BFF978617FF8B8110FF6A7300FF69B483FF76F3FEFF84F4FEFF8EF5FEFF97F5 FEFF9EF6FEFFA4F6FEFF80CAFBFF7FC7FAFF87CDFBFF8ACEFBFFA1E5FDFFB4F8 FEFFB4F8FEFFB2F8FEFFAFF8FEFF5AA0F7FF2063F2FF2163F1FF2163F1FF4A99 F6FF88F4FEFF7CF3FEFF6DBD94FF697300FF697200FF697200FF459A56FF00E2 FEFF00DAFEFF00CEFEFF00BAFEFF0096FEFF0072FE3800000000000000000000 00000000000000000000F1AD3F37F1AD3F57F1AD3F57DBB1506854CEBAF876AA 64FF988714FF978614FF7E7B09FF6A7708FF76D5C3FF86F4FEFF90F5FEFF99F6 FEFFA0F6FEFFA6F7FFFF6BB4F9FF2164F2FF2164F2FF2164F2FF3174F3FFA8E9 FDFFB6F8FFFFB4F8FFFF93D9FCFF2467F2FF2164F2FF2164F2FF296EF2FF89E7 FDFF8AF4FFFF7FF3FEFF70F0FBFF688D36FF697200FF697200FF697301FF1EC1 B4FF00DCFEFF00D0FEFF00BCFEFF009CFEFF007AFE1D00000000000000000000 00000000000000000000F1AD3B0AF1AD3A50F1AD3A57EBAE3E5A5FCCAFEC53D0 B4FF8C9533FF988713FF968612FF767805FF6C8523FF85ECEFFF92F5FEFF9AF6 FFFFA1F6FEFFA7F7FFFFA9F5FEFF4A8FF5FF2164F2FF2164F2FF2164F2FF4E90 F5FFB4F6FEFFB3F7FEFF4487F5FF2164F2FF2164F2FF2164F2FF67B8F9FF95F5 FFFF8BF4FFFF80F3FEFF71F2FEFF63D6C8FF697606FF697200FF697200FF5A82 24FF05D6F1FF00D0FEFF00BDFEFF009CFEF00083FE0500000000000000000000 0000000000000000000000000000F1AD351EF1AD3456F1AD34577BC696CB51D3 B9FF6BC698FF968917FF978712FF948510FF737703FF75A25DFF91F4FCFF9AF6 FFFFA1F6FEFFA7F7FFFFACF7FFFFA0E8FDFF3074F3FF2164F2FF2164F2FF2164 F2FF72B5F9FF80C3FAFF2164F2FF2164F2FF2164F2FF3B82F4FF9AF3FEFF95F5 FFFF8BF4FFFF7FF3FEFF70F2FEFF5EF1FEFF5DA86CFF697200FF697200FF6972 00FF38A377FF00D0FEFF00BDFEFF009FFEBE0087FE0100000000000000000000 000000000000000000000000000000000000F1AD2F31F1AD2F57A6BD6E9D51D3 B7FF5FD6B7FF84B066FF978710FF988610FF94850FFF747704FF83C5A1FF99F5 FEFFA0F6FEFFA6F7FFFFAAF7FFFFAEF8FFFF88CEFBFF2265F2FF2164F2FF2164 F2FF2568F2FF2C6FF2FF2164F2FF2164F2FF2367F2FF83D4FBFF9CF6FFFF94F5 FFFF8AF4FFFF7EF3FEFF6FF2FEFF5CF0FEFF47E5EBFF63811DFF697200FF6972 00FF667608FF14BCCEFF00BBFEFF00A4FE790000000000000000000000000000 000000000000000000000000000000000000F1AD2C02F1AD2A3CD8B23E6A54D1 B2F95CD5B5FF74D5B1FF929935FF97870EFF97870EFF95850DFF7B8114FF90E1 D7FF9DF6FEFFA3F7FFFFA8F7FFFFACF8FFFFAFF7FEFF64A9F8FF2164F2FF2164 F2FF2164F2FF2164F2FF2164F2FF2164F2FF559FF7FF97DFD1FF8ED7C3FF88D7 C3FF80D6C3FF77D5C3FF6BD4C3FF5DD3C3FF49D1C3FF4CA972FF697200FF6972 00FF697200FF50873CFF02B7FAFB00A5FE260000000000000000000000000000 00000000000000000000000000000000000000000000F0AD2604EFAD253C7DC7 8BC857D4B4FF6ED7B4FF83CB98FF968B16FF97870DFF97870DFF96860CFF8B99 3EFF9AF1F5FFA0F6FFFFA5F7FFFFA9F7FFFFACF8FFFFABF4FEFF4084F4FF2164 F2FF2164F2FF2164F2FF2164F2FF2D72F3FF96E9FDFF8ECFB2FF6A7504FF6A73 00FF6A7300FF697200FF697200FF697200FF697200FF697200FF697200FF6972 00FF697200FF697300FF339383C3000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000F0AD2103B5BA 555C53D3B1FD67D6B2FF7AD8B2FF8EB66BFF968910FF978910FF978910FF9789 10FF9EB770FFA0F2F4FFA1F6FFFFA5F7FFFFA8F7FFFFAAF7FFFF97E2FDFF2B6E F2FF2164F2FF2164F2FF2164F2FF70BEF9FF9EF6FFFF98F5FEFF7EB683FF6A73 00FF6A7300FF697200FF697200FF697200FF697200FF697200FF697200FF6972 00FF697200FF697200FF697300EC6972001B0000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000091C2 740237D8C9A65CD6B2FF73D7B0FF84D8AFFF91D2A1FF9BD3A1FFA3D4A1FFA9D5 A1FFAED6A4FFB2DEB6FFA7ECDEFFA0F6FDFFA3F7FFFFA5F7FFFFA6F7FFFF90DE FCFF7CC9FBFF77C5FAFF74C3FAFF9BF3FEFF99F6FFFF92F5FFFF8AF3FBFF79C7 A7FF70C3A0FF67C2A0FF5CC1A0FF4CC0A0FF3ABEA0FF28BCA0FF27B9A0FF27B5 A0FF27AEA0FF2F9E8CBC6972005E6972002A0000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000E5FE1A1DE2E6EB62D8B7FF7BD8AFFF8AD9AFFF95DAAFFF9EDBAFFFA6DB AFFFABDCAFFFB0DDAFFFB4DDAFFFAFE3C3FFA2F1F0FF9FF6FEFFA0F6FFFFA0F6 FFFF9FF6FFFF9EF6FFFF9BF6FFFF97F5FFFF92F5FFFF8BF4FFFF83F4FFFF79F3 FFFF6CF2FFFF5DF0FEFF49EFFEFF30ECFEFF10E9FEFF00E5FEFF00E0FEFF00D8 FEFF00CBFEEF00C0FE2500000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 00000000000000E7FE5318E7F6FB5ADEC8FF80D8AEFF8DD9ADFF97DAADFF9FDB ADFFA5DBADFFAADCADFFAEDCADFFB1DDADFFB3DDB0FFA9E7D0FF9BF4F8FF99F5 FEFF98F5FFFF96F5FFFF93F5FFFF8FF5FFFF89F4FFFF83F4FFFF7AF3FFFF6EF2 FFFF61F1FFFF50EFFEFF39EDFEFF1DEBFEFF03E7FEFF00E3FEFF00DDFEFF00D3 FEFE00C9FE5F0000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000003E8FF7B1AEAFEFE47E6E5FF7BDBB6FF8ED9ACFF97DA ACFF9DDBACFFA3DBACFFA8DCACFFABDCACFFADDCACFFAFDDACFFADDEB2FFA0E9 D7FF91F3F9FF8CF5FFFF89F4FFFF85F4FFFF7FF3FFFF77F3FFFF6DF2FFFF62F1 FFFF52EFFFFF3EEEFEFF26ECFEFF09E8FEFF00E5FEFF00E0FEFF00D8FEFF2FC8 CF8BC2B13B030000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000E7FE0208E8FE811EEBFEFD39ECFBFF62E4D8FF87DB B2FF94DAABFF9ADBABFF9FDBABFFA3DBABFFA5DBABFFA7DCABFFA8DCABFFA8DC ABFFA5DEB1FF95E7D3FF83F0F4FF79F3FFFF72F2FFFF69F1FFFF5EF0FFFF50EF FFFF3EEEFFFF29ECFEFF0EE9FEFF00E6FEFF00E1FEFF00DBFEFE00D3FE8FC7B2 331BEFAC0C030000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000001E8FE020AE9FE6A1DEBFEF833EDFEFF48ED F9FF6AE5D7FF89DCB4FF94DAA9FF99DAA9FF9CDBA9FF9EDBA9FF9FDBA9FF9FDB A9FF9EDBA9FF9DDBA9FF99DBACFF88E2C4FF72E9E2FF5BEEF8FF4BEFFFFF3AED FFFF27ECFFFF0EE9FEFF00E6FEFF00E2FEFF00DDFEF908D6F676C1B43612EEAC 081F000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000BE9FE3E18EAFED82BEC FEFF3BEDFEFF4AEEFBFF63E8E1FF7DE0C1FF8EDBACFF92DAA8FF94DAA8FF94DA A8FF93DAA8FF91DAA8FF8ED9A8FF8AD9A8FF84D8A8FF79D9ADFF63DDBEFF45E0 D2FF26E2E0FF13E1EAFF0EDFEFFF22D7DAE67FC17966E9AD0A32EEAC061FEEAC 0601000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000008E9FE0E11EA FE801EEBFEEC2DECFFFF38EDFFFF41EEFEFF4EECF5FF60E6DEFF72E0C5FF7FDB B1FF83D9A9FF82D8A7FF7ED8A7FF79D8A7FF72D7A7FF69D6A7FF5DD5A7FF53D4 A7FF51D2A7FF57CEA0F592C063AEDEB01350EEAC0225EEAC0307000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 00000BE9FE1512EAFF7819EAFFD623EBFFFD2BECFFFF2FECFFFF33EDFFFF34EC FDFF39E9F3FF3EE6E6FF42E2D9FF41E0D1FF3BDDCBFF33DCCAFF2EDACCFD2CD9 CEDA3DD4BC80B7B83A29EEAC0009000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000007E9FF020AE9FF2F0DE9FF6F0FE9FFA60EE9FFCC0EE9 FFEA0CE9FFF609E9FFF705E8FFEB01E7FFCE00E6FFA800E4FF7300E3FF3300E2 FF02000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000FFFFFFFFFFFFF204FFFFFFFFFFFFF204FFFFFFFFFFFFF204FFFFFFFFFFFF F204FFFFFFFFFFFFF204FFFFE001FFFFF204FFE000003FFFF204FF0000000FFF F204FC00000007FFF204F000000003FFF204E000000001FFF204C000000000FF F20480000000007FF20480000000003FF20400000000003FF20400000000001F F20400000000001FF20400000000000FF20400000000000FF20400000000000F F204000000000007F204000000000001F204000000000000F204000000000000 F204800000000000F204800000000007F204C00000000007F204C00000000007 F204E00000000007F204F0000000000FF204F0000000000FF204F8000000001F F204FC000000000FF204FE000000000FF204FF000000003FF204FF800000007F F204FFC00000007FF204FFC00000007FF204FFE0000000FFF204FFF8000000FF F204FFFC000003FFF204FFFF00001FFFF204FFFFC000FFFFF204FFFFFFFFFFFF F204FFFFFFFFFFFFF204FFFFFFFFFFFFF204FFFFFFFFFFFFF204FFFFFFFFFFFF F204280000002000000040000000010020000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000003FFE03003F FE22003FFE5B003FFE77003FFE85003FFE80003FFE65003FFE3D003FFE080000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000F4AC 9803F4AC9911F4AC991EF4AC9A30F3AB9A3BC196AF5B5B6CD986004BFED90052 FEFC0059FEFF005AFEFF0058FEFF0052FEFF004AFEFF0043FEFF003EFEEA003E FEA1003EFE3E003EFE0B00000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000F4AC9515F4AC 9636F4AC974BF4AC9754ECA99A5B9B8BBD8E2471EFDF0279FCFB008FFEFF009B FEFF00A4FEFF00A5FEFF00A2FEFF009CFEFF008CFEFF0079FEFF005CFEFF0045 FEFF003EFEE4003EFE96003EFE10000000000000000000000000000000000000 000000000000000000000000000000000000F4AC8F09F4AC9130F4AC9256F4AC 9257F4AC9257E1A89A645591D8C30494FCFB00B0FEFF00BDFEFF00C6FFFF00CB FEFF00CEFEFF00CFFFFF00CEFFFF00CBFEFF00C5FFFF00BDFFFF00ACFEFF0094 FFFF0065FEFF0048FEFF003EFECE003EFE450000000000000000000000000000 0000000000000000000000000000F3AC8A02F3AC8C3AF3AC8D55F3AC8D57F3AC 8D57E2AA956367A0CEB902ABFDFE00BEFEFF00CDFEFF00D4FEFF00D9FEFF00DC FEFF00DEFEFF00DEFEFF00DDFEFF00DCFEFF00D8FEFF00D4FEFF00CBFEFF00BF FEFF00A5FEFF0080FEFF004BFEFE003EFEDC003EFE2900000000000000000000 00000000000000000000F3AC8403F3AC852FF3AC8657F3AC8657F3AC8657F0AC 875968ABCBBD04B9FCFD00CDFEFF00D7FEFF00DEFEFF00E2FEFF03E5FEFF06E7 FEFF0AE7FEFF0BE8FEFF09E8FEFF06E6FEFF02E4FEFF00E2FEFF00DDFEFF00D7 FEFF00CBFEFF00BAFEFF0091FEFF005CFEFF003EFECD003EFE2B000000000000 00000000000000000000F3AC7E13F3AC804CF3AC8057F3AC8057F3AC8057C1AD 9A810DBDF7FA00CEFEFF00DBFEFF03D3FCFF0AC5FBFF0FE5FDFF1AC8FAFF21BE FAFF28C4FAFF2DD0FBFF27C2FAFF23C7FAFF1ACCFBFF0FCCFBFF0AB9FAFF06C6 FBFF07BCFBFF04BFFCFF00B7FEFF0093FEFF004EFEFB003EFE99000000000000 00000000000000000000F3AC772EF3AC7857F3AC7857F3AC7857E0AD826853BA D0D500D2FEFF00DDFEFF01E4FEFF10BDFAFF2587F4FF3CE3FDFF2A86F4FF3693 F5FF2D80F4FF2977F3FF2A7AF3FF2D82F4FF2677F3FF2B98F6FF2173F2FF15B9 FAFF1887F5FF0CADF9FF00CFFEFF00BCFEFF0086FEFF004CFEFC003EFE3B0000 00000000000000000000F2AC713FF2AC7157F2AC7157F2AC7157BBB2918B23C9 E9F500DCFEFF00E3FEFF11E9FEFF25C0FAFF236EF2FF359CF6FF3287F4FF54BD F9FF3D94F5FF2D78F3FF3789F4FF2F7BF3FF2266F1FF3699F6FF216FF2FF24B9 F9FF1E88F4FF0CB1F9FF00DAFEFF00CDFEFF00ABFEFF0070FEFF003EFE99003E FE060000000000000000F1AC6949F2AC6957F1AC6957F2AC695780BCAFC214D5 F1FF00E3FEFF0EE8FEFF37EDFEFF3EC2FAFF2770F2FF2B77F3FF3786F4FF62BF F9FF53A8F7FF2468F2FF4FA2F6FF3179F3FF327DF3FF419AF6FF2978F3FF3EBF FAFF2681F4FF12A3F7FF00E1FEFF00D9FEFF00C3FEFF009FFEFF004FFED6003E FE2C0000000000000000F1AC6146F1AC6157F1AC6157F1AC62575FC4C0E815DA EFFF07E7FEFF26EBFEFF4EEFFEFF55D1FBFF3E91F5FF52A7F7FF56A8F7FF77CF FBFF74C9FAFF468FF5FF72C6FAFF54A2F7FF5FB5F9FF5AB5F8FF3E91F5FF40A2 F7FF3091F5FF2497F6FF03E3FEFF00DEFEFF00CEFEFF00B4FEFF006BFEF10040 FE490000000000000000F1AC5937F1AC5957E6A75069B9973AB27E9E5AFD599F 5FFF499D5DFF579F5DFF65A05DFF6CA15DFF73A25DFF77A25DFF7AA25DFF88BF 94FFA4F6FDFFA5F6FEFFA3F6FEFFA0F6FEFF9AF5FEFF75CFFAFF51ABF8FF6DCD C9FF63A05EFF589F5DFF479D5DFF429B5DFF42965DFF428E5DFF42785DFF5269 36C46972008F69720026F1AC5224F1AC5156EDAA4F5CC09733AD97861AFF8980 12FF697200FF697200FF697200FF697200FF697200FF697200FF697200FF6D7B 11FFA0E1D4FFABF7FEFFAAF7FEFFA7F6FEFF95E8FDFF448DF5FF2569F1FF55AF E9FF6B8628FF697200FF697200FF697200FF697200FF697200FF697200FF6972 00FF697200FB69720091F1AC470EF1AC4847F1AC4857D9AF576E869740FF9686 18FF747706FF688F39FF71B482FF7AB582FF81B582FF86B682FF7CA780FF7EA7 80FF91C4B1FFAFF4FCFFB1F7FEFFAEF7FEFF66AFF8FF2265F2FF2569F2FF5DB9 F9FF74CCB2FF697C14FF687302FF3EA167FF0CD1DFFF0EC3DAFF0EA3DAFF1A79 BD956972002C6972002AF1AC4502F1AC412DF1AC4157E0AF4D6565BA8DFC908E 27FF89800EFF6E8522FF7BE6E3FF8CF4FEFF9AF5FEFFA3F6FEFF61A9F7FF4286 F4FF4A8DF5FF8FD1FBFFB4F8FEFFA4EAFDFF2E72F3FF2063F1FF408BF4FF82E7 FDFF79ECF1FF6AA260FF697200FF617B13FF0DD1DDFF00D3FEFF00B0FEFF0082 FE6E000000000000000000000000F1AD3B04F1AD3847EEAD395861CCABEB71B3 75FF978713FF877F0BFF749C4FFF8BE9E8FF9CF6FEFFA5F6FEFF93DDFCFF3B7F F4FF2164F1FF3577F3FF9FE2FCFF5B9EF6FF2164F1FF266AF2FF81D9FCFF8EF4 FFFF7AF2FEFF66E5E6FF667F1AFF697200FF469452FF07CCECFF00B2FEF4008C FE4D00000000000000000000000000000000F1AD321BF1AD304E80C68FC85DD1 B0FF8E9938FF968610FF828212FF81BA8AFF9BF5FEFFA4F6FEFFAAF5FEFF7FC6 FAFF2164F1FF2164F1FF4184F4FF2E71F2FF2164F1FF529DF6FF99F5FEFF8DF4 FFFF79F2FEFF62F0FEFF55B486FF677506FF62780FFF25AEA3FF00B3FEDA0097 FE300000000000000000000000000000000000000000F0AD291CB5BA5A8A5CD2 AFF87BC793FF939327FF96860DFF89830FFF92D7C1FFA0F5FDFFA8F7FFFFADF7 FEFF60A6F7FF2467F2FF2164F1FF2164F2FF3C83F4FF86CED7FF80B682FF7AB5 82FF6FB382FF64B282FF54A870FF627E19FF697200FF5D7B1AFF0EA9DCA300A5 FE080000000000000000000000000000000000000000F0AD2601D5B239396ECC 99D46FD5AFFF8AB66CFF96880FFF96880EFF96A249FF9EE5D9FFA3F6FFFFA8F7 FFFF9AE4FDFF4388F4FF2164F1FF2164F1FF6FBEF9FF96EBEDFF72913BFF6A73 00FF697200FF697200FF697200FF697200FF697200FF697200FF5B7A219A6972 00060000000000000000000000000000000000000000000000000000000040D5 C05053D9BDFB7AD7B0FF92D4A5FF9ED6A5FFA9D7A6FFAFDBAFFFA9E9D7FFA3F3 F4FFA3F6FEFF9AEBFDFF86D7FCFF82D4FBFF98F4FEFF92F5FFFF82E9E9FF72D3 C1FF5FD1BFFF49CFBFFF26CBBFFF1AC7BFFF1ABDBFFD1DAEB6AF697200336972 00090000000000000000000000000000000000000000000000000000000000E5 FE0616E4EFAD53DECAFE87D8AEFF96DAADFFA3DBADFFAADCADFFB0DDAFFFAEE2 BFFFA2EEE8FF9BF5FDFF99F5FFFF96F5FFFF8FF4FFFF87F4FFFF79F3FFFF69F1 FFFF4DEEFEFF2CECFEFF04E6FEFF00DFFEFF00D1FED900C5FE38000000000000 0000000000000000000000000000000000000000000000000000000000000000 000001E7FE1C0EE8FEA947E5E2FF76DEC0FF94DAADFF9EDAABFFA6DBABFFA9DB ABFFACDCADFFA5E2C0FF94EDE6FF89F1F7FF7EF3FFFF75F2FFFF64F1FFFF50EF FFFF2EECFEFF0EE8FEFF00E1FEFF00D9FEE686BA7545D5AE2501000000000000 0000000000000000000000000000000000000000000000000000000000000000 00000000000002E7FE1E17EAFDBB39EAF5FD66E5D9FF87DDB8FF99DAA9FF9EDA A9FFA1DBA9FFA2DBA9FF9EDDAFFF94E1BFFF7DE9DEFF65EEF5FF4BEEFFFF34ED FFFF10E9FEFF01E4FEFF01DCFCDE57C6A35EE2AD151400000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000BE8FE0E10E9FE7127EBFEE13BEDFCFD5BE8E3FF73E2 CAFF83DDB7FF8BDAADFF8DD9A8FF89D8A7FF82D8A7FF77D7A9FF59DABAFF3BDC C9FF2FD8CBF453CDA5C4BBB53841ECAC061A0000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000008E8FE0312E9FE3B17EAFE8D26EBFEEC33EC FCFF42E9F1FF4BE7E6FF52E2D7FF55DFCBFF51DCC1FF47DABEFF3CD8C0F640D4 B9BEA9BB485ED0B22027EEAC0209EEAC03010000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000008E8FF0B0BE9 FF3C0EE8FF770EE9FF950AE8FFA406E8FF9F00E6FF8100E4FF5800E2FF170000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 00000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFF007FFF80000FFF000 007FC000003F8000001F0000000F0000000F0000000700000003000000030000 00030000000000000000000000000000000380000003C0000003E0000003E000 0003F8000003F800000FFC00000FFE00001FFF00003FFF80003FFFF007FFFFFF FFFFFFFFFFFFFFFFFFFF28000000100000002000000001002000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000AEBB009D6A7300FF6B7300FF6B73 00FF6B7300FF6A7300FF6B7300FF6B7300FF8A9400C6EBFF0004000000000000 0000236BFF18236BFFF0236BFFCF236BFF06ECFF000E7A8500DF6B7400FF6B74 00FF6B7400FF6B7400FF6B7400FF6B7400FF6B7400FFE0F3007A000000000000 0000226AFF9E2165F2FF2165F2FF226AFF8100000000ECFF00406C7500FC6B74 00FF6B7400FF6B7400FF6B7400FF6B7400FF6B7400FF6E7700F8ECFF0031226A FF362166F4FD2165F2FF2165F2FF226AFFAD0000000000000000B2FFEA517AC9 FF847BCAFF7D9AEAFD76B2FFE661ECFF003DECFF003DECFF003DCFFF6F26226A FFC62165F2FF2165F2FF2269FCF5226AFF210000000000000000226AFF12226A FFE12165F2FF2165F2FF2269FDF4226AFF2A0000000000000000226AFF5E2165 F2FF2165F2FF2165F2FF226AFF7D00000000000000000000000000000000226A FF3E2166F5FC2165F2FF2165F2FF226AFFD0226AFF08226AFF0E226AFFE52165 F2FF2165F2FF226AFFDA226AFF08000000000000000000000000000000000000 0000226AFF822265F2FF2165F2FF2265F2FF226AFF91236AFF892165F2FF2265 F2FF2165F2FF236AFF4A00000000000000000000000000000000000000000000 0000236BFF04236BFFC42165F1FF2165F1FF2165F2FE2167F6FA2165F1FF2165 F1FF236BFFAF0000000000000000000000000000000000000000000000000000 000000000000236BFF21236BFFEF2165F1FF2165F1FF2165F1FF2165F1FF2269 FBF5236BFF200000000000000000000000000000000000000000000000000000 00000000000000000000236BFF582165F1FF2165F1FF2165F1FF2165F1FF236B FF7C000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000236BFF8C236BFFCD236BFFD6236BFFC5236B FF08000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000FFFFAC41FFFFAC41FFFFAC410030 AC410030AC418000AC41C000AC41C0C1AC41E001AC41F003AC41F007AC41F807 AC41FC0FAC41FE0FAC41FFFFAC41FFFFAC41 } OnMouseDown = FormMouseDown OnMouseUp = FormMouseUp OnMouseWheel = FormMouseWheel OnMouseWheelDown = FormMouseWheelDown OnMouseWheelUp = FormMouseWheelUp LCLVersion = '1.6.0.4' object Label1: TLabel Left = 16 Height = 18 Top = 16 Width = 277 Caption = 'Scroll your mouse wheel to change the value.' ParentColor = False end object lblDirection: TLabel Left = 16 Height = 23 Top = 48 Width = 73 Caption = 'Direction' Font.Height = -17 ParentColor = False ParentFont = False end object lblAmount: TLabel Left = 168 Height = 28 Top = 72 Width = 12 Caption = '0' Font.Height = -21 ParentColor = False ParentFont = False end object Label2: TLabel Left = 16 Height = 28 Top = 72 Width = 145 Caption = 'Scroll Amount:' Font.Height = -21 ParentColor = False ParentFont = False end object Label3: TLabel Left = 32 Height = 18 Top = 112 Width = 102 Caption = 'Contents of Shift' ParentColor = False end object Label4: TLabel Left = 232 Height = 18 Top = 136 Width = 42 Caption = 'Label4' ParentColor = False end object Memo1: TMemo Left = 24 Height = 96 Top = 136 Width = 156 Lines.Strings = ( 'Memo1' ) TabOrder = 0 end object Label5: TLabel Left = 233 Height = 18 Top = 112 Width = 105 Caption = 'MouseUp/Down?' ParentColor = False end end -------------- next part -------------- A non-text attachment was scrubbed... Name: frm1.pas Type: text/x-pascal Size: 4120 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: proj_mouse_wheel.ico Type: image/vnd.microsoft.icon Size: 15086 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: proj_mouse_wheel.lpi Type: text/xml Size: 2356 bytes Desc: not available URL: -------------- next part -------------- program proj_mouse_wheel; {$mode objfpc}{$H+} uses {$IFDEF UNIX}{$IFDEF UseCThreads} cthreads, {$ENDIF}{$ENDIF} Interfaces, // this includes the LCL widgetset Forms, frm1 { you can add units after this }; {$R *.res} begin RequireDerivedFormResource := True; Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end. -------------- next part -------------- A non-text attachment was scrubbed... Name: proj_mouse_wheel.lps Type: text/xml Size: 4093 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: proj_mouse_wheel.res Type: application/octet-stream Size: 16648 bytes Desc: not available URL: