Anonymous avatar Anonymous committed aab6102

Fix for Application.Handle

Comments (0)

Files changed (2)

ANSI/lib/NppForms.pas

 
 unit NppForms;
 
+{$ifdef fpc}
 {$MODE Delphi}
+{$endif}
 
 interface
 
 uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
-  Dialogs, NppPlugin;
+  Dialogs, NppPlugin {$ifdef fpc},
+  lmessages {$endif}
+  ;
 
 type
   TNppForm = class(TForm)

ANSI/lib/nppplugin.pas

 
 unit nppplugin;
 
+{$ifdef fpc}
 {$MODE Delphi}
+{$endif}
 
 interface
 
 uses
   Windows,Messages,SciSupport,SysUtils,
-  Dialogs,Classes,Forms;
+  Dialogs,Classes,Forms {$ifdef fpc},
+  InterfaceBase, win32int
+  {$endif};
 
 const
   FuncItemNameLen=64;
 }
 procedure TNppPlugin.BeforeDestruction;
 begin
+  {$ifdef fpc}
+  TWin32WidgetSet(WidgetSet).AppHandle:=0;
+  {$else}
+  //Delphi
   Application.Handle := 0;
+  {$endif}
   Application.Terminate;
   inherited;
 end;
 procedure TNppPlugin.SetInfo(NppData: TNppData);
 begin
   self.NppData := NppData;
+  {$ifdef fpc}
+  TWin32WidgetSet(WidgetSet).AppHandle:=NppData.NppHandle;
+  {$else}
+  //Delphi
   Application.Handle := NppData.NppHandle;
+  {$endif}
 end;
 
 // utils
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.