mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2026-01-13 14:35:49 +01:00
285 lines
6.2 KiB
C++
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;
|