Re: [Lazarus] Lazarus and Application.ProcessMessages
On 12/4/2014 10:24 AM, Lukasz Sokol wrote: (OnTimer execution has the same problem : inevitably splits the procedure into more procedures, that can no longer use same local variables and stuff) you can't make them subroutines of the subroutine? eg: program foobie; procedure dofoobie; var thisfoo : integer = 0; thatfoo : integer = 0; procedure littlefoobie; begin inc(thisfoo,thatfoo); inc(thatfoo); end; begin repeat begin littlefoobie; writeln(thisfoo,'',thatfoo); end; until thisfoo >= 25; end; begin dofoobie; end. -- 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. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Default debug mode and internal debugger
On Thu, 4 Dec 2014 19:21:34 +0100 Reimar Grabowski wrote: > On Thu, 4 Dec 2014 16:29:59 +0100 > Mattias Gaertner wrote: > > > Or add a capability flag to the debugger class for external debug > > symbols. If the current debugger does not support it, the IDE does not > > pass the flag. > Sounds better, do this. :) Done. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Default debug mode and internal debugger
On Thu, 4 Dec 2014 16:29:59 +0100 Mattias Gaertner wrote: > Or add a capability flag to the debugger class for external debug > symbols. If the current debugger does not support it, the IDE does not > pass the flag. Sounds better, do this. :) R. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Default debug mode and internal debugger
On Thu, 04 Dec 2014 17:55:11 + Tony Whyman wrote: > GDB on Ubuntu 14.04 > > A typical problem is when evaluating a symbol that belongs to the > current class (e.g. FMyVariable), then inspecting FMyVariable gives > "symbol unknown" while "self.FMyVariable" works. When I saw the post, I > assumed it was the same problem. Sounds unrelated. Can you check if this bug still exists in trunk (1.3)? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus and Application.ProcessMessages
2014-12-04 18:20 GMT+01:00 Paul Breneman : > On 12/03/2014 04:51 PM, Paul Breneman wrote: > >> On 12/03/2014 04:37 PM, Terry A. Haimann wrote: >> >>> I have a program that starts some background processes and then needs to >>> go to sleep for 15 seconds or so and then come back and check on their >>> statuses. So I used a loop like the following: >>> >>> EndTime := Now + EncodeTime(0, 0, 15, 0); >>> While Now < EndTime do >>>Application.ProcessMessages; >>> >>> The problem is that the core this process runs on is running 60-80% cpu >>> utilization. Is there away to do something like this and not max the >>> core out? This computer is an i5 Desktop running Linux Mint 17-64. >>> >>> Thanks in advance,T. >>> >> >> The quickest thing to do is to put Sleep(10) inside the while loop. That >> will help you get longer battery life on a laptop and a cooler CPU! >> >> But I would normally use a separate thread. There are a number of >> examples here (see ExThread---): >>http://turbocontrol.com/APro.htm >> If you search CodeNewsFast you might be able to turn up a number on >> explanations on why I recommend using a separate thread. >> >> Regards, >> Paul >> www.TurboControl.com >> > > I'm replying a second time as my first reply didn't get posted (yet). > > Here is a message that has my (old) summary: :) > http://codenewsfast.com/cnf/article/0/permalink.art-ng1824q786 FWIW, your previous message did reach me: Received: by 10.152.234.229 with SMTP id uh5csp19639lac; Wed, 3 Dec 2014 14:51:27 -0800 (PST) -- Frederic Da Vitoria (davitof) Membre de l'April - « promouvoir et défendre le logiciel libre » - http://www.april.org -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Default debug mode and internal debugger
GDB on Ubuntu 14.04 A typical problem is when evaluating a symbol that belongs to the current class (e.g. FMyVariable), then inspecting FMyVariable gives "symbol unknown" while "self.FMyVariable" works. When I saw the post, I assumed it was the same problem. On 04/12/14 17:48, Mattias Gaertner wrote: On Thu, 04 Dec 2014 17:11:37 + Tony Whyman wrote: It would be useful if someone could post a fix as I am getting this problem all the time with 1.2.6. 1.2.6 does not have components/lazdebugger. What debugger do you mean? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Default debug mode and internal debugger
On Thu, 04 Dec 2014 17:11:37 + Tony Whyman wrote: > It would be useful if someone could post a fix as I am getting this > problem all the time with 1.2.6. 1.2.6 does not have components/lazdebugger. What debugger do you mean? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus and Application.ProcessMessages
On 12/03/2014 04:51 PM, Paul Breneman wrote: On 12/03/2014 04:37 PM, Terry A. Haimann wrote: I have a program that starts some background processes and then needs to go to sleep for 15 seconds or so and then come back and check on their statuses. So I used a loop like the following: EndTime := Now + EncodeTime(0, 0, 15, 0); While Now < EndTime do Application.ProcessMessages; The problem is that the core this process runs on is running 60-80% cpu utilization. Is there away to do something like this and not max the core out? This computer is an i5 Desktop running Linux Mint 17-64. Thanks in advance,T. The quickest thing to do is to put Sleep(10) inside the while loop. That will help you get longer battery life on a laptop and a cooler CPU! But I would normally use a separate thread. There are a number of examples here (see ExThread---): http://turbocontrol.com/APro.htm If you search CodeNewsFast you might be able to turn up a number on explanations on why I recommend using a separate thread. Regards, Paul www.TurboControl.com I'm replying a second time as my first reply didn't get posted (yet). Here is a message that has my (old) summary: :) http://codenewsfast.com/cnf/article/0/permalink.art-ng1824q786 -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Default debug mode and internal debugger
It would be useful if someone could post a fix as I am getting this problem all the time with 1.2.6. On 04/12/14 15:29, Mattias Gaertner wrote: On Thu, 4 Dec 2014 16:11:54 +0100 Reimar Grabowski wrote: Hi, if you let the IDE create debug and release build modes for you the resulting debug mode sets the -Xg flag (GDB external debug symbols file). The internal debugger does not work with this set and complains about not finding debug symbols. Perhaps the default debug mode should not set this flag so that both debuggers get at least the chance to work. Or add a capability flag to the debugger class for external debug symbols. If the current debugger does not support it, the IDE does not pass the flag. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] FPC 2.7.1 and console output
On Thu, 04 Dec 2014 16:06:48 +0100 Hans-Peter Diettrich wrote: >[...] Mattias Gaertner schrieb: > > On Thu, 04 Dec 2014 07:00:59 +0100 > > Hans-Peter Diettrich wrote: > > > UTF8Console is needed, when your source is UTF-8, but the compiler > > thinks it is Windows CP. UTF8Console is defined in LazUTF8. > > An alternative is UTF8Decode. > > Thanks :-) > > >> Just tested on WinXP: > >> > >> program test; > >> var a: AnsiString; > >> begin > >>a := 'äöü'; > >>WriteLn(a,'äöü'); > >> end; > >> > >> works differently with file encoding Ansi, UTF-8 and UTF-8bom. The > >> latter correctly shows 'äöüäöü', else a mix of several encodings shows > >> up in the console. > > > > I see. > > Only after testing the string encodings I found out that $codepage does > not affect CP_ACP, this was unclear to me before. A new Lazarus version > instead may try to set DefaultSystemCodePage to UTF-8, in order to > preserve compatibility with the current assumption about UTF-8 encoding > with AnsiStrings. Yes, this fixes many problems. OTOH it create some new (e.g. ThousandSeparator). > > Indeed I never tried passing a constant in writeln. > > You never wrote text or separtors? I meant my tests with fpc 2.7.1. ;) > > Does Delphi also pass constants unconverted to writeln? > > Delphi does not convert anything in console output, the user must > convert everything to CP_OEM :-( Same as fpc 2.6.4. What function do Delphians use? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Default debug mode and internal debugger
On Thu, 4 Dec 2014 16:11:54 +0100 Reimar Grabowski wrote: > Hi, > > if you let the IDE create debug and release build modes for you the resulting > debug mode sets the -Xg flag (GDB external debug symbols file). > The internal debugger does not work with this set and complains about not > finding debug symbols. > Perhaps the default debug mode should not set this flag so that both > debuggers get at least the chance to work. Or add a capability flag to the debugger class for external debug symbols. If the current debugger does not support it, the IDE does not pass the flag. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus and Application.ProcessMessages
Hi, (for md as well as Michael) On 04/12/14 08:35, Michael Schnell wrote: > On 12/03/2014 11:37 PM, Terry A. Haimann wrote: >> I have a program that starts some background processes and then >> needs to go to sleep for 15 seconds or so and then come back and >> check on their statuses. > > A "more decent" way is to leave the current event and use a TTimer > (e.g. with en event counting down seconds) and do the necessary stuff > in the timer event. > But sometimes it's totally not practical and worse than that, unmaintainable to split the set order of execution of the startup procedure like that... Executing a thread, which would TOO contain Sleep() in its Execute, and then calling into next part of the startup procedure ? (OnTimer execution has the same problem : inevitably splits the procedure into more procedures, that can no longer use same local variables and stuff) (say I need to load some library in OnCreate (or even in initialization), [or be it that I want to load a library on demand, when user wants to use a feature] that in turn takes some time to initialize itself and does not work properly if called before some time passes; or if it's clever(er) gives us a status call; but no other calls may be used in further of my program until the init is complete; but I don't want the form to freeze while init is going on, but rather have e.g. a progress bar, and maybe an error message on timeout;) Or e.g. I run FindFirst/FindNext loop over a large number of files, or even if I delegate reading of a file to another procedure, still takes time while nothing else can happen... (although /that/ actually I can imagine doing in a thread). Then such Application.ProcessMessages is about the only option ? > -Michael > Lukasz -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] FPC 2.7.1 and console output
Mattias Gaertner schrieb: On Thu, 04 Dec 2014 07:00:59 +0100 Hans-Peter Diettrich wrote: UTF8Console is needed, when your source is UTF-8, but the compiler thinks it is Windows CP. UTF8Console is defined in LazUTF8. An alternative is UTF8Decode. Thanks :-) Just tested on WinXP: program test; var a: AnsiString; begin a := 'äöü'; WriteLn(a,'äöü'); end; works differently with file encoding Ansi, UTF-8 and UTF-8bom. The latter correctly shows 'äöüäöü', else a mix of several encodings shows up in the console. I see. Only after testing the string encodings I found out that $codepage does not affect CP_ACP, this was unclear to me before. A new Lazarus version instead may try to set DefaultSystemCodePage to UTF-8, in order to preserve compatibility with the current assumption about UTF-8 encoding with AnsiStrings. Indeed I never tried passing a constant in writeln. You never wrote text or separtors? Does Delphi also pass constants unconverted to writeln? Delphi does not convert anything in console output, the user must convert everything to CP_OEM :-( {$codepage UTF8} requires UTF-8 file encoding as well, doesn't compile when stored as Ansi. What do you mean with "doesn't compile"? What compiler error? Hmm, until yesterday the error message was "illegal character..." - or was it "file I/O error"? - with non-ASCII characters in string literals. Just tested, the error has disappeared, instead garbage is displayed at runtime. Now string literals seem to be stored as UTF-8 (file encoding), with 0 (CP_ACP) for the encoding. That means that the UTF-8 bytes are treated at runtime as being DefaultSystemCodePage characters. You certainly can imagine what happens in a conversion of these bytes into a different encoding :-( DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Default debug mode and internal debugger
Hi, if you let the IDE create debug and release build modes for you the resulting debug mode sets the -Xg flag (GDB external debug symbols file). The internal debugger does not work with this set and complains about not finding debug symbols. Perhaps the default debug mode should not set this flag so that both debuggers get at least the chance to work. R. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Need testers for the a new debugger
On Thu, 4 Dec 2014 15:56:14 +0100 Reimar Grabowski wrote: > On Sat, 22 Nov 2014 02:33:45 +0100 > Mattias Gaertner wrote: > > > On Fri, 21 Nov 2014 23:51:13 +0100 > > Mattias Gaertner wrote: > > > > > On Fri, 21 Nov 2014 16:31:26 +0100 > > > Reimar Grabowski wrote: > > >[...] > > > > Create new project -> run -> stop -> AV. > > > > The Assembler window initialized only if it was not docked. I fixed > > that. The AV is gone. > > Then I got an AV when closing the IDE. The destructor didn't clean up > > the queued async calls. I fixed that. > > Without the AVs you can see the mem leaks. I fixed the three mem leaks. > > That does not fix the AV with the internal debugger for me but GDB is running > much better now and the assembler window is working. Check if you have enabled 'Reset debugger after each run'. That crashes the new debugger. Disable it. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Need testers for the a new debugger
On Sat, 22 Nov 2014 02:33:45 +0100 Mattias Gaertner wrote: > On Fri, 21 Nov 2014 23:51:13 +0100 > Mattias Gaertner wrote: > > > On Fri, 21 Nov 2014 16:31:26 +0100 > > Reimar Grabowski wrote: > >[...] > > > Create new project -> run -> stop -> AV. > > The Assembler window initialized only if it was not docked. I fixed > that. The AV is gone. > Then I got an AV when closing the IDE. The destructor didn't clean up > the queued async calls. I fixed that. > Without the AVs you can see the mem leaks. I fixed the three mem leaks. That does not fix the AV with the internal debugger for me but GDB is running much better now and the assembler window is working. R. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Component palette GUI
On Thu, 4 Dec 2014 14:02:41 +0200 Juha Manninen wrote: >[...] > Now I noticed that my last commit, a DebugLn at the beginning of > UpdateIDEComponentPalette crashes Lazarus when changing project. > How can that be? It is only a DebugLn! fLastCompPaletteForm points to a freed object. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Component palette GUI
On Thu, Dec 4, 2014 at 1:31 AM, Mattias Gaertner wrote: > On Wed, 3 Dec 2014 21:35:48 +0200 > Juha Manninen wrote: > >>[...] >> In the actual GUI generation part I had to call >> Application.ProcessMessages; just after creating / deleting buttons > > Fixed. Thanks. I removed it and the DisableCompPaletteProcMsg define. I still wonder how it worked earlier. I added more debug messages to MainIDE methods calling palette update. fLastCompPaletteForm and/or LastFormActivated are updated wrong and/or OnDesignerActivated is not called when it should on Windows. On Linux with GTK2 and with QT everything works well. I don't know how the widgetset can affect that. I copied some debug output below. First a DataModule is activated, buttons are hidden. Then I switched focus between Form and DataModule by clicking them. Only OnControlSelectionFormChanged is called but no OnDesignerActivated. UpdateIDEComponentPalette returns early, palette is not updated. Note, at the same time Object Inspector is updated correctly. Finally OnDesignerActivated was called and buttons appeared when I selected the Form's source editor and pressed F12. Anyway, this problem on Windows is not caused by my changes. Earlier it was maybe covered by the extra calls to palette's update. Even then it was triggered for John Whitten for some reason (issue #25224). Now I noticed that my last commit, a DebugLn at the beginning of UpdateIDEComponentPalette crashes Lazarus when changing project. How can that be? It is only a DebugLn! Juha --- *** ** TMainIDE.OnDesignerActivated: Calling UpdateIDEComponentPalette(true) ** * TMainIDE.UpdateIDEComponentPalette, fLastCompPaletteForm=_Designer_CompPaletteOptionsFrame:TFrameDesignerForm, LastFormActivated=_Designer_DataModule1:TNonControlDesignerForm * TMainIDE.UpdateIDEComponentPalette: Updating palette *, HideControls=True TComponentPalette.CreatePagesFromUserOrder HideControls=True TComponentPalette.CreatePagesFromUserOrder HideControl=True aVisibleCompCnt=3 TComponentPalette.CreateButtons PAGE=Standard PageIndex=0 TComponentPalette.CreateOrDelButton Keep Button: TMainMenu PaletteBtn0_0_TMainMenu :TScrollBox TComponentPalette.CreateOrDelButton Keep Button: TPopupMenu PaletteBtn0_1_TPopupMenu :TScrollBox TComponentPalette.CreateOrDelButton Destroy Button: TButton PaletteBtn0_2_TButton [... Destroy many buttons ...] TComponentPalette.CreateOrDelButton Destroy Button: TFrame PaletteBtn0_16_TFrame TComponentPalette.CreateOrDelButton Keep Button: TActionList PaletteBtn0_17_TActionList :TScrollBox TComponentPalette.ReAlignButtons START Standard Visible=True ClientWidth=1448 TComponentPalette.ReAlignButtons ButtonTree.Count=3 ScrollBox.ControlCount=19 ScrollBox.Bounds=l=0,t=0,r=1428,b=28 VertScrollBar.Size=21 ClientSizeWithoutBar=1428 IsScrollBarVisible=False HorzScrollBar.Size=21 Page=528 Range=528 IsScrollBarVisible=False TComponentPalette.ReAlignButtons PaletteBtn0_0_TMainMenu l=42,t=0,r=69,b=27 TComponentPalette.ReAlignButtons PaletteBtn0_1_TPopupMenu l=69,t=0,r=96,b=27 TComponentPalette.ReAlignButtons PaletteBtn0_17_TActionList l=96,t=0,r=123,b=27 TComponentPalette.UpdateNoteBookButtons: Restoring FPageControl.ActivePage=Standard TLazSourceFileManager.LoadLFM Creating designer for hidden component of C:\SW\LazTest\FindDialog\unit2.pas TLazSourceFileManager.InitOpenedProjectFile select form in designer: _Designer_DataModule1:TNonControlDesignerForm TDesigner *** ** TMainIDE.OnControlSelectionFormChanged: Calling UpdateIDEComponentPalette(true) ** * TMainIDE.UpdateIDEComponentPalette, fLastCompPaletteForm=_Designer_DataModule1:TNonControlDesignerForm, LastFormActivated=_Designer_DataModule1:TNonControlDesignerForm *** ** TMainIDE.OnControlSelectionFormChanged: Calling UpdateIDEComponentPalette(true) ** * TMainIDE.UpdateIDEComponentPalette, fLastCompPaletteForm=_Designer_DataModule1:TNonControlDesignerForm, LastFormActivated=_Designer_DataModule1:TNonControlDesignerForm *** ** TMainIDE.OnControlSelectionFormChanged: Calling UpdateIDEComponentPalette(true) ** * TMainIDE.UpdateIDEComponentPalette, fLastCompPaletteForm=_Designer_DataModule1:TNonControlDesignerForm, LastFormActivated=_Designer_DataModule1:TNonControlDesignerForm *** ** TMainIDE.OnControlSelectionFormChanged: Calling UpdateIDEComponentPalette(true) ** * TMainIDE.UpdateIDEComponentPalette, fLastCompPaletteForm=_Designer_DataModule1:TNonControlDesignerForm, LastFormActivated=_Designer_DataModule1:TNonControlDesignerForm *** ** TMainIDE.OnControlSelectionFormChanged: Calling UpdateIDEComponentPalette(true) ** * TMainIDE.UpdateIDEComponentPalette, fLastCompPaletteForm=_Designer_DataModule1:TNonControlDesignerForm, LastFormActivated=_Designer_DataModule1:TNonControlDesignerForm *** ** TMainIDE.OnDesignerActivated: Calling UpdateIDEComponentPalette(true) ** * TMainIDE.UpdateIDEComponentPalette, fLastCompPaletteForm=_Designer_DataModule1:TNonControlDesignerForm, LastFormActivated=_Designer_DataModule1:TNonControlDesignerForm *** ** TMainIDE.OnCon
Re: [Lazarus] FPC 2.7.1 and console output
On Thu, 04 Dec 2014 08:10:00 +0100 Hans-Peter Diettrich wrote: >[...] > >> Using UTF-8 sources *and* {$codepage UTF8} cures the unusable CP_ACP > >> encoding of string literals, they are converted as expected in immediate > >> output or when assigned to any AnsiString. Other settings cannot work > >> with the current handling of AnsiString :-( > > > > CP_ACP is usable with the DefaultSystemCodepage. > > Currently AnsiUpperCase etc. will work on Windows *only* if > DefaultSystemCodePage matches the WinAPI CP_ACP. Probably some other widestringmanager function have the same problem. And some other functions have some unneeded overhead for DefaultSystemCodePage CP_UTF8. Maybe the paswstring can be adapted. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] FPC 2.7.1 and console output
On Thu, 04 Dec 2014 07:00:59 +0100 Hans-Peter Diettrich wrote: >[...] > I included the code (readable by everybody), didn't transmit an file. > Also UTF8ToConsole seems not to exist any more in FPC 2.7.1, and should > not be required any more. > So I'm not sure what you mean :-( UTF8Console is needed, when your source is UTF-8, but the compiler thinks it is Windows CP. UTF8Console is defined in LazUTF8. An alternative is UTF8Decode. > Just tested on WinXP: > > program test; > var a: AnsiString; > begin >a := 'äöü'; >WriteLn(a,'äöü'); > end; > > works differently with file encoding Ansi, UTF-8 and UTF-8bom. The > latter correctly shows 'äöüäöü', else a mix of several encodings shows > up in the console. I see. Indeed I never tried passing a constant in writeln. Does Delphi also pass constants unconverted to writeln? > Using the default Lazarus file encoding (UTF-8 without BOM) requires to > add {$codepage UTF8}, to make the program (hopefully) work on either > platform. Well, it only works on platforms with 'äöü' in their console codepage. > {$codepage UTF8} requires UTF-8 file encoding as well, doesn't > compile when stored as Ansi. What do you mean with "doesn't compile"? What compiler error? > Adding SysUtils, and AnsiUpperCase for the WriteLn arguments, correctly > shows 'ÄÖÜÄÖÜ' in Ansi file encoding, but 'äöüäöü' in UTF8bom encoding, > garbage with UTF-8 file encoding, and again 'äöüäöü' with added > {$codepage UTF8}. Thanks. Confirmed. I will add AnsiUpperCase to the list. >[...] Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Component palette reordering
Another issue Juha, sorry. While closing project, if select form is Tdatamodule, form focused or not focused, Just selected Editor file is Tdatamodule, IDE save this project info, this is normal, but when reopen project, component palette showing filtered, and not change if select TForm, always filtered. If close selected form is tform then reopen project, filter is normal. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus and Application.ProcessMessages
On 12/03/2014 11:37 PM, Terry A. Haimann wrote: I have a program that starts some background processes and then needs to go to sleep for 15 seconds or so and then come back and check on their statuses. A "more decent" way is to leave the current event and use a TTimer (e.g. with en event counting down seconds) and do the necessary stuff in the timer event. -Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Thanks to FPC team: Record helper for primitive types!
On Thu, 4 Dec 2014, Marco van de Voort wrote: On Sat, Nov 29, 2014 at 06:32:13PM +0100, Michael Van Canneyt wrote: and get a list of appropriate methods. No more searching for IntToStr(), StrToDate, dateToStr... and so on: the IDE will tell you what you can use. For beginners, this really is an invaluable aid which cannot be underestimated. Morfik Appsbuilder had this already almost 10 years ago. (the first time I read this message, I thought you were being sarcastic :-) That is known to happen :-) But no, it is in fact serious. I myself was incredulous until I have seen it in action... Michael. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Code Browser
On 12/4/2014 12:42 AM, Hans-Peter Diettrich wrote: Lazarus 1.3 shows the codebrowser when I hit F1 on an unknown (incomplete...) identifier. That's a nice feature, but searching in the browser can become tedious. something that threw me off was when it was scanning code files... i don't know how long it took me to finally see the bar at the bottom of the screen and the numbers being updated as it advanced... When a unit is missing from a uses list, searching in the project files seems not to be the right choice, instead it seems to be required to search the FCL as well(?) - what takes a considerable time. Unfortunately the browser restarts the search as soon as I try to change the search string, before I finish typing :-( Suggestions: 1. Wait until the user presses "Rescan", optionally add an according (Auto Rescan) checkbox. 2. Add an Stop/Cancel button, that allows to stop the search (not closing the browser window!). 3. Add F1 and/or Help button for help on using the Code Browser. having recently run into this "new weird box" when hitting F1 and expecting the standard lhelp, i think i can agree with the above ;) -- 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. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus