summaryrefslogtreecommitdiff
path: root/gfx/carbon
diff options
context:
space:
mode:
authorgraemeg <graemeg@ae50a9b5-8222-0410-bf8d-8a13f76226bf>2007-07-23 08:54:39 +0000
committergraemeg <graemeg@ae50a9b5-8222-0410-bf8d-8a13f76226bf>2007-07-23 08:54:39 +0000
commit1e00430227e56fd2691f8374418f352c171039b1 (patch)
tree0451194af432a8b80270defb403bb100f1e95d90 /gfx/carbon
parent2ecc101eb1573c272d570289987807c44937631b (diff)
downloadfpGUI-1e00430227e56fd2691f8374418f352c171039b1.tar.xz
The first part of removing the obsolete fpGUI and replacing it with the new multi-handle design from the prototypes directory.
Diffstat (limited to 'gfx/carbon')
-rw-r--r--gfx/carbon/fpgfxpackage.lpk81
-rw-r--r--gfx/carbon/fpgfxpackage.pas15
-rw-r--r--gfx/carbon/gfx_carbon.pas513
-rw-r--r--gfx/carbon/gfxinterface.pas45
4 files changed, 0 insertions, 654 deletions
diff --git a/gfx/carbon/fpgfxpackage.lpk b/gfx/carbon/fpgfxpackage.lpk
deleted file mode 100644
index d6e740f4..00000000
--- a/gfx/carbon/fpgfxpackage.lpk
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0"?>
-<CONFIG>
- <Package Version="2">
- <Name Value="fpgfxpackage"/>
- <Author Value="Graeme Geldenhuys"/>
- <CompilerOptions>
- <Version Value="5"/>
- <SearchPaths>
- <OtherUnitFiles Value="../"/>
- <UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
- </SearchPaths>
- <CodeGeneration>
- <Generate Value="Faster"/>
- </CodeGeneration>
- <Other>
- <CompilerPath Value="$(CompPath)"/>
- </Other>
- </CompilerOptions>
- <Description Value="Free Pascal GFX Library - [Linux]
-"/>
- <License Value="Modified LGPL
-"/>
- <Version Minor="4"/>
- <Files Count="10">
- <Item1>
- <Filename Value="../gfxbase.pas"/>
- <UnitName Value="GfxBase"/>
- </Item1>
- <Item2>
- <Filename Value="gfx_carbon.pas"/>
- <UnitName Value="gfx_carbon"/>
- </Item2>
- <Item3>
- <Filename Value="gfxinterface.pas"/>
- <UnitName Value="gfxinterface"/>
- </Item3>
- <Item4>
- <Filename Value="../schar16.pas"/>
- <UnitName Value="schar16"/>
- </Item4>
- <Item5>
- <Filename Value="../unitkeys.pas"/>
- <UnitName Value="unitkeys"/>
- </Item5>
- <Item6>
- <Filename Value="../fpgfx.pas"/>
- <UnitName Value="fpgfx"/>
- </Item6>
- <Item7>
- <Filename Value="../geldirty.pas"/>
- <UnitName Value="GELDirty"/>
- </Item7>
- <Item8>
- <Filename Value="../gelimage.pas"/>
- <UnitName Value="GELImage"/>
- </Item8>
- <Item9>
- <Filename Value="../commandlineparams.pas"/>
- <UnitName Value="CommandLineParams"/>
- </Item9>
- <Item10>
- <Filename Value="../fputf8utils.pas"/>
- <UnitName Value="fpUTF8Utils"/>
- </Item10>
- </Files>
- <LazDoc Paths="../../docs/xml/gfx/"/>
- <RequiredPkgs Count="1">
- <Item1>
- <PackageName Value="FCL"/>
- <MinVersion Major="1" Valid="True"/>
- </Item1>
- </RequiredPkgs>
- <UsageOptions>
- <UnitPath Value="$(PkgOutDir)/"/>
- </UsageOptions>
- <PublishOptions>
- <Version Value="2"/>
- <IgnoreBinaries Value="False"/>
- </PublishOptions>
- </Package>
-</CONFIG>
diff --git a/gfx/carbon/fpgfxpackage.pas b/gfx/carbon/fpgfxpackage.pas
deleted file mode 100644
index d0ef0da0..00000000
--- a/gfx/carbon/fpgfxpackage.pas
+++ /dev/null
@@ -1,15 +0,0 @@
-{ This file was automatically created by Lazarus. Do not edit!
-This source is only used to compile and install the package.
- }
-
-unit fpgfxpackage;
-
-interface
-
-uses
- GfxBase, gfx_carbon, gfxinterface, schar16, unitkeys, fpgfx, GELDirty,
- GELImage, CommandLineParams, fpUTF8Utils;
-
-implementation
-
-end.
diff --git a/gfx/carbon/gfx_carbon.pas b/gfx/carbon/gfx_carbon.pas
deleted file mode 100644
index 6d1e7bfe..00000000
--- a/gfx/carbon/gfx_carbon.pas
+++ /dev/null
@@ -1,513 +0,0 @@
-{
- fpGUI - Free Pascal Graphical User Interface
-
- GFX_Carbon - Carbon (Mac OS X) target implementation
-
- Copyright (C) 2006 - 2007 See the file AUTHORS, included in this
- distribution, for details of the copyright.
-
- See the file COPYING.modifiedLGPL, included in this distribution,
- for details about the copyright.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-}
-unit gfx_carbon;
-
-{$ifdef fpc}
- {$mode delphi}{$H+}
-{$endif}
-
-interface
-
-uses
- { Pascal RTL Units }
- SysUtils, Classes,
- { Carbon headers }
- FPCMacOSAll,
- { fpGfx units }
- GfxBase;
-
-type
-
- ECarbonError = class(EGfxError);
-
- { TCarbonFont }
-
- TCarbonFont = class(TFCustomFont)
- public
- class function GetDefaultFontName(const AFontClass: TGfxFontClass): String; override;
- constructor Create(const Descriptor: String);
- destructor Destroy; override;
- end;
-
-
- { TCarbonCanvas }
-
- TCarbonCanvas = class(TFCustomCanvas)
- private
- protected
- function DoExcludeClipRect(const ARect: TRect): Boolean; override;
- function DoIntersectClipRect(const ARect: TRect): Boolean; override;
- function DoUnionClipRect(const ARect: TRect): Boolean; override;
- function DoGetClipRect: TRect; override;
- procedure DoDrawArc(const ARect: TRect; StartAngle, EndAngle: Single); override;
- procedure DoDrawCircle(const ARect: TRect); override;
- procedure DoDrawLine(const AFrom, ATo: TPoint); override;
- procedure DoDrawPoint(const APoint: TPoint); override;
- procedure DoFillRect(const ARect: TRect); override;
- procedure DoTextOut(const APosition: TPoint; const AText: String); override;
- procedure DoCopyRect(ASource: TFCustomCanvas; const ASourceRect: TRect; const ADestPos: TPoint); override;
- procedure DoMaskedCopyRect(ASource, AMask: TFCustomCanvas; const ASourceRect: TRect; const AMaskPos, ADestPos: TPoint); override;
- procedure DoDrawImageRect(AImage: TFCustomBitmap; ASourceRect: TRect; const ADestPos: TPoint); override;
- public
- constructor Create;
- destructor Destroy; override;
- function MapColor(const AColor: TGfxColor): TGfxPixel; override;
- function FontCellHeight: Integer; override;
- function TextExtent(const AText: String): TSize; override;
- procedure SaveState; override;
- procedure RestoreState; override;
- procedure EmptyClipRect; override;
- procedure DoSetColor(AColor: TGfxPixel); override;
- procedure SetFont(AFont: TFCustomFont); override;
- procedure SetLineStyle(ALineStyle: TGfxLineStyle); override;
- end;
-
-
- { TCarbonWindowCanvas }
-
- TCarbonWindowCanvas = class(TCarbonCanvas)
- public
- constructor Create;
- destructor Destroy; override;
- end;
-
- { TCarbonBitmapCanvas }
-
- TCarbonBitmapCanvas = class(TCarbonCanvas)
- public
- constructor Create(AWidth, AHeight: Integer);
- destructor Destroy; override;
- end;
-
- { TCarbonBitmap }
-
- TCarbonBitmap = class(TFCustomBitmap)
- private
- IsLocked: Boolean;
- public
- constructor Create(AWidth, AHeight: Integer; APixelFormat: TGfxPixelFormat); override;
- destructor Destroy; override;
- procedure Lock(out AData: Pointer; out AStride: LongWord); override;
- procedure Unlock; override;
- end;
-
- { TCarbonScreen }
-
- TCarbonScreen = class(TFCustomScreen)
- public
- constructor Create; override;
- end;
-
-
- { TCarbonApplication }
-
- TCarbonApplication = class(TFCustomApplication)
- private
- public
- { default methods }
- constructor Create; override;
- destructor Destroy; override;
- procedure Initialize(ADisplayName: String = ''); override;
- procedure Run; override;
- procedure Quit; override;
- end;
-
- { TCarbonWindow }
-
- TCarbonWindow = class(TFCustomWindow)
- private
- FHandle: WindowRef;
- contentView: HIViewRef;
- protected
- function GetTitle: String; override;
- procedure SetTitle(const ATitle: String); override;
- procedure DoSetCursor; override;
- function GetHandle: PtrUInt; override;
- public
- constructor Create(AParent: TFCustomWindow; AWindowOptions: TFWindowOptions); override;
- destructor Destroy; override;
- procedure DefaultHandler(var Message); override;
- procedure SetPosition(const APosition: TPoint); override;
- procedure SetSize(const ASize: TSize); override;
- procedure SetMinMaxSize(const AMinSize, AMaxSize: TSize); override;
- procedure SetClientSize(const ASize: TSize); override;
- procedure SetMinMaxClientSize(const AMinSize, AMaxSize: TSize); override;
- procedure Show; override;
- procedure Invalidate; override;
- procedure CaptureMouse; override;
- procedure ReleaseMouse; override;
- end;
-
-
-implementation
-
-{ TCarbonFont }
-
-class function TCarbonFont.GetDefaultFontName(const AFontClass: TGfxFontClass): String;
-begin
- Result:=inherited GetDefaultFontName(AFontClass);
-end;
-
-constructor TCarbonFont.Create(const Descriptor: String);
-begin
-
-end;
-
-destructor TCarbonFont.Destroy;
-begin
- inherited Destroy;
-end;
-
-{ TCarbonCanvas }
-
-function TCarbonCanvas.DoExcludeClipRect(const ARect: TRect): Boolean;
-begin
-
-end;
-
-function TCarbonCanvas.DoIntersectClipRect(const ARect: TRect): Boolean;
-begin
-
-end;
-
-function TCarbonCanvas.DoUnionClipRect(const ARect: TRect): Boolean;
-begin
-
-end;
-
-function TCarbonCanvas.DoGetClipRect: TRect;
-begin
-
-end;
-
-procedure TCarbonCanvas.DoDrawArc(const ARect: TRect; StartAngle, EndAngle: Single);
-begin
-
-end;
-
-procedure TCarbonCanvas.DoDrawCircle(const ARect: TRect);
-begin
-
-end;
-
-procedure TCarbonCanvas.DoDrawLine(const AFrom, ATo: TPoint);
-begin
-
-end;
-
-procedure TCarbonCanvas.DoDrawPoint(const APoint: TPoint);
-begin
-
-end;
-
-procedure TCarbonCanvas.DoFillRect(const ARect: TRect);
-begin
-
-end;
-
-procedure TCarbonCanvas.DoTextOut(const APosition: TPoint; const AText: String);
-begin
-
-end;
-
-procedure TCarbonCanvas.DoCopyRect(ASource: TFCustomCanvas;
- const ASourceRect: TRect; const ADestPos: TPoint);
-begin
-
-end;
-
-procedure TCarbonCanvas.DoMaskedCopyRect(ASource, AMask: TFCustomCanvas;
- const ASourceRect: TRect; const AMaskPos, ADestPos: TPoint);
-begin
-
-end;
-
-procedure TCarbonCanvas.DoDrawImageRect(AImage: TFCustomBitmap;
- ASourceRect: TRect; const ADestPos: TPoint);
-begin
-
-end;
-
-constructor TCarbonCanvas.Create;
-begin
- inherited Create;
-
-end;
-
-destructor TCarbonCanvas.Destroy;
-begin
- inherited Destroy;
-end;
-
-function TCarbonCanvas.MapColor(const AColor: TGfxColor): TGfxPixel;
-begin
-
-end;
-
-function TCarbonCanvas.FontCellHeight: Integer;
-begin
-
-end;
-
-function TCarbonCanvas.TextExtent(const AText: String): TSize;
-begin
-
-end;
-
-procedure TCarbonCanvas.SaveState;
-begin
-
-end;
-
-procedure TCarbonCanvas.RestoreState;
-begin
-
-end;
-
-procedure TCarbonCanvas.EmptyClipRect;
-begin
-
-end;
-
-procedure TCarbonCanvas.DoSetColor(AColor: TGfxPixel);
-begin
-
-end;
-
-procedure TCarbonCanvas.SetFont(AFont: TFCustomFont);
-begin
-
-end;
-
-procedure TCarbonCanvas.SetLineStyle(ALineStyle: TGfxLineStyle);
-begin
-
-end;
-
-{ TCarbonWindowCanvas }
-
-constructor TCarbonWindowCanvas.Create;
-begin
-
-end;
-
-destructor TCarbonWindowCanvas.Destroy;
-begin
- inherited Destroy;
-end;
-
-{ TCarbonBitmapCanvas }
-
-constructor TCarbonBitmapCanvas.Create(AWidth, AHeight: Integer);
-begin
-
-end;
-
-destructor TCarbonBitmapCanvas.Destroy;
-begin
- inherited Destroy;
-end;
-
-{ TCarbonBitmap }
-
-constructor TCarbonBitmap.Create(AWidth, AHeight: Integer;
- APixelFormat: TGfxPixelFormat);
-begin
- inherited Create(AWidth, AHeight, APixelFormat);
-end;
-
-destructor TCarbonBitmap.Destroy;
-begin
- inherited Destroy;
-end;
-
-procedure TCarbonBitmap.Lock(out AData: Pointer; out AStride: LongWord);
-begin
-
-end;
-
-procedure TCarbonBitmap.Unlock;
-begin
-
-end;
-
-{ TCarbonScreen }
-
-constructor TCarbonScreen.Create;
-begin
- inherited Create;
-end;
-
-{ TCarbonApplication }
-
-constructor TCarbonApplication.Create;
-begin
- inherited Create;
-end;
-
-destructor TCarbonApplication.Destroy;
-begin
- inherited Destroy;
-end;
-
-procedure TCarbonApplication.Initialize(ADisplayName: String);
-begin
-
-end;
-
-procedure TCarbonApplication.Run;
-begin
- RunApplicationEventLoop();
-end;
-
-procedure TCarbonApplication.Quit;
-begin
-
-end;
-
-{ TCarbonWindow }
-
-function WindowCommandHandler(nextHandler: EventHandlerCallRef; theEvent: EventRef; userDataPtr: UnivPtr): OSStatus;
-var
- status: OSStatus;
- ignoreResult: OSStatus;
- aCommand: HICommand;
- theAssociatedControl: ControlRef;
-begin
- status := eventNotHandledErr;
-
- ignoreResult := GetEventParameter(theEvent, kEventParamDirectObject, typeHICommand, NIL, sizeof(aCommand), NIL, @aCommand);
-
-// if aCommand.commandID = UInt32(FourCharCode(kButtonHello)) then status := ButtonHelloPressed()
-// else if aCommand.commandID = UInt32(FourCharCode(kButtonMessage)) then status := ButtonMessagePressed();
-
- Result := status;
-end;
-
-function TCarbonWindow.GetTitle: String;
-begin
-
-end;
-
-procedure TCarbonWindow.SetTitle(const ATitle: String);
-begin
-
-end;
-
-procedure TCarbonWindow.DoSetCursor;
-begin
-
-end;
-
-function TCarbonWindow.GetHandle: PtrUInt;
-begin
- Result := PtrUInt(FHandle);
-end;
-
-constructor TCarbonWindow.Create(AParent: TFCustomWindow; AWindowOptions: TFWindowOptions);
-var
- status, ignoreResult: OSStatus;
- cmdEvent: EventTypeSpec;
- eventHandler: EventHandlerUPP;
- QDRect: FPCMacOSAll.Rect;
-begin
- QDRect.left := 50;
- QDRect.Top := 50;
- QDRect.right := 300;
- QDRect.bottom := 300;
-
- status := CreateNewWindow(kDocumentWindowClass,
- (kWindowStandardDocumentAttributes or kWindowStandardHandlerAttribute
- or kWindowCompositingAttribute),
- QDRect, FHandle);
-
- if (status <> noErr) or (FHandle = nil) then
- begin
-// DoShowMessage('Error', 'CreateNewWindow failed');
- end;
-
- ignoreResult := SetWindowTitleWithCFString(FHandle, CFSTRP('Carbon FPC Hello World'));
-
- ignoreResult := HIViewFindByID(HIViewGetRoot(FHandle), kHIViewWindowContentID, contentView);
-
- { Add events }
-
- cmdEvent.eventClass := kEventClassCommand;
- cmdEvent.eventKind := kEventCommandProcess;
- eventHandler := NewEventHandlerUPP(@WindowCommandHandler);
- ignoreResult := InstallEventHandler(GetWindowEventTarget(FHandle),
- eventHandler, 1, @cmdEvent, nil, nil);
-
- { Creates a canvas }
- FCanvas := TCarbonCanvas.Create;
-end;
-
-destructor TCarbonWindow.Destroy;
-begin
-
-end;
-
-procedure TCarbonWindow.DefaultHandler(var Message);
-begin
-
-end;
-
-procedure TCarbonWindow.SetPosition(const APosition: TPoint);
-begin
-
-end;
-
-procedure TCarbonWindow.SetSize(const ASize: TSize);
-begin
-
-end;
-
-procedure TCarbonWindow.SetMinMaxSize(const AMinSize, AMaxSize: TSize);
-begin
-
-end;
-
-procedure TCarbonWindow.SetClientSize(const ASize: TSize);
-begin
-
-end;
-
-procedure TCarbonWindow.SetMinMaxClientSize(const AMinSize, AMaxSize: TSize);
-begin
-
-end;
-
-procedure TCarbonWindow.Show;
-begin
- ShowWindow(FHandle);
-end;
-
-procedure TCarbonWindow.Invalidate;
-begin
-
-end;
-
-procedure TCarbonWindow.CaptureMouse;
-begin
-
-end;
-
-procedure TCarbonWindow.ReleaseMouse;
-begin
-
-end;
-
-end.
diff --git a/gfx/carbon/gfxinterface.pas b/gfx/carbon/gfxinterface.pas
deleted file mode 100644
index 0a2bd181..00000000
--- a/gfx/carbon/gfxinterface.pas
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- fpGUI - Free Pascal Graphical User Interface
-
- GFXInterface - Default target selection unit for X11 target
-
- Copyright (C) 2006 - 2007 See the file AUTHORS, included in this
- distribution, for details of the copyright.
-
- See the file COPYING.modifiedLGPL, included in this distribution,
- for details about redistributing fpGUI.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-}
-unit gfxinterface;
-
-{$ifdef fpc}
- {$mode objfpc}{$H+}
-{$endif}
-
-interface
-
-uses
- gfx_carbon;
-
-type
-
- TDefCanvas = TCarbonCanvas;
-
- TDefFont = TCarbonFont;
-
- TDefScreen = TCarbonScreen;
-
- TDefApplication = TCarbonApplication;
-
- TDefWindow = TCarbonWindow;
-
- TDefBitmap = TCarbonBitmap;
-
-
-implementation
-
-end.
-