Re: [Lazarus] about infobuild form development

2014-06-21 Thread FreeMan


21-06-2014 02:43 tarihinde, Mattias Gaertner yazdı:

Other people have already written similar tools. With selections
for FPC version, CPU, OS, processor, LCL widgetset, defines,
environment variables, etc.
I Couldn't find, if have a link I be glad, I don't wanna discover 
america one more :)


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


Re: [Lazarus] about infobuild form development

2014-06-20 Thread FreeMan

Please remove the commented code.
Thats okey, ' cos  //{$IFNDEF EnableOldExtTools}{$ERROR 
Obsolete}{$ENDIF} this line is work in InfoBuild.pp this mean this unit 
was included, and I check one more time without -dEnableCompInfoWnd param.

here is okey, next puzzle item;


You have to port all code depending on the infobuild unit. For
example the CompileProgress.
where is infobuild form show and / or other code?  not enough add 
infobuild in project isn't it? IDE not showing this form still.



I moved those lists to codetools.

Thank you. I'm still try infoBuild Show form.


The infobuild window was only shown when compiling, was
only showing information and was for the .. nostalgia.
You want a selector for your favorite settings (target OS and CPU).
That's a different thing. Personal things should go into a separate
package.
If I'm not wrong, this is not antique hellenic city name,, this is 
lazarus project, they can be use that, this them problem. I wanna make 
useful tool. I get one more idea too while writeing this message :)
I get one project, it will work on linux, w32, w64, osx (will future) 
and my IDE in linux. Project options set default cpu and os. First click 
build for linux. ok. for w32, open Project option, find config  target 
change cpu  os then click ok then compile third one bla bla same thing. 
If I can do my tool, all off them be in one form, just select cpu  os etc.
Last idea, (before end idea :) ) I'm using auto. inc. build number. I 
have to disable and re enable every time 'cos same project 4 diffrent 
version can see. this checkbox and/or can edded on infoBuild form too



If you fear those automatism, then you are doing something wrong.

yes, I'm fear, if I don't know how its work that automatism.
and next idea, It can be future of future design. if remember my 
screenshot, get imagination Stringlist on ınfoBuid form, I'll select cpu 
and os then click add button, and create a list, then click build 
AUTOMATIC all defined configuretion.


yes, separate package is good idea, I was started two comboxbox :) I'm 
still not show form, and I'm still riddle.

Thank you

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


Re: [Lazarus] about infobuild form development

2014-06-20 Thread Juha Manninen
FreeMan, you have misunderstood the purpose of infoBuild dialog. It only
shows information _during_ compilation, it is not meant for selecting what
will be compiled next.
Build modes solve your problems. In future it will be possible to select
many modes and compile all of them. It is not implemented yet, you
could create a GUI and implement it.

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


Re: [Lazarus] about infobuild form development

2014-06-20 Thread FreeMan
Juha, you misunderstood me, is there anybody NOT know this what about 
this form?

my opinion is what will be compile next ADD on this form
This is NOT for problem, just make practice use.

20-06-2014 20:11 tarihinde, Juha Manninen yazdı:
FreeMan, you have misunderstood the purpose of infoBuild dialog. It 
only shows information _during_ compilation, it is not meant for 
selecting what will be compiled next.
Build modes solve your problems. In future it will be possible to 
select many modes and compile all of them. It is not implemented yet, 
you could create a GUI and implement it.


Juha


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


Re: [Lazarus] about infobuild form development

2014-06-20 Thread Mattias Gaertner
On Fri, 20 Jun 2014 17:43:07 +0300
FreeMan freema...@delphiturkiye.com wrote:

[...]
  You have to port all code depending on the infobuild unit. For
  example the CompileProgress.
 where is infobuild form show and / or other code?  not enough add 
 infobuild in project isn't it? IDE not showing this form still.

The form was formerly shown with CompileProgress.CreateDialog.

I disabled all the CompileProgress code because the way how it counted
hints, notes, etc no longer works.
There are now counters for each tool (e.g. a call of fpc) and each
view (the filtered lines of a single tool). You can sum up them if
you want.

Mattias

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


Re: [Lazarus] about infobuild form development

2014-06-20 Thread Mattias Gaertner
On Fri, 20 Jun 2014 17:43:07 +0300
FreeMan freema...@delphiturkiye.com wrote:

[...]
 Project options set default cpu and os. First click 
 build for linux. ok. for w32, open Project option, find config  target 
 change cpu  os then click ok then compile third one bla bla same thing. 

As Juha wrote: Use Build Modes for that.
Build Modes can be switched with two mouse clicks. One to open the
list, one to select.


 If I can do my tool, all off them be in one form, just select cpu  os etc.

