fpc/packages/extra/ptc/c_api/surface.inc
daniel 4b074a0e5c + Add PTCpas package
git-svn-id: trunk@1944 -
2005-12-13 21:13:29 +00:00

285 lines
6.2 KiB
C++

Function ptc_surface_create(width, height : Integer; format : TPTC_FORMAT) : TPTC_SURFACE;
Begin
Try
ptc_surface_create := TPTC_SURFACE(TPTCSurface.Create(width, height, TPTCFormat(format)));
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_create := Nil;
End;
End;
End;
Procedure ptc_surface_destroy(obj : TPTC_SURFACE);
Begin
If obj = Nil Then
Exit;
Try
TPTCBaseSurface(obj).Destroy;
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_copy(obj : TPTC_SURFACE; surface : TPTC_SURFACE);
Begin
Try
TPTCBaseSurface(obj).copy(TPTCBaseSurface(surface));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_copy_area(obj : TPTC_SURFACE; surface : TPTC_SURFACE; source, destination : TPTC_AREA);
Begin
Try
TPTCBaseSurface(obj).copy(TPTCBaseSurface(surface), TPTCArea(source), TPTCArea(destination));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Function ptc_surface_lock(obj : TPTC_SURFACE) : Pointer;
Begin
Try
ptc_surface_lock := TPTCBaseSurface(obj).lock;
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_lock := Nil;
End;
End;
End;
Procedure ptc_surface_unlock(obj : TPTC_SURFACE);
Begin
Try
TPTCBaseSurface(obj).unlock;
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_load(obj : TPTC_SURFACE; pixels : Pointer; width, height, pitch : Integer; format : TPTC_FORMAT; palette : TPTC_PALETTE);
Begin
Try
TPTCBaseSurface(obj).load(pixels, width, height, pitch, TPTCFormat(format), TPTCPalette(palette));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_load_area(obj : TPTC_SURFACE; pixels : Pointer; width, height, pitch : Integer; format : TPTC_FORMAT; palette : TPTC_PALETTE; source, destination : TPTC_AREA);
Begin
Try
TPTCBaseSurface(obj).load(pixels, width, height, pitch, TPTCFormat(format), TPTCPalette(palette), TPTCArea(source), TPTCArea(destination));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_save(obj : TPTC_SURFACE; pixels : Pointer; width, height, pitch : Integer; format : TPTC_FORMAT; palette : TPTC_PALETTE);
Begin
Try
TPTCBaseSurface(obj).save(pixels, width, height, pitch, TPTCFormat(format), TPTCPalette(palette));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_save_area(obj : TPTC_SURFACE; pixels : Pointer; width, height, pitch : Integer; format : TPTC_FORMAT; palette : TPTC_PALETTE; source, destination : TPTC_AREA);
Begin
Try
TPTCBaseSurface(obj).save(pixels, width, height, pitch, TPTCFormat(format), TPTCPalette(palette), TPTCArea(source), TPTCArea(destination));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_clear(obj : TPTC_SURFACE);
Begin
Try
TPTCBaseSurface(obj).clear;
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_clear_color(obj : TPTC_SURFACE; color : TPTC_COLOR);
Begin
Try
TPTCBaseSurface(obj).clear(TPTCColor(color));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_clear_color_area(obj : TPTC_SURFACE; color : TPTC_COLOR; area : TPTC_AREA);
Begin
Try
TPTCBaseSurface(obj).clear(TPTCColor(color), TPTCArea(area));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Procedure ptc_surface_palette_set(obj : TPTC_SURFACE; palette : TPTC_PALETTE);
Begin
Try
TPTCBaseSurface(obj).palette(TPTCPalette(palette));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Function ptc_surface_palette_get(obj : TPTC_SURFACE) : TPTC_PALETTE;
Begin
Try
ptc_surface_palette_get := TPTC_PALETTE(TPTCBaseSurface(obj).palette);
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_palette_get := Nil;
End;
End;
End;
Procedure ptc_surface_clip_set(obj : TPTC_SURFACE; area : TPTC_AREA);
Begin
Try
TPTCBaseSurface(obj).clip(TPTCArea(area));
Except
On error : TPTCError Do
ptc_exception_handle(error);
End;
End;
Function ptc_surface_width(obj : TPTC_SURFACE) : Integer;
Begin
Try
ptc_surface_width := TPTCBaseSurface(obj).width;
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_width := 0;
End;
End;
End;
Function ptc_surface_height(obj : TPTC_SURFACE) : Integer;
Begin
Try
ptc_surface_height := TPTCBaseSurface(obj).height;
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_height := 0;
End;
End;
End;
Function ptc_surface_pitch(obj : TPTC_SURFACE) : Integer;
Begin
Try
ptc_surface_pitch := TPTCBaseSurface(obj).pitch;
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_pitch := 0;
End;
End;
End;
Function ptc_surface_area(obj : TPTC_SURFACE) : TPTC_AREA;
Begin
Try
ptc_surface_area := TPTC_AREA(TPTCBaseSurface(obj).area);
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_area := Nil;
End;
End;
End;
Function ptc_surface_clip(obj : TPTC_SURFACE) : TPTC_AREA;
Begin
Try
ptc_surface_clip := TPTC_AREA(TPTCBaseSurface(obj).clip);
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_clip := Nil;
End;
End;
End;
Function ptc_surface_format(obj : TPTC_SURFACE) : TPTC_FORMAT;
Begin
Try
ptc_surface_format := TPTC_FORMAT(TPTCBaseSurface(obj).format);
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_format := Nil;
End;
End;
End;
Function ptc_surface_option(obj : TPTC_SURFACE; _option : String) : Boolean;
Begin
Try
ptc_surface_option := TPTCBaseSurface(obj).option(_option);
Except
On error : TPTCError Do
Begin
ptc_exception_handle(error);
ptc_surface_option := False;
End;
End;
End;