Unit BGRALayerOriginal

📄 Source code

Description

Generic classes to implement originals, to be used in layered images as renderers

Uses

Overview

Structures

Name Description
Class TBGRACustomOriginalStorage Abstract original storage
Class TBGRAImageOriginalDiff Difference in an image original
Class TBGRALayerCustomOriginal Abtract class for an original that renders a layer in a layered image
Class TBGRALayerImageOriginal Original of an image in a layered image (affined transformed)
Class TBGRAMemOriginalStorage Storage available for an original
Class TBGRAOriginalDiff Difference of an original in a layered bitmap
Class TBGRAOriginalEditor Graphical editor for an original

Functions and Procedures

function FindLayerOriginalClass(AStorageClassName: string): TBGRALayerOriginalAny;
function LCLKeyToSpecialKey(AKey: Word; AShift: TShiftState): TSpecialKey;
procedure RegisterLayerOriginal(AClass: TBGRALayerOriginalAny);

Types

ArrayOfSingle = array of single;
PRectF = BGRABitmapTypes.PRectF;
TAffineMatrix = BGRATransform.TAffineMatrix;
TBGRALayerOriginalAny = class of TBGRALayerCustomOriginal;
TBGRAOriginalPolylineStyle = (...);
TClickPointHandlers = specialize TFPGList<TOriginalClickPointEvent>;
THoverPointHandlers = specialize TFPGList<TOriginalHoverPointEvent>;
TOriginalChangeEvent = procedure(ASender: TObject; ABounds: PRectF; var ADiff: TBGRAOriginalDiff) of object;
TOriginalClickPointEvent = procedure(ASender: TObject; AIndex: integer; AShift: TShiftState) of object;
TOriginalEditingChangeEvent = procedure(ASender: TObject) of object;
TOriginalEditorCursor = (...);
TOriginalHoverPointEvent = procedure(ASender: TObject; AIndex: integer) of object;
TOriginalMovePointEvent = procedure(ASender: TObject; APrevCoord, ANewCoord: TPointF; AShift: TShiftState) of object;
TOriginalStartMovePointEvent = procedure(ASender: TObject; AIndex: integer; AShift: TShiftState) of object;
TSpecialKey = (...);
TStartMoveHandlers = specialize TFPGList<TOriginalStartMovePointEvent>;

Constants

SpecialKeyStr: array[TSpecialKey] of string = ('Unknown', 'Backspace', 'Tab', 'Return', 'Escape', 'PageUp', 'PageDown', 'Home', 'End', 'Left', 'Up', 'Right', 'Down', 'Insert', 'Delete', 'Num0', 'Num1', 'Num2', 'Num3', 'Num4', 'Num5', 'Num6', 'Num7', 'Num8', 'Num9', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'Shift', 'Ctrl', 'Alt');
SpecialKeyToLCL: array[TSpecialKey] of Word = (VK_UNKNOWN, VK_BACK,VK_TAB,VK_RETURN,VK_ESCAPE, VK_PRIOR,VK_NEXT,VK_HOME,VK_END, VK_LEFT,VK_UP,VK_RIGHT,VK_DOWN, VK_INSERT,VK_DELETE, VK_NUMPAD0,VK_NUMPAD1,VK_NUMPAD2,VK_NUMPAD3,VK_NUMPAD4,VK_NUMPAD5,VK_NUMPAD6,VK_NUMPAD7,VK_NUMPAD8,VK_NUMPAD9, VK_F1,VK_F2,VK_F3,VK_F4,VK_F5,VK_F6,VK_F7,VK_F8,VK_F9,VK_F10,VK_F11,VK_F12, VK_A, VK_B, VK_C, VK_D, VK_E, VK_F, VK_G, VK_H, VK_I, VK_J, VK_K, VK_L, VK_M, VK_N, VK_O, VK_P, VK_Q, VK_R, VK_S, VK_T, VK_U, VK_V, VK_W, VK_X, VK_Y, VK_Z, VK_0, VK_1, VK_2, VK_3, VK_4, VK_5, VK_6, VK_7, VK_8, VK_9, VK_SHIFT, VK_CONTROL, VK_MENU);

Description

Functions and Procedures

function FindLayerOriginalClass(AStorageClassName: string): TBGRALayerOriginalAny;

This item has no description.

function LCLKeyToSpecialKey(AKey: Word; AShift: TShiftState): TSpecialKey;

This item has no description.

procedure RegisterLayerOriginal(AClass: TBGRALayerOriginalAny);

This item has no description.

Types

ArrayOfSingle = array of single;

This item has no description.

PRectF = BGRABitmapTypes.PRectF;

Pointer to a TRectF structure

TAffineMatrix = BGRATransform.TAffineMatrix;

Contains an affine matrix, i.e. a matrix to transform linearly and translate TPointF coordinates

