* * *

Recent Posts

Pages: [1] 2 3 ... 10
1
IDE/CodeTools / Re: Keeping track of project statistics - timings
« Last post by GetMem on Today at 04:23:19 pm »
Thanks @Martin_fr, @Taazz for the feedback. I already started developing the package. Few details:
1. The package name is ProjectStatistic.lpk
2. It will be part of the Online Package Manager not CCR. Every major package from CCR is already ported to OPM
3. After install it can be accessed through Lazarus Menu-->Project-->Project Statistics(Ctrl + Shift + F12), just below project option(see attached image)
4. The timing is done with a worker thread
5. The statistics is loaded/saved from/to the *.lpi file
6. After a few short test, I was able to hook both the sourceeditor and the designer. The question is what happens when the main form is in focus(where the menu and component palette is) or the object inspector or any other window? In which timing category falls the main window?
7. Apparently it's possible to implement everything from the package itself, without changing the IDE source or IDEintf
2
LCL / Re: Multiple TEditMask issues
« Last post by SymbolicFrank on Today at 04:13:14 pm »
Sorry! Hasty post.  :-[

It's on Windows 7, 64-bit.
3
LCL / Re: Defaults.
« Last post by taazz on Today at 04:08:12 pm »
The defaults are taken from the widgetset defaults. That is independent of Lazarus but governed by your OS (widgetset) theme and differs across platforms.
True and lazarus knows how exactly what colors to use? And it must know because If I set a brush to cldefault eg in a TCustomcontrol descentant I get a black background not a white as it should be in my windows theme.
In the case of both font and color, you just have to set that once as long parentfont and parentcolor are true.
set it to what value? Keep in mind they are already on default.
4
Third party / Re: WIN64 RTL patch using INTEL SIMD
« Last post by Thaddy on Today at 04:04:29 pm »
Mem manager multithreaded from 70seconds to 4seconds

check www.dellapasqua.com

please feel free to test it or join me to enlarge it with many functions from IPP Intel

Best regards

Roberto Della Pasqua
(does somebody wants join me to add other IPP functions to the RTL of Delphi/FPC?)

Roberto, the internals of the FPC memory manager are not Delphi compatible... Delphi has a much simpler (and more correct*) model, whereas FPC's model needs a size field to be filled in. (That's duplicate code...)
It is probably doable to translate, though. (For silly folks, I am not talking about actual code, but about some very low level architecture detail)
Note that the overall performance of FPC's manager in pure Pascal has been proven superior to most, but not all,  pure Pascal Delphi ones.

Will have a look... And my daughter is coming to Italy tomorrow so be warned  8-)

*
 The issue is Delphi determines by definition slot size on allocation. No further bookkeeping required.
 Same - almost - goes for FPC, but that NEEDS to store the size of the allocation too...Why? No clue. Been complaining for neigh 20 years, I guess... But it is still fast.
 Actually I know why: some other implementation details in the compiler rely on the implementation details of the memory manager......
5
IDE/CodeTools / Re: Keeping track of project statistics - timings
« Last post by taazz on Today at 04:03:24 pm »
actually the info required are minimal focus changed to designer/editor/object inspector/debug windows etc, debugging started/ended (either normally or by resetting it), application.idle, focused, lost focus etc. and the package will have its own api that others can use.

SourceEditorIntf afaik has an event that can trigger on focus, and on any change (including scroll and caret) to detect activity (except: staring at code in disbelieve)

Not sure about the others.
Taking advantage of the static linking nature of fpc the application.addXXXXXhandler can be used to support application changing from a package, assuming that the forms units and the application in there is used from the IDE it self. The Screen.OnActiveFormChange event can be used to monitor changes between forms inside the IDE. That leaves the start/stop debugging.
6
General / Re: Pass class by type
« Last post by SymbolicFrank on Today at 03:59:56 pm »
Fixed a quick bug: in Unit1.TForm1 it should be: MyProcess: TNewProcess;

I reuploaded a fixed version.
7
General / Re: find word in string
« Last post by ahiggins on Today at 03:56:58 pm »
my clumsy attempt, i'm sure there must be a more elegant way

Code: Pascal  [Select]
  1.  
  2. function CountOccurences( const SubStr: string; const Str: string): Integer;
  3. var
  4.   Count : Word = 0;  // word count
  5.   I     : Word = 1;  // string index
  6.   L     : Word;     //length of sub str
  7. begin
  8.      L:=Length(SubStr);
  9.      While I > 0 do
  10.      begin
  11.           I:=PosSetEx(SubStr,Str,I);
  12.           If  I > 0 Then
  13.            begin
  14.                 Inc(I,L);
  15.                 Inc(Count);
  16.            end;
  17.      end;
  18.  
  19.      Result:=Count;
  20. end;
  21.  
  22.  

8
General / Re: Pass class by type
« Last post by Thaddy on Today at 03:56:52 pm »
Ok, now I something to work with  ::)
9
General / Re: Pass class by type
« Last post by SymbolicFrank on Today at 03:54:13 pm »
Ok, I made all the strings constant and a demo project.

Edit: fixed a bug.
10
LCL / Re: Defaults.
« Last post by Thaddy on Today at 03:54:00 pm »
The defaults are taken from the widgetset defaults. That is independent of Lazarus but governed by your OS (widgetset) theme and differs across platforms.
In the case of both font and color, you just have to set that once as long parentfont and parentcolor are true.
Pages: [1] 2 3 ... 10

Recent

Get Lazarus at SourceForge.net. Fast, secure and Free Open Source software downloads Open Hub project report for Lazarus