Lazarus

Miscellaneous => Suggestions => Topic started by: miguel-laz on March 15, 2013, 02:15:05 pm

Title: Default release of Lazarus, as a single window
Post by: miguel-laz on March 15, 2013, 02:15:05 pm
I think it is better to work in a windowing environment coupled, to work in a windowing environment scattered.
Personally I tried to install "anchordocking" and I do not get, is the third attempt.

Greetings ...
Title: Re: Default release of Lazarus, as a single window
Post by: Martin_fr on March 15, 2013, 02:38:21 pm
You need to install AnchorDockingDsgn

But it is still beta. It does not dock the design forms, and there may be other issues.

It can not be made default, if it is not stable enough.
Title: Re: Default release of Lazarus, as a single window
Post by: BigChimp on March 15, 2013, 02:39:51 pm
If you mean that anchordocking has bugs, yes this is true.

That's one of the reasons why it's not enabled by default.
Title: Re: Default release of Lazarus, as a single window
Post by: User137 on March 15, 2013, 03:40:05 pm
On the contrary, i enjoy multi-window greatly. Can open notepad, explorer, youtube in between Lazarus. That's 1 of the primary issues i hate about Visual Studio, that it's locked into 1 window rectangle with poorly implemented docking.
Title: Re: Default release of Lazarus, as a single window
Post by: miguel-laz on March 15, 2013, 07:47:07 pm
Finally I managed, in a single window Lazarus!

I used the version (Lazarus 1.0.6 - 32-bit) on Windows 7 - 64bit.

I sincerely believe that this is the way to go.

Greetings ...
Title: Re: Default release of Lazarus, as a single window
Post by: TurboRascal on March 21, 2013, 11:29:08 pm
AFAIK, Anchordocking cannot create _single_window_ Lazarus, since it can't dock Form Designer...
Title: Re: Default release of Lazarus, as a single window
Post by: Leledumbo on March 22, 2013, 10:08:29 am
Quote
AFAIK, Anchordocking cannot create _single_window_ Lazarus, since it can't dock Form Designer...
I'd rather put "yet" between "cannot" and "create" to signify a hope... ;)
Title: Re: Default release of Lazarus, as a single window
Post by: TurboRascal on March 22, 2013, 11:50:51 am
I'd rather put "yet" between "cannot" and "create" to signify a hope... ;)

AFAIK, Anchordocking cannot yet create _single_window_ Lazarus, since it can't dock Form Designer...

;)

So far I'm quite satisfied with Anchordocking, but inability to dock the Designer prevents me from docking everything else in one window - it is obviously necessary to be able to click the Palette and the Object Inspector with Designer also on the screen...
Title: Re: Default release of Lazarus, as a single window
Post by: a.atalla on March 22, 2013, 02:26:10 pm
kzdesktop  is so  promising  but it still have an annoying bug in linux
http://sourceforge.net/projects/kzdesktop/

the bug video
http://www.youtube.com/watch?v=KQSWyd_t8hU
Title: Re: Default release of Lazarus, as a single window
Post by: nsunny on March 29, 2013, 01:47:37 pm
KzDesktop is quite perfect, but not 100%.

It has a focus issue.
For example, when I am running maximized Firefox (or other app) and then click the taskbar button for getting back to Lazarus, it takes three clicks. That's the major reason why I do not use it for everyday.

The form designer only has a corner resize option. It cannot be resized from bottom or right. Having arrows is not a practical. A scrollbar should be implemented.

I do not hate it. But I cannot love it either because of these issues. I would say that it should be added as default, after making it stable. (An option to turn it off should be kept.)
Title: Re: Default release of Lazarus, as a single window
Post by: DelphiFreak on March 30, 2013, 08:19:36 am
The first things I do after a fresh install of Lazarus:

1.) add "AnchorDockingDsgn05"
2.) set colors to "Delphi".
3.) "Show single Button on Taskbar". (when on linux)

Title: Re: Default release of Lazarus, as a single window
Post by: Rave on March 30, 2013, 09:39:44 am
So how about merging KzDesktop with AnchorDocking? You know, hacking in form designer docking from Kz into Anchor (unless it will cause bug mentioned by a.atalla).

//edit: Anyway, I think we should be able to dock/undock Form designer at will, when for some reason we want our form to show at specific coordinates (Position:poDesigned).
Title: Re: Default release of Lazarus, as a single window
Post by: snorkel on April 01, 2013, 05:17:00 pm
well, can't the form designer be embeded in a tab at the bottom of the editor?   Then it would not matter what docking package was used, and you would still be able to have the IDE in a undocked layout as well.

