I just want to check something - please help...

In the win32-case, in
C:\Lazarus\lcl\interfaces\win32\win32wscontrols.pp
one finds for example:

procedure PrepareCreateWindow(const AWinControl: TWinControl; var Params: 
TCreateWindowExParams);
begin
  with Params do
  begin
    Flags := WS_CHILD or WS_CLIPSIBLINGS or WS_CLIPCHILDREN;
    FlagsEx := 0;
    Assert(False, 'Trace:Setting flags');
    Window := HWND(Nil);
    Buddy := HWND(Nil);
    Assert(False, 'Trace:Setting window');

    if AWinControl.Parent <> nil then
    begin
      Parent := AWinControl.Parent.Handle;
    end else
      Parent := TWin32WidgetSet(WidgetSet).AppHandle;

    SubClassWndProc := @WindowProc;
    WindowTitle := nil;
    StrCaption := PChar(AWinControl.Caption);
    WindowTitle := nil;
...
...

In there, in the line
    StrCaption := PChar(AWinControl.Caption);
Caption is a property of TControl, declared in
C:\Lazarus\lcl\controls.pp

TControl.Caption uses read gettext and write settext,
which are implemented for instance in
C:\Lazarus\lcl\include\control.inc

Now, I must admit that I am getting lost there a bit.

My actual question: when Params.StrCaption is being assigned
a value (above, in procedure PrepareCreateWindow) - is this
value guaranteed to already be encoded in UTF8 (i.e. a
transformation from the possible Codepage into UTF8 happens
somewhere (where?) before) or it is still encoded in a Codepage,
in cases where the application does not use UTF8 as "Codepage"?

A second question: do I understand it correctly, that if I
am changing/experimenting with the interface part, there is
no way whatsoever to avoid the necessity to always rebuild
Lazarus, in order to test the changes (and so these changes
are immediately active in the recompiled IDE)? What is the
preferred/suggested way of debugging such things?

Many thanks to any core member for the patience in
answering!

Borut

_________________________________________________________________
     To unsubscribe: mail [EMAIL PROTECTED] with
                "unsubscribe" as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to