Browse Source

+ more delphi compatibility stuff

git-svn-id: trunk@3407 -
florian 19 years ago
parent
commit
d3b92ccb6f

+ 26 - 0
packages/extra/winunits/shlobj.pp

@@ -1,9 +1,35 @@
 {
 }
+{$mode objfpc}
 unit shlobj;
 
   interface
 
+    uses
+      windows,activex;
+
+    type
+      IEnumIDList = interface(IUnknown)
+        ['{000214F2-0000-0000-C000-000000000046}']
+        function Next(celt: ULONG; out rgelt: PItemIDList; var pceltFetched: ULONG): HRESULT; stdcall;
+        function Skip(celt: ULONG): HRESULT; stdcall; function Reset: HRESULT; stdcall;
+        function Clone(out ppenum: IEnumIDList): HRESULT; stdcall;
+      end;
+
+      IShellFolder = interface(IUnknown)
+        ['{000214E6-0000-0000-C000-000000000046}']
+        function ParseDisplayName(hwndOwner: HWND; pbcReserved: Pointer; lpszDisplayName: POLESTR; out pchEaten: ULONG; out ppidl: PItemIDList; var dwAttributes: ULONG): HRESULT; stdcall;
+        function EnumObjects(hwndOwner: HWND; grfFlags: DWORD; out EnumIDList: IEnumIDList): HRESULT; stdcall;
+        function BindToObject(pidl: PItemIDList; pbcReserved: Pointer; const riid: TIID; out ppvOut): HRESULT; stdcall;
+        function BindToStorage(pidl: PItemIDList; pbcReserved: Pointer; const riid: TIID; out ppvObj): HRESULT; stdcall;
+        function CompareIDs(lParam: LPARAM; pidl1, pidl2: PItemIDList): HRESULT; stdcall;
+        function CreateViewObject(hwndOwner: HWND; const riid: TIID; out ppvOut): HRESULT; stdcall;
+        function GetAttributesOf(cidl: UINT; var apidl: PItemIDList; var rgfInOut: UINT): HRESULT; stdcall;
+        function GetUIObjectOf(hwndOwner: HWND; cidl: UINT; var apidl: PItemIDList; const riid: TIID; prgfInOut: Pointer; out ppvOut): HRESULT; stdcall;
+        function GetDisplayNameOf(pidl: PItemIDList; uFlags: DWORD; var lpName: TStrRet): HRESULT; stdcall;
+        function SetNameOf(hwndOwner: HWND; pidl: PItemIDList; lpszName: POLEStr; uFlags: DWORD; var ppidlOut: PItemIDList): HRESULT; stdcall;
+      end;
+
   implementation
 
 end.

+ 1 - 0
rtl/win/wininc/ascdef.inc

@@ -289,6 +289,7 @@ function CopyMetaFile(_para1:HMETAFILE; _para2:LPCSTR):HMETAFILE; external 'gdi3
 function CreateFont(_para1:longint; _para2:longint; _para3:longint; _para4:longint; _para5:longint;_para6:DWORD; _para7:DWORD; _para8:DWORD; _para9:DWORD; _para10:DWORD;_para11:DWORD; _para12:DWORD; _para13:DWORD; _para14:LPCSTR):HFONT;
   external 'gdi32' name 'CreateFontA';
 function CreateFontIndirect(_para1:LPLOGFONT):HFONT; external 'gdi32' name 'CreateFontIndirectA';
+function CreateFontIndirect(var _para1:LOGFONT):HFONT; external 'gdi32' name 'CreateFontIndirectA';
 function CreateIC(_para1:LPCSTR; _para2:LPCSTR; _para3:LPCSTR; _para4:LPDEVMODE):HDC; external 'gdi32' name 'CreateICA';
 function CreateMetaFile(_para1:LPCSTR):HDC; external 'gdi32' name 'CreateMetaFileA';
 function CreateScalableFontResource(_para1:DWORD; _para2:LPCSTR; _para3:LPCSTR; _para4:LPCSTR):WINBOOL; external 'gdi32' name 'CreateScalableFontResourceA';

+ 1 - 0
rtl/win/wininc/ascfun.inc

@@ -292,6 +292,7 @@ function CopyMetaFileA(_para1:HMETAFILE; _para2:LPCSTR):HMETAFILE; external 'gdi
 function CreateFontA(_para1:longint; _para2:longint; _para3:longint; _para4:longint; _para5:longint;_para6:DWORD; _para7:DWORD; _para8:DWORD; _para9:DWORD; _para10:DWORD;_para11:DWORD; _para12:DWORD; _para13:DWORD; _para14:LPCSTR):HFONT;
 external 'gdi32' name 'CreateFontA';
 function CreateFontIndirectA(_para1:LPLOGFONT):HFONT; external 'gdi32' name 'CreateFontIndirectA';