Other people have already written similar tools. With selections
for FPC version, CPU, OS, processor, LCL widgetset, defines,
environment variables, etc.


[...]
  If you fear those automatism, then you are doing something wrong.
 yes, I'm fear, if I don't know how its work that automatism.

Then read the docs and/or ask. Don't stay afraid.

The automatism is simple: if something has changed, invoke the compiler.

Mattias

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


[Lazarus] about infobuild form development

2014-06-19 Thread FreeMan

I'll changed mail subject.

19-06-2014 02:55 tarihinde, Mattias Gaertner yazdı:

What compiler directive?
A compiler directive is for example {$mode objfpc}.
Maybe you mean something else?

I was use antique hellenic city name, so I used to much that.
  {$IFNDEF EnableOldExtTools}ExtTools,{$ELSE}InfoBuild,{$ENDIF} if tell 
condition to compiler, its mean directive, never mind, I'm still not 
used to lazarus
Show compiler dialog check box removed from IDE options, so I need to 
active when IDE start compile, infobuild form have to show. I hope 
traslate my self :)



Select a message and right click / About ...
This will tell you what you compiled, how and why it was auto compiled.
I don't like auto thing,  its mean out of my control. and not just get 
info about compiled project. Project inspector always open on my 
desktop, just click to options from here, better then looking for menu 
item for me :)

Please describe what the infobuild window should do in your opinion.
Then we can probably give implementation hints.
I think you saw my form screenshot. Before removed, and if checked in 
IDE options. When IDE start compile job, this form was showing and give 
detail,when finish compiling, write success and if not selected auto 
close, its wait click to close.
My opinion start here, target os  cpu, debug info check box are there, 
so I'll see while compiling, not after finish and looking for any form 
any menu item. If I don't wanna  -T=default -P=default I'll abort 
compiling in this form, and change cpu or os from combobox, maybe remove 
or add debug info too, and click to compile or build button, all of them 
in same form, so I don't need looking for in menu or options, for cross 
compile jobs



-compiler_config_target.pas  has in what I need,
What do you need?

I can add events. What events do you need?
1-) In compiler_config_target.pas,   TargetOSComboBox  
TargetCPUComboBox adding items, this can be in include file or public 
procedure, without class. For TargetCPUComboBox too.

example:
procedure TargetOSComboBox_Fill_Items(aItems : Tstringlist);
begin
aItems.Add('(' + lisDefault + ')');
aItems.Add('Darwin');
aItems.Add('FreeBSD');

2- I need this procedures too but out TCompilerConfigTargetFrame class
  procedure UpdateByTargetOS(aTargetOS: string);
  procedure UpdateByTargetCPU(aTargetCPU: string);


3-) I need ReadSettings writeSetting from project options. Why I need, 
when open infobuild form, I have to set saved settings so set selected 
combobox items. why write, readed win32 changed to linux and click 
to compile, If I'm not wrong, compiler classes, read settings before 
start compile and build compiler parameter. so I need to writesettings.


4-) Need Main menu Items Compile  Build click events, not sure but have 
Tactionlist I think. Will add this to build  compile buttons


5-) need raise error check. infobuild how to show or create, that lines 
have to check, 'cos infobuild can showing still. This mean clicked 
compile button ln infobuild, so no need the trigger show or create 
infobuild form.


Please don't misunderstand me, I'm not say do this, I have to do this, 
but all of them part of IDE, I can not change big system for my 
opinions, so I need yours helps. This small changing can be practice use 
for other users too.

Thank you

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


Re: [Lazarus] about infobuild form development

2014-06-19 Thread Mattias Gaertner
On Thu, 19 Jun 2014 11:37:19 +0300
FreeMan freema...@delphiturkiye.com wrote:

 I'll changed mail subject.
 
 19-06-2014 02:55 tarihinde, Mattias Gaertner yazdı:
  What compiler directive?
  A compiler directive is for example {$mode objfpc}.
  Maybe you mean something else?
 I was use antique hellenic city name, so I used to much that.
{$IFNDEF EnableOldExtTools}ExtTools,{$ELSE}InfoBuild,{$ENDIF} if tell 
 condition to compiler, its mean directive, never mind, I'm still not 
 used to lazarus
 Show compiler dialog check box removed from IDE options, so I need to 
 active when IDE start compile, infobuild form have to show. I hope 
 traslate my self :)

You can do the following:
Add a flag to configure build lazarus dialog. For example
-dEnableCompInfoWnd

Then replace each