TBGRALayerOriginalAny = class of TBGRALayerCustomOriginal;

This item has no description.

TBGRAOriginalPolylineStyle = (...);

This item has no description.

Values
  • opsNone
  • opsSolid
  • opsDash
  • opsDashWithShadow
TClickPointHandlers = specialize TFPGList<TOriginalClickPointEvent>;

This item has no description.

THoverPointHandlers = specialize TFPGList<TOriginalHoverPointEvent>;

This item has no description.

TOriginalChangeEvent = procedure(ASender: TObject; ABounds: PRectF; var ADiff: TBGRAOriginalDiff) of object;

This item has no description.

TOriginalClickPointEvent = procedure(ASender: TObject; AIndex: integer; AShift: TShiftState) of object;

This item has no description.

TOriginalEditingChangeEvent = procedure(ASender: TObject) of object;

This item has no description.

TOriginalEditorCursor = (...);

This item has no description.

Values
  • oecDefault
  • oecMove
  • oecMoveW
  • oecMoveE
  • oecMoveN
  • oecMoveS
  • oecMoveNE
  • oecMoveSW
  • oecMoveNW
  • oecMoveSE
  • oecHandPoint
  • oecText
TOriginalHoverPointEvent = procedure(ASender: TObject; AIndex: integer) of object;

This item has no description.

TOriginalMovePointEvent = procedure(ASender: TObject; APrevCoord, ANewCoord: TPointF; AShift: TShiftState) of object;

This item has no description.

TOriginalStartMovePointEvent = procedure(ASender: TObject; AIndex: integer; AShift: TShiftState) of object;

This item has no description.

TSpecialKey = (...);

This item has no description.

Values
  • skUnknown
  • skBackspace
  • skTab
  • skReturn
  • skEscape
  • skPageUp
  • skPageDown
  • skHome
  • skEnd
  • skLeft
  • skUp
  • skRight
  • skDown
  • skInsert
  • skDelete
  • skNum0
  • skNum1
  • skNum2
  • skNum3
  • skNum4
  • skNum5
  • skNum6
  • skNum7
  • skNum8
  • skNum9
  • skF1
  • skF2
  • skF3
  • skF4
  • skF5
  • skF6
  • skF7
  • skF8
  • skF9
  • skF10
  • skF11
  • skF12
  • skA
  • skB
  • skC
  • skD
  • skE
  • skF
  • skG
  • skH
  • skI
  • skJ
  • skK
  • skL
  • skM
  • skN
  • skO
  • skP
  • skQ
  • skR
  • skS
  • skT
  • skU
  • skV
  • skW
  • skX
  • skY
  • skZ
  • sk0
  • sk1
  • sk2
  • sk3
  • sk4
  • sk5
  • sk6
  • sk7
  • sk8
  • sk9
  • skShift
  • skCtrl
  • skAlt
TStartMoveHandlers = specialize TFPGList<TOriginalStartMovePointEvent>;

This item has no description.

Constants

SpecialKeyStr: array[TSpecialKey] of string = ('Unknown', 'Backspace', 'Tab', 'Return', 'Escape', 'PageUp', 'PageDown', 'Home', 'End', 'Left', 'Up', 'Right', 'Down', 'Insert', 'Delete', 'Num0', 'Num1', 'Num2', 'Num3', 'Num4', 'Num5', 'Num6', 'Num7', 'Num8', 'Num9', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'Shift', 'Ctrl', 'Alt');

This item has no description.

SpecialKeyToLCL: array[TSpecialKey] of Word = (VK_UNKNOWN, VK_BACK,VK_TAB,VK_RETURN,VK_ESCAPE, VK_PRIOR,VK_NEXT,VK_HOME,VK_END, VK_LEFT,VK_UP,VK_RIGHT,VK_DOWN, VK_INSERT,VK_DELETE, VK_NUMPAD0,VK_NUMPAD1,VK_NUMPAD2,VK_NUMPAD3,VK_NUMPAD4,VK_NUMPAD5,VK_NUMPAD6,VK_NUMPAD7,VK_NUMPAD8,VK_NUMPAD9, VK_F1,VK_F2,VK_F3,VK_F4,VK_F5,VK_F6,VK_F7,VK_F8,VK_F9,VK_F10,VK_F11,VK_F12, VK_A, VK_B, VK_C, VK_D, VK_E, VK_F, VK_G, VK_H, VK_I, VK_J, VK_K, VK_L, VK_M, VK_N, VK_O, VK_P, VK_Q, VK_R, VK_S, VK_T, VK_U, VK_V, VK_W, VK_X, VK_Y, VK_Z, VK_0, VK_1, VK_2, VK_3, VK_4, VK_5, VK_6, VK_7, VK_8, VK_9, VK_SHIFT, VK_CONTROL, VK_MENU);

This item has no description.