Re: [Lazarus] Code Browser

2014-12-04 Thread waldo kitty

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


Re: [Lazarus] Thanks to FPC team: Record helper for primitive types!

2014-12-04 Thread Michael Van Canneyt



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] Lazarus and Application.ProcessMessages

2014-12-04 Thread Michael Schnell

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] Component palette reordering

2014-12-04 Thread FreeMan

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] FPC 2.7.1 and console output

2014-12-04 Thread Mattias Gaertner
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] FPC 2.7.1 and console output

2014-12-04 Thread Mattias Gaertner
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] Component palette GUI

2014-12-04 Thread Juha Manninen
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] Component palette GUI

2014-12-04 Thread Mattias Gaertner
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] Need testers for the a new debugger

2014-12-04 Thread Reimar Grabowski
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] Need testers for the a new debugger

2014-12-04 Thread Mattias Gaertner
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


[Lazarus] Default debug mode and internal debugger

2014-12-04 Thread Reimar Grabowski
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] FPC 2.7.1 and console output

2014-12-04 Thread Hans-Peter Diettrich

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


Re: [Lazarus] Lazarus and Application.ProcessMessages

2014-12-04 Thread Lukasz Sokol
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] Default debug mode and internal debugger

2014-12-04 Thread Mattias Gaertner
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] FPC 2.7.1 and console output

2014-12-04 Thread Mattias Gaertner
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

2014-12-04 Thread Tony Whyman
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] Lazarus and Application.ProcessMessages

2014-12-04 Thread 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


--
___
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Default debug mode and internal debugger

2014-12-04 Thread Mattias Gaertner
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] Default debug mode and internal debugger

2014-12-04 Thread Tony Whyman

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] Lazarus and Application.ProcessMessages

2014-12-04 Thread Frederic Da Vitoria
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

2014-12-04 Thread Mattias Gaertner
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] Default debug mode and internal debugger

2014-12-04 Thread Reimar Grabowski
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

2014-12-04 Thread Mattias Gaertner
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] Lazarus and Application.ProcessMessages

2014-12-04 Thread waldo kitty

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