{$IFNDEF EnableOldExtTools}Something{$ELSE}InfoBuild,{$ENDIF}

with

{$IFNDEF EnableOldExtTools}Something{$ENDIF}
{$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF}

This way your changes activates only when the IDE is compiled with the
flag. You can then send us patches even if they are not yet fully
functional. When it is complete, the IFDEFs can be removed.
This allows others to help with specific questions or to tell early when you 
are on the wrong track.

Mattias

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


Re: [Lazarus] about infobuild form development

2014-06-19 Thread Mattias Gaertner
On Thu, 19 Jun 2014 11:37:19 +0300
FreeMan freema...@delphiturkiye.com wrote:

[...]
  Select a message and right click / About ...
  This will tell you what you compiled, how and why it was auto compiled.
 I don't like auto thing,  its mean out of my control.

You give the compiler the main source (e.g. lpr) and it compiles all
outdated units.
It's the same with the IDE, a project and its packages.
It's in your control.

If you fear those automatism, then you are doing something wrong.


 and not just get 
 info about compiled project. Project inspector always open on my 
 desktop, just click to options from here, better then looking for menu 
 item for me :)

That's good to find out what will be done. But if you forgot or if
you are unsure what has been done, you have to look into the messages
About item.

Mattias

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


Re: [Lazarus] about infobuild form development

2014-06-19 Thread FreeMan


19-06-2014 12:28 tarihinde, Mattias Gaertner yazdı:

Then replace each

{$IFNDEF EnableOldExtTools}Something{$ELSE}InfoBuild,{$ENDIF}

with

{$IFNDEF EnableOldExtTools}Something{$ENDIF}
{$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF}

I did:
/opt/lazarus/ide/compiler.pp
  {$IFNDEF EnableOldExtTools}
  IDEExternToolIntf,
  {$ELSE}
  UTF8Process, OutputFilter, {InfoBuild,}
  {$ENDIF}
  {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF}

/opt/lazarus/ide/main.pp
  {$IFNDEF EnableOldExtTools}
  ExtTools,
  {$ELSE}
  //InfoBuild,
  {$ENDIF}
  {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF}

and this is my command line:
make PREFIX=/opt clean all OPT=-dUSE_QT_45 -dEnableCompInfoWnd 
LCL_PLATFORM=qt bigide


infobuild form not showing on build or compile or run command
whats wrong?

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


Re: [Lazarus] about infobuild form development

2014-06-19 Thread Mattias Gaertner
On Thu, 19 Jun 2014 13:56:52 +0300
FreeMan freema...@delphiturkiye.com wrote:

 
 19-06-2014 12:28 tarihinde, Mattias Gaertner yazdı:
  Then replace each
 
  {$IFNDEF EnableOldExtTools}Something{$ELSE}InfoBuild,{$ENDIF}
 
  with
 
  {$IFNDEF EnableOldExtTools}Something{$ENDIF}
  {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF}
 I did:
 /opt/lazarus/ide/compiler.pp
{$IFNDEF EnableOldExtTools}
IDEExternToolIntf,
{$ELSE}
UTF8Process, OutputFilter, {InfoBuild,}
{$ENDIF}
{$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF}
 
 /opt/lazarus/ide/main.pp
{$IFNDEF EnableOldExtTools}
ExtTools,
{$ELSE}
//InfoBuild,
{$ENDIF}
{$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF}

Please remove the commented code.

 
 and this is my command line:
 make PREFIX=/opt clean all OPT=-dUSE_QT_45 -dEnableCompInfoWnd 
 LCL_PLATFORM=qt bigide
 
 infobuild form not showing on build or compile or run command
 whats wrong?

You have to port all code depending on the infobuild unit. For
example the CompileProgress.

Mattias

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


Re: [Lazarus] about infobuild form development

2014-06-19 Thread Mattias Gaertner
On Thu, 19 Jun 2014 11:37:19 +0300
FreeMan freema...@delphiturkiye.com wrote:

[...]
 1-) In compiler_config_target.pas,   TargetOSComboBox  
 TargetCPUComboBox adding items, this can be in include file or public 
 procedure, without class. For TargetCPUComboBox too.
 example:
 procedure TargetOSComboBox_Fill_Items(aItems : Tstringlist);
 begin
  aItems.Add('(' + lisDefault + ')');
  aItems.Add('Darwin');
  aItems.Add('FreeBSD');
 
 2- I need this procedures too but out TCompilerConfigTargetFrame class
procedure UpdateByTargetOS(aTargetOS: string);
procedure UpdateByTargetCPU(aTargetCPU: string);

I moved those lists to codetools.


Mattias

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