Patch from bug #17594. Solves compiling Lazarus with the fpc branch fpc-xpcom

git-svn-id: trunk@27667 -
This commit is contained in:
sekelsenmat 2010-10-12 15:00:44 +00:00
parent aacf8b768a
commit 6a2f27cac2
3 changed files with 119 additions and 29 deletions

View File

@ -93,9 +93,15 @@ type
procedure ClearImages;
protected
// IUnknown
function QueryInterface(const iid: tguid; out obj): longint; stdcall;
function _AddRef: longint; stdcall;
function _Release: longint; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
// IImageCacheListener
procedure CacheSetImageList(AImageList: TCustomImageList);

View File

@ -292,7 +292,11 @@ begin
FImageIndexes[i] := -1;
end;
function TButtonGlyph.QueryInterface(const iid: tguid; out obj): longint; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function TButtonGlyph.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TButtonGlyph.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj) then
Result := 0
@ -300,12 +304,12 @@ begin
Result := E_NOINTERFACE;
end;
function TButtonGlyph._AddRef: longint; stdcall;
function TButtonGlyph._AddRef: longint; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TButtonGlyph._Release: longint; stdcall;
function TButtonGlyph._Release: longint; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;

View File

@ -393,9 +393,15 @@ type
function GetUpdateDescription: Boolean;
procedure SetUpdateDescription(AValue: Boolean);
protected
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
protected
procedure ClearPixelToColorTree;
procedure InternalRead(Str: TStream; Img: TFPCustomImage); override;
@ -490,9 +496,15 @@ type
function GetUpdateDescription: Boolean;
procedure SetUpdateDescription(AValue: Boolean);
protected
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
protected
procedure InitLineBuf;
procedure FreeLineBuf;
@ -532,9 +544,15 @@ type
TLazWriterBMP = class(TFPWriterBMP, ILazImageWriter)
private
protected
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
public
procedure Initialize(AImage: TLazIntfImage);
procedure Finalize;
@ -559,9 +577,15 @@ type
function GetUpdateDescription: Boolean;
procedure SetUpdateDescription(AValue: Boolean);
protected
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
protected
procedure DoDecompress; override;
procedure HandleAlpha; override;
@ -575,9 +599,15 @@ type
TLazWriterPNG = class(TFPWriterPNG, ILazImageWriter)
private
protected
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
public
procedure Initialize(AImage: TLazIntfImage);
procedure Finalize;
@ -603,9 +633,15 @@ type
procedure SetUpdateDescription(AValue: Boolean);
procedure CreateImageHook(Sender: TFPReaderTiff; var NewImage: TFPCustomImage);
protected
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
protected
procedure InternalRead(Str:TStream; Img:TFPCustomImage); override;
public
@ -617,9 +653,15 @@ type
TLazWriterTiff = class(TFPWriterTiff, ILazImageWriter)
private
protected
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
protected
procedure InternalWrite(Stream: TStream; Img: TFPCustomImage); override;
public
@ -643,9 +685,15 @@ type
protected
function InternalCheck(Str:TStream): boolean; override;
procedure InternalRead(Stream: TStream; Img: TFPCustomImage); override;
{$IFDEF FPC_HAS_CONSTREF}
function QueryInterface(constref iid: TGuid; out obj): LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _AddRef: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
function _Release: LongInt; {$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
function _AddRef: LongInt; stdcall;
function _Release: LongInt; stdcall;
{$ENDIF}
function GetUpdateDescription: Boolean;
procedure SetUpdateDescription(AValue: Boolean);
procedure SetupRead(AWidth, AHeight, ADepth: Integer; IsMask: Boolean);
@ -3976,7 +4024,11 @@ begin
Progress(psEnding, 100, false, Rect(0,0,0,0), '', FContinue);
end;
{$IFDEF FPC_HAS_CONSTREF}
function TLazReaderXPM.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TLazReaderXPM.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj)
then Result := S_OK
@ -3988,12 +4040,12 @@ begin
FUpdateDescription := AValue;
end;
function TLazReaderXPM._AddRef: LongInt; stdcall;
function TLazReaderXPM._AddRef: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TLazReaderXPM._Release: LongInt; stdcall;
function TLazReaderXPM._Release: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
@ -4790,19 +4842,23 @@ begin
BitsPerPixel := AImage.DataDescription.Depth;
end;
function TLazWriterBMP.QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function TLazWriterBMP.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TLazWriterBMP.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj)
then Result := S_OK
else Result := E_NOINTERFACE;
end;
function TLazWriterBMP._AddRef: LongInt; stdcall;
function TLazWriterBMP._AddRef: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TLazWriterBMP._Release: LongInt; stdcall;
function TLazWriterBMP._Release: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
@ -5209,12 +5265,12 @@ begin
end;
end;
function TLazReaderDIB._AddRef: LongInt; stdcall;
function TLazReaderDIB._AddRef: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TLazReaderDIB._Release: LongInt; stdcall;
function TLazReaderDIB._Release: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
@ -5463,7 +5519,11 @@ begin
then CheckAlphaDescription(TheImage);
end;
function TLazReaderDIB.QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function TLazReaderDIB.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TLazReaderDIB.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj)
then Result := S_OK
@ -5793,7 +5853,11 @@ begin
inherited InternalRead(Str, Img);
end;
function TLazReaderPNG.QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function TLazReaderPNG.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TLazReaderPNG.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj)
then Result := S_OK
@ -5805,12 +5869,12 @@ begin
FUpdateDescription := AValue;
end;
function TLazReaderPNG._AddRef: LongInt; stdcall;
function TLazReaderPNG._AddRef: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TLazReaderPNG._Release: LongInt; stdcall;
function TLazReaderPNG._Release: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
@ -5831,19 +5895,23 @@ begin
or (AImage.DataDescription.BluePrec > 8);
end;
function TLazWriterPNG.QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function TLazWriterPNG.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TLazWriterPNG.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj)
then Result := S_OK
else Result := E_NOINTERFACE;
end;
function TLazWriterPNG._AddRef: LongInt; stdcall;
function TLazWriterPNG._AddRef: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TLazWriterPNG._Release: LongInt; stdcall;
function TLazWriterPNG._Release: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
@ -5935,7 +6003,11 @@ begin
FOrgEvent := nil;
end;
function TLazReaderTiff.QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function TLazReaderTiff.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TLazReaderTiff.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj)
then Result := S_OK
@ -5947,12 +6019,12 @@ begin
FUpdateDescription := AValue;
end;
function TLazReaderTiff._AddRef: LongInt; stdcall;
function TLazReaderTiff._AddRef: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TLazReaderTiff._Release: LongInt; stdcall;
function TLazReaderTiff._Release: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
@ -5988,19 +6060,23 @@ begin
SaveToStream(Stream);
end;
function TLazWriterTiff.QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function TLazWriterTiff.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TLazWriterTiff.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj)
then Result := S_OK
else Result := E_NOINTERFACE;
end;
function TLazWriterTiff._AddRef: LongInt; stdcall;
function TLazWriterTiff._AddRef: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TLazWriterTiff._Release: LongInt; stdcall;
function TLazWriterTiff._Release: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
@ -6067,19 +6143,23 @@ begin
end;
end;
function TLazReaderIcnsPart.QueryInterface(const iid: TGuid; out obj): LongInt; stdcall;
{$IFDEF FPC_HAS_CONSTREF}
function TLazReaderIcnsPart.QueryInterface(constref iid: TGuid; out obj): longint; {$IFDEF WINDOWs}stdcall{$ELSE}cdecl{$ENDIF};
{$ELSE}
function TLazReaderIcnsPart.QueryInterface(const iid: TGuid; out obj): longint; stdcall;
{$ENDIF}
begin
if GetInterface(iid, obj)
then Result := S_OK
else Result := E_NOINTERFACE;
end;
function TLazReaderIcnsPart._AddRef: LongInt; stdcall;
function TLazReaderIcnsPart._AddRef: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;
function TLazReaderIcnsPart._Release: LongInt; stdcall;
function TLazReaderIcnsPart._Release: LongInt; {$IFDEF FPC_HAS_CONSTREF}{$IFDEF WINDOWS}stdcall{$ELSE}cdecl{$ENDIF}{$ELSE}stdcall{$ENDIF};
begin
Result := -1;
end;