The floating form designer is a pain in the rear on a single monitor system and f12 does not seem to work properly, you have to hit it several times to get the form to pop to the top.

I like how KZdesktop has the designer embedded, but I am not keen on how it does the other panels etc.

Title: Re: Default release of Lazarus, as a single window
Post by: miguel-laz on May 01, 2013, 01:26:25 pm
I want to take this post to suggest a change in the theme of "anchordocking" which to me makes it more useful and elegant.

Paint headers "TAnchorDockHeader" with a solid color and highlighted in the "TAnchorDockHostSite" to have focus.

To do this I modified the following code:

Add a public field to the class "TAnchorDockHeader":
Code: [Select]
public
    HeaderColor:TColor;
initialize the field to default value:
Code: [Select]
constructor TAnchorDockHeader.Create(TheOwner: TComponent);
begin
  inherited Create(TheOwner);
  HeaderColor:=TColor($00F4EBE3);
  "
  "

Add two overriding methods DoExit and DoEnter to the class "TAnchorDockHostSite":
Code: [Select]
procedure TAnchorDockHostSite.DoEnter;
begin
  inherited DoEnter;

  FHeader.HeaderColor:=TColor($00F3CCA8);
  FHeader.Invalidate;
end;

procedure TAnchorDockHostSite.DoExit;
begin
  inherited DoExit;

  FHeader.HeaderColor:=TColor($00F4EBE3);
  FHeader.Invalidate;
end;

and modify the method "Paint" of class "TAnchorDockHeader":
Code: [Select]
procedure TAnchorDockHeader.Paint;
var
  r: TRect;
  TxtH: longint;
  TxtW: longint;
  dx,dy: Integer;

begin
  r:=ClientRect;
  Canvas.Frame3d(r,1,bvRaised);

  Canvas.Brush.Color:=HeaderColor;
  Canvas.Brush.Style:=bsSolid;

  Canvas.FillRect(r);
  if CloseButton.IsControlVisible and (CloseButton.Parent=Self) then begin
    if Align in [alLeft,alRight] then
      r.Top:=CloseButton.Top+CloseButton.Height+1
    else
      r.Right:=CloseButton.Left-1;
  end;

  // caption
  if Caption<>'' then begin
    TxtH:=Canvas.TextHeight('ABCMgq');
    TxtW:=Canvas.TextWidth(Caption);
    if Align in [alLeft,alRight] then begin
      // vertical
      dx:=Max(0,(r.Right-r.Left-TxtH) div 2);
      dy:=Max(0,(r.Bottom-r.Top-TxtW) div 2);
      Canvas.Font.Orientation:=900;
      Canvas.TextOut(r.Left+dx,r.Bottom-dy,Caption);
    end else begin
      // horizontal
      dx:=Max(0,(r.Right-r.Left-TxtW) div 2);
      dy:=Max(0,(r.Bottom-r.Top-TxtH) div 2);
      Canvas.Font.Orientation:=0;
      Canvas.TextOut(r.Left+dx,r.Top+dy,Caption);
    end;
  end
end;

and this is the result, as shown in the images:
Title: Re: Default release of Lazarus, as a single window
Post by: BigChimp on May 01, 2013, 02:09:57 pm
@miguel, if you want those changes to go into Lazarus code, please submit a bug report with a patch containing the changes...
Title: Re: Default release of Lazarus, as a single window
Post by: miguel-laz on May 01, 2013, 06:46:41 pm
Quote
@miguel, if you want those changes to go into Lazarus code, please submit a bug report with a patch containing the changes...

Done!
Title: Re: Default release of Lazarus, as a single window
Post by: BigChimp on May 02, 2013, 08:05:25 am
Thanks for contributing ;)
Title: Re: Default release of Lazarus, as a single window
Post by: theo on May 02, 2013, 11:30:47 am
See also:
http://bugs.freepascal.org/view.php?id=22900
http://bugs.freepascal.org/view.php?id=17026
Title: Re: Default release of Lazarus, as a single window
Post by: nsunny on May 04, 2013, 02:42:00 pm
I have used kzDesktop but never used anchordocking. From the screenshots I think anchor docking's window titles are distracting to the interface. kzDesktop on the other hand is much better looking.
TinyPortal © 2005-2018