<?xml version="1.0" encoding="UTF-8"?>        <rss version="2.0"
             xmlns:atom="http://www.w3.org/2005/Atom"
             xmlns:dc="http://purl.org/dc/elements/1.1/"
             xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
             xmlns:admin="http://webns.net/mvcb/"
             xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
             xmlns:content="http://purl.org/rss/1.0/modules/content/">
        <channel>
            <title>
									Delphi, Lazarus, Free Pascal - Forum				            </title>
            <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/</link>
            <description>Tweaking4All.nl Discussie Forum</description>
            <language>nl-NL</language>
            <lastBuildDate>Mon, 10 Aug 2026 10:41:39 +0000</lastBuildDate>
            <generator>wpForo</generator>
            <ttl>60</ttl>
							                    <item>
                        <title>Lazarus - macOS - Hoe roep je de &quot;System Preferences&quot; - &quot;Security&quot; instellingen op?</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-macos-hoe-roep-je-de-system-preferences-security-instellingen-op/</link>
                        <pubDate>Mon, 24 Oct 2022 11:27:22 +0000</pubDate>
                        <description><![CDATA[Soms wil je de security instellingen naar voren halen zodat een gebruiker Full Disk Access kana aanvinken.
Het volgende Terminal commando kan dit doen:
open &#039;x-apple.systempreferences:com....]]></description>
                        <content:encoded><![CDATA[<p>Soms wil je de security instellingen naar voren halen zodat een gebruiker Full Disk Access kana aanvinken.</p>
<p>Het volgende Terminal commando kan dit doen:</p>
<pre contenteditable="false">open 'x-apple.systempreferences:com.apple.preference.security?Privacy'</pre>
<p> </p>
<p>In Lazarus kun je dit b.v. met RunCommand aanroepen.</p>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-macos-hoe-roep-je-de-system-preferences-security-instellingen-op/</guid>
                    </item>
				                    <item>
                        <title>Lazarus Pascal - Snel en eenvoudige een zoek functie toevoegen aan een TMemo</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-snel-en-eenvoudige-een-zoek-functie-toevoegen-aan-een-tmemo/</link>
                        <pubDate>Sun, 25 Sep 2022 10:37:04 +0000</pubDate>
                        <description><![CDATA[Ik wilde een zoekfunctie toevoegen aan een TMemo (Memo1) in een van mijn projecten - met de optie om van gevonden tekst naar de volgende gevonden tekst te springen, en de gevonden tekst te h...]]></description>
                        <content:encoded><![CDATA[<p>Ik wilde een zoekfunctie toevoegen aan een TMemo (<strong>Memo1</strong>) in een van mijn projecten - met de optie om van gevonden tekst naar de volgende gevonden tekst te springen, en de gevonden tekst te highlighten.<br />Dit is geheel gebaseerd op <a href="https://wiki.freepascal.org/TMemo#Search_text" target="_blank" rel="noopener">dit voorbeeld in de Lazarus Wiki</a> - ik plaats het hier met wat kleine modificaties en voor mijn eigen referentie.</p>
<p>Uiteraard hebben we hiervoor een TEdit (<strong>Edit1</strong>, enter search criteria) en een TButton (<strong>Button1</strong>) nodif.</p>
<pre contenteditable="false">...
Uses ... , StrUtils, LazUTF8;

...
function TForm1.FindInMemo(AString: String; StartPos: Integer): Integer;
begin
  Result := PosEx(AString, Memo1.Text, StartPos);

  if Result &gt; 0 then
    begin
      Memo1.SelStart  := UTF8Length(PChar(Memo1.Text), Result - 1);
      Memo1.SelLength := Length(AString);
      Memo1.SetFocus;
    end;
end;

procedure TForm1.Button1Click(Sender: TObject);
const
  SearchStart : Integer = 0;
  SearchStr   : string = '';
begin
  if SearchStr &lt;&gt; Edit1.Text then
    begin
      SearchStart := 0;
      SearchStr := Edit1.Text;
    end;

  SearchStart := FindInMemo(SearchStr, SearchStart + 1);

  if SearchStart = 0 then beep;
end;                                 </pre>
<p> </p>
<p>Het onClick event can de button moeten we natuurlijk aan de Button1Click() procedure koppelen.</p>
<p>Ik heb als extra nog een popup menu gemaakt voor de TMemo zodat ik een toets-combinatie kan gebruiken om naar het volgende zoek resultaat te springen (Mac: Command+G, Windows/Linux: F3).</p>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-snel-en-eenvoudige-een-zoek-functie-toevoegen-aan-een-tmemo/</guid>
                    </item>
				                    <item>
                        <title>Lazarus Pascal - macOS - Zichtbaar maken of verbergen van Dock icon in code</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-macos-zichtbaar-maken-of-verbergen-van-dock-icon-in-code/</link>
                        <pubDate>Mon, 15 Aug 2022 16:26:41 +0000</pubDate>
                        <description><![CDATA[Duurde even voor ik het uitgevogeld, vandaar dat ik het hier post in de hoop dat anderen er ook wat aan hebben.
De meesten kennen vast de plist truck welke de icon verbergt (werkt in combin...]]></description>
                        <content:encoded><![CDATA[<p>Duurde even voor ik het uitgevogeld, vandaar dat ik het hier post in de hoop dat anderen er ook wat aan hebben.</p>
<p>De meesten kennen vast de plist truck welke de icon verbergt (werkt in combinatie met de code!):</p>
<pre contenteditable="false">   &lt;key&gt;LSUIElement&lt;/key&gt;
   &lt;string&gt;1&lt;/string&gt;</pre>
<p>In ons programma kunnen we dit echter niet zo maar veranderen.</p>
<p>Deze functie verbergt een dock icon van jouw applicatie, of maakt die weer zichtbaar.</p>
<p>Merk op: <br />- verbergen van de icon, zorgt er voor dat de form van jouw applicatie ook verborgen wordt (net als met form1.hide) maar met form1.show wordt het weer zichtbaar en blijft de icon verborgen.<br />- Blijkbaar geven "<strong>NSApplicationActivationPolicyAccessory</strong>" en "<strong>NSApplicationActivationPolicyProhibited</strong>" hetzelfde.</p>
<pre contenteditable="false">{$mode objfpc}{$H+}
{$modeswitch objectivec1}  


uses
  ... CocoaAll ...;


procedure t4a_ToggleDockIcon(ShowIcon:boolean);
begin
  if ShowIcon then
    NSApplication.sharedApplication.setActivationPolicy(NSApplicationActivationPolicyRegular)
  else
    NSApplication.sharedApplication.setActivationPolicy(NSApplicationActivationPolicyAccessory);
end;    </pre>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-macos-zichtbaar-maken-of-verbergen-van-dock-icon-in-code/</guid>
                    </item>
				                    <item>
                        <title>Lazarus - macOS - Hoe maak je een macOS style dialoog (CocoaPromptUser/Modal sheet dialoog)</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-macos-hoe-maak-je-een-macos-style-dialoog-cocoapromptuser-modal-sheet-dialoog/</link>
                        <pubDate>Sat, 06 Aug 2022 11:46:34 +0000</pubDate>
                        <description><![CDATA[Ik heb wat lopen prullen met &quot;CocoaPromptUser&quot; in de hoop wat meer macOS compliant dialoog vensters te produceren ...Het idee was een overload te maken voor MessageDlg (de laatste parameter,...]]></description>
                        <content:encoded><![CDATA[<p>Ik heb wat lopen prullen met "CocoaPromptUser" in de hoop wat meer macOS compliant dialoog vensters te produceren ...<br />Het idee was een overload te maken voor MessageDlg (de laatste parameter, de form, is het verschil).<br />(ik heb mijn code ook in het <a href="https://forum.lazarus.freepascal.org/index.php/topic,60164.msg449516.html#msg449516" target="_blank" rel="noopener">officiële Lazarus forum</a> geplaatst)</p>
<p>Dialoog voorbeeld:</p>
107
<p>Misschien heeft iemand er iets aan ... 😊 </p>
<p> </p>
<pre contenteditable="false">unit Unit1;

{$mode objfpc}{$H+}
{$modeswitch objectivec1}

interface

uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls
  , CocoaInt, CocoaAll;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private

  public

  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

function MessageDlg( aCaption, aMsg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint; DefaultButton: TMsgDlgBtn; const Sender:TForm): TModalResult;
var
  ButtonArrayPtr     : PLongint;            // Pointer to the button array
  ButtonCount        : Integer;             // Number of buttons
  Counter            : integer;
  NSParentWindow     : NSWindow;            // Parent Form that the sheet is attached to
  DlgTypeID          : longint;             // DialogType for conversion from TMsgDlgType
  ButtonIDs          : array of Longint;    // ButtonTypes for conversion from TMsgDlgBtn array
  ButtonPressed      : longint;             // ModalResult which gets converted to TModalResult
  aButton            : TMsgDlgBtn;
  DefaultButtonIndex : integer;
  ReversedButtons    : TMsgDlgButtons;
begin
  // Show regular message dialog if no form assigned or form not showing
  if (not Assigned(Sender)) or (not Sender.Visible) then
    begin
      Result := MessageDlg(aCaption, aMsg, DlgType, Buttons, HelpCtx, DefaultButton, Sender);
      exit;
    end;

  { Convert array of TMsgDlgBtn to idButtonXYZ (See LCLType) and convert default button (TMsgDlgBtn) to index }
  ButtonCount := 0;
  DefaultButtonIndex := -1;
  ReversedButtons := [];
  Result := mrNone;

  if Buttons&lt;&gt;[] then
    begin
      for aButton in Buttons do
        ReversedButtons :=  + ReversedButtons;

      for aButton in ReversedButtons do
        begin
          SetLength(ButtonIDs,ButtonCount+1);

          case aButton of
            mbYes      : ButtonIDs:= 4;
            mbNo       : ButtonIDs:= 5;
            mbOK       : ButtonIDs:= 1;
            mbCancel   : ButtonIDs:= 2;
            mbAbort    : ButtonIDs:= 7;
            mbRetry    : ButtonIDs:= 8;
            mbIgnore   : ButtonIDs:= 9;
            mbAll      : ButtonIDs:= 10;
            mbNoToAll  : ButtonIDs:= 12;
            mbYesToAll : ButtonIDs:= 11;
            mbHelp     : ButtonIDs:= 3;
            else         ButtonIDs:= 6; // mbClose
          end;

          if (aButton=DefaultButton) then
            DefaultButtonIndex := ButtonCount;

          inc(ButtonCount);
        end;
    end;

  if (ButtonCount&gt;0) then
    ButtonArrayPtr:=@{%H-}ButtonIDs{%H+}
  else
    ButtonArrayPtr:=nil;


  { Convert TMsgDlgType to idDialogXYZ (See LCLType) }
  case DlgType of
    mtWarning      : DlgTypeID := $FF +1;
    mtError        : DlgTypeID := $FF +2;
    mtInformation  : DlgTypeID := $FF +3;
    mtConfirmation : DlgTypeID := $FF +4;
    else             DlgTypeID := $FF +5; //mtCustom:
  end;

  NSParentWindow := nil;
  if Assigned(Sender) then
    begin
      if not Sender.HandleAllocated then Exit;
      NSParentWindow := NSView(Sender.Handle).window;
    end
  else
    NSParentWindow := NSApplication.sharedApplication.keyWindow;

  if Assigned(NSParentWindow) then
    begin
      ButtonPressed := CocoaPromptUser(aCaption, aMsg ,DlgTypeID, ButtonArrayPtr, ButtonCount, DefaultButtonIndex, 0, NSParentWindow, true);

      case ButtonPressed of
        1  : Result := mrOK;
        2  : Result := mrCancel;
        //3:   Result := mrHelp  // Help does not return from modal;
        4  : Result := mrYes;
        5  : Result := mrNo;
        6  : Result := mrClose;
        7  : Result := mrAbort;
        8  : Result := mrRetry;
        9  : Result := mrIgnore;
        10 : Result := mrAll;
        11 : Result := mrYesToAll;
        12 : Result := mrNoToAll
        else Result := mrNone;
      end;
    end
  else
    Result := mrNone;
end;

{ TForm1 }

procedure TForm1.Button1Click(Sender: TObject);
begin
  MessageDlg('Caption','',mtInformation,,0,mbYes,self);
end;

end.
</pre>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-macos-hoe-maak-je-een-macos-style-dialoog-cocoapromptuser-modal-sheet-dialoog/</guid>
                    </item>
				                    <item>
                        <title>Lazarus Pascal - Hoe voeg ik extra properties of data toe aan een TTreenode? (gebruikt in TTreeview)</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-hoe-voeg-ik-extra-properties-of-data-toe-aan-een-ttreenode-gebruikt-in-ttreeview/</link>
                        <pubDate>Sat, 06 Aug 2022 08:07:09 +0000</pubDate>
                        <description><![CDATA[Hoe voegen we extra data toe aan treenodes in een treeview?
Ik vond het verrassend makkelijk m.b.v. een eigen TreeNode variant ...
TMyTreeNode = class(TTreeNode)
private
  fANewProperty:...]]></description>
                        <content:encoded><![CDATA[<p>Hoe voegen we extra data toe aan treenodes in een treeview?</p>
<p>Ik vond het verrassend makkelijk m.b.v. een eigen TreeNode variant ...</p>
<pre contenteditable="false">TMyTreeNode = class(TTreeNode)
private
  fANewProperty: String;
public
  property ANewProperty: String read fANewProperty write fANewProperty;
end;</pre>
<p> </p>
<p>We moeten er bij het aanmaken van een nieuwe  node wel voor zorgen dat de treeview het juiste treenode type gaat gebruiken en dat doen we in onCreateNodeClass:</p>
<pre contenteditable="false">procedure TForm1.TreeView1CreateNodeClass(Sender: TCustomTreeView; var NodeClass: TTreeNodeClass);
begin
  NodeClass := TMyTreeNode;
end;</pre>
<p> </p>
<p>We kunnen de extra data nu schrijven/lezen met een type cast:</p>
<pre contenteditable="false">TMyTreeNode(TreeView1.Selected).ANewProperty := 'some text';</pre>
<p> </p>
<p>Merk op: ik gebruik hier een eenvoudige string, maar je kunt hier hele records aan hangen 😉 </p>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-hoe-voeg-ik-extra-properties-of-data-toe-aan-een-ttreenode-gebruikt-in-ttreeview/</guid>
                    </item>
				                    <item>
                        <title>Lazarus Pascal - macOS - Universal binary maken voor Apple Silicon (M1) en Intel Processoren</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-macos-universal-binary-maken-voor-apple-silicon-m1-en-intel-processoren/</link>
                        <pubDate>Sat, 30 Oct 2021 14:18:48 +0000</pubDate>
                        <description><![CDATA[Er vanuitgaande dat je FPCUpDeluxe (gratis) gebruikt, en je dus FPC en Lazarus via FPCUpDeluxe hebt geinstalleerd;
1) In FPCUpDeluxe, installeren we de ARM compiler:
Klik op het tabblad &quot;c...]]></description>
                        <content:encoded><![CDATA[<p>Er vanuitgaande dat je <a href="https://github.com/LongDirtyAnimAlf/fpcupdeluxe/releases/" target="_blank" rel="noopener">FPCUpDeluxe</a> (gratis) gebruikt, en je dus FPC en Lazarus via FPCUpDeluxe hebt geinstalleerd;</p>
<p>1) In FPCUpDeluxe, installeren we de ARM compiler:</p>
<p>Klik op het tabblad "<span style="color: #ff0000"><strong>cross</strong></span>", vink "<span style="color: #ff0000"><strong>aarch64</strong></span>" en "<span style="color: #ff0000"><strong>darwin</strong></span>" aan en klik dan op de "<span style="color: #ff0000"><strong>Install Compiler</strong></span>" knop.<br />FPC installeerd nu de ARM compiler naast de Intel compiler.</p>
<p>2) In Lazarus, moeten we nu binaries maken voor zowel Intel als M1.</p>
<p>In Lazarus ga naar het menu "<span style="color: #ff0000"><strong>Project</strong></span>" - "<span style="color: #ff0000"><strong>Project Options</strong></span>". Onder "<span style="color: #ff0000"><strong>Compiler options</strong></span>" gaan we naar "<span style="color: #ff0000"><strong>Config and Target</strong></span>".<br />Voor zover ik heb ervaren hoef je alleen maar "<span style="color: #ff0000"><strong>CPU Family</strong></span>" op "<strong>aarch64</strong>" (M1) of "<strong>x86_64</strong>" (Intel) te zetten.<br />Kies er een en BUILD de binary. Hernoem de binary vervolgens en herhaal deze stappen voor de andere processor familie.</p>
<p><em>Voorbeeld</em>: project1</p>
<p>Zet CPU target op Intel en Build the Intel (x86_64) binary, en hernoem het bestand naar b.v. "<strong>project1_x86</strong>".<br />Doe nu hetzelfde voor de M1 binary (aarch64) en build the M1 binary, en hernoem het naar zoiets als "<strong>project1_M1</strong>".</p>
<p>3) In Terminal maken we nu met lipo een Universal binary.</p>
<p>In Terminal:</p>
<pre contenteditable="false">lipo -create -output project1 project1_M1 project1_x86
strip project1</pre>
<p> </p>
<div>Je hebt nu een "project1" bestand welke we in de app bundle plaatsen.</div>
<div> </div>
<div>Je kunt de universal binary testen met:</div>
<div> </div>
<div>
<pre contenteditable="false">file project1</pre>
</div>
<div> </div>
<div>De output ziet er ongeveer zo uit:</div>
<div> </div>
<div>
<pre contenteditable="false">project1: Mach-O universal binary with 2 architectures:  
project1 (for architecture x86_64): Mach-O 64-bit executable x86_64
project1 (for architecture arm64): Mach-O 64-bit executable arm64</pre>
</div>
<p> </p>
<p>Merk op dat voor M1 hardware de binary gesigned MOET zijn anders werkt het gewoon niet.<br />Omdat ik zelf geen M1 hardware heb, kan ik het signen nog niet testen. Ik weet wel dat de standard sign methode (van de universal binary) prima werkt op Intel Macs.</p>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-macos-universal-binary-maken-voor-apple-silicon-m1-en-intel-processoren/</guid>
                    </item>
				                    <item>
                        <title>Lazarus Pascal - Hoe bepaal je de macOS versie?</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-hoe-bepaal-je-de-macos-versie/</link>
                        <pubDate>Wed, 14 Apr 2021 16:41:13 +0000</pubDate>
                        <description><![CDATA[Ik kreeg deze vraag toevallig vandaag, en maakte er een klein demo projectje van - misschien heeft iemand er wat aan ...
Niet vergeten:
- {$modeswitch objectivec1}- uses CocoaAll
unit Uni...]]></description>
                        <content:encoded><![CDATA[<p>Ik kreeg deze vraag toevallig vandaag, en maakte er een klein demo projectje van - misschien heeft iemand er wat aan ...</p>
<p>Niet vergeten:</p>
<p>- <strong>{$modeswitch objectivec1}</strong><br />- uses <strong>CocoaAll</strong></p>
<pre contenteditable="false">unit Unit1;

{$mode objfpc}{$H+}
{$modeswitch objectivec1}
interface

uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, CocoaAll;

type

  { TForm1 }

  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    procedure FormCreate(Sender: TObject);
  private

  public

  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
begin
  Label1.Caption :=  NSProcessInfo.ProcessInfo.operatingSystemVersionString.UTF8String;

  Label2.Caption := IntToStr( NSProcessInfo.ProcessInfo.OperatingSystemVersion.majorVersion ) + '.' +
                    IntToStr( NSProcessInfo.ProcessInfo.OperatingSystemVersion.minorVersion ) + '.' +
                    IntToStr( NSProcessInfo.ProcessInfo.OperatingSystemVersion.patchVersion );
end;

end.</pre>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-hoe-bepaal-je-de-macos-versie/</guid>
                    </item>
				                    <item>
                        <title>Lazarus Pascal - macOS - Laat de FullScreen knop (groen) het window maximaliseren (dus niet fullscreen)</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-macos-laat-de-fullscreen-knop-groen-het-window-maximaliseren-dus-niet-fullscreen/</link>
                        <pubDate>Tue, 13 Apr 2021 11:32:58 +0000</pubDate>
                        <description><![CDATA[Een oplossing die ik bedacht heb op basis van een interessante vraag in het Lazarus forum:
In macOS zal het groene knopje (elke venster heeft die, links bovenin) een window schermvullend (f...]]></description>
                        <content:encoded><![CDATA[<p>Een oplossing die ik bedacht heb op basis van een interessante vraag in het Lazarus forum:</p>
<p>In macOS zal het groene knopje (elke venster heeft die, links bovenin) een window schermvullend (fullscreen) maken en niet maximaliseren zoals we dat op andere besturingssystemen zien.</p>
<p>Daarom heb ik twee functies gemaakt die dit gedraag uitzetten (normaal maximaliseren) of weer aanzet (fullscreen).</p>
<pre contenteditable="false">procedure DisableFullscreenButton(theForm: TForm);
var
  theWindow: NSWindow;
begin
  theWindow := NSView(theForm.Handle).window;       // Form1 is the name of the main form - adjust as necessary
  theWindow.setCollectionBehavior(theWindow.collectionBehavior or NSWindowCollectionBehaviorFullScreenAuxiliary);
end;

procedure EnableFullscreenButton(theForm: TForm);
var
  theWindow: NSWindow;
begin
  theWindow := NSView(theForm.Handle).window;       // Form1 is the name of the main form - adjust as necessary
  theWindow.setCollectionBehavior(theWindow.collectionBehavior and NSWindowCollectionBehaviorFullScreenPrimary);
end;</pre>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-macos-laat-de-fullscreen-knop-groen-het-window-maximaliseren-dus-niet-fullscreen/</guid>
                    </item>
				                    <item>
                        <title>Lazarus Pascal / Delphi - Hoe kopieer je een TMemoryStream naar een String</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-delphi-hoe-kopieer-je-een-tmemorystream-naar-een-string/</link>
                        <pubDate>Thu, 11 Feb 2021 14:02:07 +0000</pubDate>
                        <description><![CDATA[Een eenvoudige truuk om de inhoud van een TMemoryStream naar een string te kopieren:
function MemoryStreamToString(aMemoryStream: TMemoryStream): AnsiString;begin  SetString(Result, PAnsiCh...]]></description>
                        <content:encoded><![CDATA[<p>Een eenvoudige truuk om de inhoud van een TMemoryStream naar een string te kopieren:</p>
<pre>function MemoryStreamToString(aMemoryStream: TMemoryStream): AnsiString;<br />begin<br />  SetString(Result, PAnsiChar(aMemoryStream.Memory), aMemoryStream.Size);<br />end;</pre>
<p> </p>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>Hans</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-pascal-delphi-hoe-kopieer-je-een-tmemorystream-naar-een-string/</guid>
                    </item>
				                    <item>
                        <title>Lazarus - Identifier not found in TService.DataModuleExecute(Sender: TCustomDaemon);</title>
                        <link>https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-identifier-not-found-in-tservice-datamoduleexecutesender-tcustomdaemon/</link>
                        <pubDate>Mon, 08 Feb 2021 09:49:59 +0000</pubDate>
                        <description><![CDATA[Excuus, ik ben nieuw op het forum en heb de vraag in de opmerkingen/reacties geplaatst, maar had hier gemoeten denk ik.Ik ben dus begonnen met het overzetten van mijn applicaties uit Delphi ...]]></description>
                        <content:encoded><![CDATA[46
<p>Excuus, ik ben nieuw op het forum en heb de vraag in de opmerkingen/reacties geplaatst, maar had hier gemoeten denk ik.<br />Ik ben dus begonnen met het overzetten van mijn applicaties uit Delphi XE naar Lazarus.<br />Batch programmatuur gaat prima, ben nu begonnen met een eerste test voor service-programmatuur.<br />Bij de eerste test loop ik echter tegen een foutmelding aan zoals in het Onderwerp genoemd.</p>
<p>Vergeet ik iets dus ?</p>
<p> </p>]]></content:encoded>
						                            <category domain="https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/">Delphi, Lazarus, Free Pascal</category>                        <dc:creator>martin@home</dc:creator>
                        <guid isPermaLink="true">https://www.tweaking4all.nl/forum/delphi-lazarus-free-pascal/lazarus-identifier-not-found-in-tservice-datamoduleexecutesender-tcustomdaemon/</guid>
                    </item>
							        </channel>
        </rss>
		