+function CreateFontIndirectA(var _para1:LOGFONT):HFONT; external 'gdi32' name 'CreateFontIndirectA';
 function CreateICA(_para1:LPCSTR; _para2:LPCSTR; _para3:LPCSTR; _para4:LPDEVMODE):HDC; external 'gdi32' name 'CreateICA';
 function CreateMetaFileA(_para1:LPCSTR):HDC; external 'gdi32' name 'CreateMetaFileA';
 function CreateScalableFontResourceA(_para1:DWORD; _para2:LPCSTR; _para3:LPCSTR; _para4:LPCSTR):WINBOOL; external 'gdi32' name 'CreateScalableFontResourceA';

+ 29 - 0
rtl/win/wininc/messages.inc

@@ -1597,6 +1597,35 @@ Type
       Result : LRESULT;
     end;
 
+    TWMCreate = record
+      Msg : UINT;
+      Unused : Integer;
+      CreateStruct : PCreateStruct;
+      Result : LRESULT;
+    end;
+
+    TWMCtlColor = record
+      Msg : UINT;
+      ChildDC : HDC;
+      ChildWnd : HWND;
+      Result : LRESULT;
+    end;
+
+    TWMCtlColorScrollbar = TWMCtlColor;
+    TWMCtlColorStatic    = TWMCtlColor;
+    TWMCtlColorBtn       = TWMCtlColor;
+    TWMCtlColorListbox   = TWMCtlColor;
+    TWMCtlColorMsgbox    = TWMCtlColor;
+    TWMCtlColorDlg       = TWMCtlColor;
+    TWMCtlColorEdit      = TWMCtlColor;
+
+    TWMInitDialog = record
+      Msg : UINT;
+      Focus : HWND;
+      InitParam : Longint;
+      Result : LRESULT;
+    end;
+
     {$endif messagesunit}
 
 {$endif read_interface}

+ 1 - 0
rtl/win/wininc/unidef.inc

@@ -288,6 +288,7 @@ function SystemParametersInfo(uiAction:UINT; uiParam:UINT; pvParam:PVOID; fWinIn
 function AddFontResource(_para1:LPCWSTR):longint; external 'gdi32' name 'AddFontResourceW';
 function CopyMetaFile(_para1:HMETAFILE; _para2:LPCWSTR):HMETAFILE; external 'gdi32' name 'CopyMetaFileW';
 function CreateFontIndirect(_para1:PLOGFONT):HFONT; external 'gdi32' name 'CreateFontIndirectW';
+function CreateFontIndirect(var _para1:LOGFONT):HFONT; external 'gdi32' name 'CreateFontIndirectW';
 function CreateFont(_para1:longint; _para2:longint; _para3:longint; _para4:longint; _para5:longint;_para6:DWORD; _para7:DWORD; _para8:DWORD; _para9:DWORD; _para10:DWORD;_para11:DWORD; _para12:DWORD; _para13:DWORD; _para14:LPCWSTR):HFONT;
   external 'gdi32' name 'CreateFontW';
 function CreateIC(_para1:LPCWSTR; _para2:LPCWSTR; _para3:LPCWSTR; _para4:LPDEVMODE):HDC; external 'gdi32' name 'CreateICW';

+ 1 - 0
rtl/win/wininc/unifun.inc

@@ -288,6 +288,7 @@ function SystemParametersInfoW(uiAction:UINT; uiParam:UINT; pvParam:PVOID; fWinI
 function AddFontResourceW(_para1:LPCWSTR):longint; external 'gdi32' name 'AddFontResourceW';
 function CopyMetaFileW(_para1:HMETAFILE; _para2:LPCWSTR):HMETAFILE; external 'gdi32' name 'CopyMetaFileW';
 function CreateFontIndirectW(_para1:PLOGFONT):HFONT; external 'gdi32' name 'CreateFontIndirectW';
+function CreateFontIndirectW(var _para1:LOGFONT):HFONT; external 'gdi32' name 'CreateFontIndirectW';
 function CreateFontW(_para1:longint; _para2:longint; _para3:longint; _para4:longint; _para5:longint;_para6:DWORD; _para7:DWORD; _para8:DWORD; _para9:DWORD; _para10:DWORD;_para11:DWORD; _para12:DWORD; _para13:DWORD; _para14:LPCWSTR):HFONT;
   external 'gdi32' name 'CreateFontW';
 function CreateICW(_para1:LPCWSTR; _para2:LPCWSTR; _para3:LPCWSTR; _para4:LPDEVMODEw):HDC; external 'gdi32' name 'CreateICW';