Files
befpc/bepascal/bepascal/be/interface/window.pp

1368 lines
58 KiB
ObjectPascal

{ BePascal - A pascal wrapper around the BeOS API
Copyright (C) 2002 Olivier Coursiere
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library 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. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
}
unit Window;
interface
uses
beobj, looper, rect, os, application, view, message, handler, appdefs,
button, archivable, supportDefs, GraphicDefs;
const
// window_type
B_UNTYPED_WINDOW = 0;
B_TITLED_WINDOW = 1;
B_MODAL_WINDOW = 3;
B_DOCUMENT_WINDOW = 11;
B_BORDERED_WINDOW = 20;
B_FLOATING_WINDOW = 21;
// window_look
B_BORDERED_WINDOW_LOOK = 20;
B_NO_BORDER_WINDOW_LOOK = 19;
B_TITLED_WINDOW_LOOK = 1;
B_DOCUMENT_WINDOW_LOOK = 11;
B_MODAL_WINDOW_LOOK = 3;
B_FLOATING_WINDOW_LOOK = 7;
// window_feel
B_NORMAL_WINDOW_FEEL = 0;
B_MODAL_SUBSET_WINDOW_FEEL = 2;
B_MODAL_APP_WINDOW_FEEL = 1;
B_MODAL_ALL_WINDOW_FEEL = 3;
B_FLOATING_SUBSET_WINDOW_FEEL = 5;
B_FLOATING_APP_WINDOW_FEEL = 4;
B_FLOATING_ALL_WINDOW_FEEL = 6;
// flags
B_NOT_MOVABLE = $00000001;
B_NOT_CLOSABLE = $00000020;
B_NOT_ZOOMABLE = $00000040;
B_NOT_MINIMIZABLE = $00004000;
B_NOT_RESIZABLE = $00000002;
B_NOT_H_RESIZABLE = $00000004;
B_NOT_V_RESIZABLE = $00000008;
B_AVOID_FRONT = $00000080;
B_AVOID_FOCUS = $00002000;
B_WILL_ACCEPT_FIRST_CLICK = $00000010;
B_OUTLINE_RESIZE = $00001000;
B_NO_WORKSPACE_ACTIVATION = $00000100;
B_NOT_ANCHORED_ON_ACTIVATE = $00020000;
B_ASYNCHRONOUS_CONTROLS = $00080000;
B_QUIT_ON_WINDOW_CLOSE = $00100000;
B_CURRENT_WORKSPACE = 0;
B_ALL_WORKSPACES = $ffffffff;
type
PCardinal = ^Cardinal;
// PInteger = ^Integer;
TWindow = class(TLooper)
public
constructor Create(aFrame : TRect; aTitle : PChar; aNewType, SomeFlags, AWorkspaces : Cardinal); virtual;
destructor Destroy; override;
procedure Show;
procedure Hide;
procedure AddChild(aView : TView; sibling : TView);
function QuitRequested : boolean; override;
function RemoveChild(aView : TView) : boolean;
// New
// constructor Create;
// constructor Create(frame : TRect; title : PChar; look : PCardinal; feel : Cardinal; flags : Cardinal; workspace : Cardinal);
// destructor Destroy;
// constructor Create(data : TMessage);
function Instantiate(data : TMessage) : TArchivable;
function Archive(data : TMessage; deep : boolean) : TStatus_t;
procedure Quit;
// procedure Close;
// procedure AddChild(child : TView; before : TView);
// function RemoveChild(child : TView) : boolean;
function CountChildren : integer;
function ChildAt(index : integer) : TView;
procedure DispatchMessage(message : TMessage; handler : THandler); override;
procedure MessageReceived(message : TMessage); override;
procedure FrameMoved(new_position : TPoint);
procedure WorkspacesChanged(old_ws : Cardinal; new_ws : Cardinal);
procedure WorkspaceActivated(ws : integer; state : boolean);
procedure FrameResized(new_width : double; new_height : double);
procedure Minimize(aMinimize : boolean);
procedure Zoom(rec_position : TPoint; rec_width : double; rec_height : double);
procedure Zoom;
procedure SetZoomLimits(max_h : double; max_v : double);
procedure ScreenChanged(screen_size : TRect; depth : TColor_Space);
procedure SetPulseRate(rate : TBigtime_t);
function PulseRate : TBigtime_t;
procedure AddShortcut(key : Cardinal; modifiers : Cardinal; msg : TMessage);
procedure AddShortcut(key : Cardinal; modifiers : Cardinal; msg : TMessage; target : THandler);
procedure RemoveShortcut(key : Cardinal; modifiers : Cardinal);
procedure SetDefaultButton(button : TButton);
function DefaultButton : TButton;
procedure MenusBeginning;
procedure MenusEnded;
function NeedsUpdate : boolean;
procedure UpdateIfNeeded;
function FindView(view_name : PChar) : TView;
function FindView(aPoint : TPoint) : TView;
function CurrentFocus : TView;
procedure Activate(aValue : boolean);
procedure WindowActivated(state : boolean);
// procedure ConvertToScreen(var pt : TPoint); overload;
function ConvertToScreen(pt : TPoint) : TPoint; overload;
// procedure ConvertFromScreen(var pt : TPoint);
function ConvertFromScreen(pt : TPoint) : TPoint;
// procedure ConvertToScreen(var rect : TRect);
// function ConvertToScreen(rect : TRect) : TRect;
// procedure ConvertFromScreen(var rect : TRect);
// function ConvertFromScreen(rect : TRect) : TRect;
procedure MoveBy(dx : double; dy : double);
procedure MoveTo(aPoint : TPoint);
procedure MoveTo(x : double; y : double);
procedure ResizeBy(dx : double; dy : double);
procedure ResizeTo(width : double; height : double);
// procedure Show;
// procedure Hide;
function IsHidden : boolean;
function IsMinimized : boolean;
procedure Flush;
procedure Sync;
function SendBehind(window : TWindow) : TStatus_t;
procedure DisableUpdates;
procedure EnableUpdates;
procedure BeginViewTransaction;
procedure EndViewTransaction;
function Bounds : TRect;
function GetFrame : TRect;
function GetTitle : PChar;
procedure SetTitle(title : PChar);
function IsFront : boolean;
function IsActive : boolean;
// procedure SetKeyMenuBar(bar : TMenuBar);
// function KeyMenuBar : TMenuBar;
procedure SetSizeLimits(min_h : double; max_h : double; min_v : double; max_v : double);
procedure GetSizeLimits(min_h : double; max_h : double; min_v : double; max_v : double);
function Workspaces : Cardinal;
procedure SetWorkspaces(aWorkspace : Cardinal);
function LastMouseMovedView : TView;
function ResolveSpecifier(msg : TMessage; index : integer; specifier : TMessage; form : integer; aProperty : PChar) : THandler;
function GetSupportedSuites(data : TMessage) : TStatus_t;
function AddToSubset(window : TWindow) : TStatus_t;
function RemoveFromSubset(window : TWindow) : TStatus_t;
function Perform(d : TPerform_code; arg : Pointer) : TStatus_t;
function SetType(aType : Cardinal) : TStatus_t;
function GetType : Cardinal;
function SetLook(look : PCardinal) : TStatus_t;
function GetLook : PCardinal;
function SetFeel(feel : Cardinal) : TStatus_t;
function GetFeel : Cardinal;
function SetFlags(aFlags : Cardinal) : TStatus_t;
function GetFlags : Cardinal;
function IsModal : boolean;
function IsFloating : boolean;
function SetWindowAlignment(mode : Cardinal; h : integer; hOffset : integer; width : integer; widthOffset : integer; v : integer; vOffset : integer; height : integer; heightOffset : integer) : TStatus_t;
function GetWindowAlignment(mode : PCardinal; var h : integer; var hOffset : integer; var width : integer; var widthOffset : integer; var v : integer; var vOffset : integer; var height : integer; var heightOffset : integer) : TStatus_t;
// function QuitRequested : boolean;
function Run : TThread_id;
end;
function BWindow_Create(AObject : TObject; frame : TCPlusObject; title : PChar;
atype, flags, workspaces : cardinal) : TCplusObject; cdecl; external BePascalLibName name 'BWindow_Create_1';
procedure BWindow_Free(CPlusObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Free';
procedure BWindow_Show(CPlusObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Show';
procedure BWindow_Hide(CPlusObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Hide';
procedure BWindow_AddChild(CPlusObject : TCPlusObject; aView : TCPlusObject; sibling : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_AddChild';
function BWindow_RemoveChild(CPlusObject : TCPlusObject; aView : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_RemoveChild';
// New
//function BWindow_Create(AObject : TBeObject; data : TMessage); cdecl; external BePascalLibName name 'BWindow_Create';
function BWindow_Instantiate(AObject : TCPlusObject; data : TCPlusObject) : TArchivable; cdecl; external BePascalLibName name 'BWindow_Instantiate';
function BWindow_Archive(AObject : TCPlusObject; data : TCPlusObject; deep : boolean) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_Archive';
procedure BWindow_Quit(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Quit';
//procedure BWindow_Close(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Close';
//procedure BWindow_AddChild(AObject : TCPlusObject; child : TCPlusObject; before : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_AddChild';
function BWindow_RemoveChild(AObject : TCPlusObject; child : TView) : boolean; cdecl; external BePascalLibName name 'BWindow_RemoveChild';
function BWindow_CountChildren(AObject : TCPlusObject) : integer; cdecl; external BePascalLibName name 'BWindow_CountChildren';
function BWindow_ChildAt(AObject : TCPlusObject; index : integer) : TView; cdecl; external BePascalLibName name 'BWindow_ChildAt';
procedure BWindow_DispatchMessage(AObject : TCPlusObject; message : TMessage; handler : THandler); cdecl; external BePascalLibName name 'BWindow_DispatchMessage';
procedure BWindow_MessageReceived(AObject : TCPlusObject; message : TMessage); cdecl; external BePascalLibName name 'BWindow_MessageReceived';
procedure BWindow_FrameMoved(AObject : TCPlusObject; new_position : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_FrameMoved';
procedure BWindow_WorkspacesChanged(AObject : TCPlusObject; old_ws : Cardinal; new_ws : Cardinal); cdecl; external BePascalLibName name 'BWindow_WorkspacesChanged';
procedure BWindow_WorkspaceActivated(AObject : TCPlusObject; ws : integer; state : boolean); cdecl; external BePascalLibName name 'BWindow_WorkspaceActivated';
procedure BWindow_FrameResized(AObject : TCPlusObject; new_width : double; new_height : double); cdecl; external BePascalLibName name 'BWindow_FrameResized';
procedure BWindow_Minimize(AObject : TCPlusObject; minimize : boolean); cdecl; external BePascalLibName name 'BWindow_Minimize';
procedure BWindow_Zoom(AObject : TCPlusObject; rec_position : TCPlusObject; rec_width : double; rec_height : double); cdecl; external BePascalLibName name 'BWindow_Zoom';
procedure BWindow_Zoom(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Zoom';
procedure BWindow_SetZoomLimits(AObject : TCPlusObject; max_h : double; max_v : double); cdecl; external BePascalLibName name 'BWindow_SetZoomLimits';
procedure BWindow_ScreenChanged(AObject : TCPlusObject; screen_size : TCPlusObject; depth : TColor_Space); cdecl; external BePascalLibName name 'BWindow_ScreenChanged';
procedure BWindow_SetPulseRate(AObject : TCPlusObject; rate : TBigtime_t); cdecl; external BePascalLibName name 'BWindow_SetPulseRate';
function BWindow_PulseRate(AObject : TCPlusObject) : TBigtime_t; cdecl; external BePascalLibName name 'BWindow_PulseRate';
procedure BWindow_AddShortcut(AObject : TCPlusObject; key : Cardinal; modifiers : Cardinal; msg : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_AddShortcut';
procedure BWindow_AddShortcut(AObject : TCPlusObject; key : Cardinal; modifiers : Cardinal; msg : TCPlusObject; target : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_AddShortcut';
procedure BWindow_RemoveShortcut(AObject : TCPlusObject; key : Cardinal; modifiers : Cardinal); cdecl; external BePascalLibName name 'BWindow_RemoveShortcut';
procedure BWindow_SetDefaultButton(AObject : TCPlusObject; button : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_SetDefaultButton';
function BWindow_DefaultButton(AObject : TCPlusObject) : TButton; cdecl; external BePascalLibName name 'BWindow_DefaultButton';
procedure BWindow_MenusBeginning(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_MenusBeginning';
procedure BWindow_MenusEnded(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_MenusEnded';
function BWindow_NeedsUpdate(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_NeedsUpdate';
procedure BWindow_UpdateIfNeeded(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_UpdateIfNeeded';
function BWindow_FindView(AObject : TCPlusObject; view_name : PChar) : TView; cdecl; external BePascalLibName name 'BWindow_FindView';
function BWindow_FindView(AObject : TCPlusObject; aPoint : TPoint) : TView; cdecl; external BePascalLibName name 'BWindow_FindView';
function BWindow_CurrentFocus(AObject : TCPlusObject) : TView; cdecl; external BePascalLibName name 'BWindow_CurrentFocus';
procedure BWindow_Activate(AObject : TCPlusObject; aState : boolean); cdecl; external BePascalLibName name 'BWindow_Activate';
procedure BWindow_WindowActivated(AObject : TCPlusObject; state : boolean); cdecl; external BePascalLibName name 'BWindow_WindowActivated';
//procedure BWindow_ConvertToScreen(AObject : TCPlusObject; var pt : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_ConvertToScreen';
function BWindow_ConvertToScreen(AObject : TCPlusObject; pt : TCPlusObject) : TPoint; cdecl; external BePascalLibName name 'BWindow_ConvertToScreen_1';
//procedure BWindow_ConvertFromScreen(AObject : TCPlusObject; var pt : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_ConvertFromScreen';
function BWindow_ConvertFromScreen(AObject : TCPlusObject; pt : TCPlusObject) : TPoint; cdecl; external BePascalLibName name 'BWindow_ConvertFromScreen_1';
//procedure BWindow_ConvertToScreen(AObject : TCPlusObject; var rect : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_ConvertToScreen';
//function BWindow_ConvertToScreen(AObject : TCPlusObject; rect : TCPlusObject) : TRect; cdecl; external BePascalLibName name 'BWindow_ConvertToScreen';
//procedure BWindow_ConvertFromScreen(AObject : TCPlusObject; var rect : TRect); cdecl; external BePascalLibName name 'BWindow_ConvertFromScreen';
//function BWindow_ConvertFromScreen(AObject : TCPlusObject; rect : TRect) : TRect; cdecl; external BePascalLibName name 'BWindow_ConvertFromScreen';
procedure BWindow_MoveBy(AObject : TCPlusObject; dx : double; dy : double); cdecl; external BePascalLibName name 'BWindow_MoveBy';
procedure BWindow_MoveTo(AObject : TCPlusObject; aPoint : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_MoveTo';
procedure BWindow_MoveTo(AObject : TCPlusObject; x : double; y : double); cdecl; external BePascalLibName name 'BWindow_MoveTo';
procedure BWindow_ResizeBy(AObject : TCPlusObject; dx : double; dy : double); cdecl; external BePascalLibName name 'BWindow_ResizeBy';
procedure BWindow_ResizeTo(AObject : TCPlusObject; width : double; height : double); cdecl; external BePascalLibName name 'BWindow_ResizeTo';
//procedure BWindow_Show(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Show';
//procedure BWindow_Hide(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Hide';
function BWindow_IsHidden(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_IsHidden';
function BWindow_IsMinimized(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_IsMinimized';
procedure BWindow_Flush(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Flush';
procedure BWindow_Sync(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_Sync';
function BWindow_SendBehind(AObject : TCPlusObject; window : TWindow) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_SendBehind';
procedure BWindow_DisableUpdates(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_DisableUpdates';
procedure BWindow_EnableUpdates(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_EnableUpdates';
procedure BWindow_BeginViewTransaction(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BeginViewTransaction';
procedure BWindow_EndViewTransaction(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_EndViewTransaction';
function BWindow_Bounds(AObject : TCPlusObject) : TRect; cdecl; external BePascalLibName name 'BWindow_Bounds';
function BWindow_Frame(AObject : TCPlusObject) : TRect; cdecl; external BePascalLibName name 'BWindow_Frame';
function BWindow_Title(AObject : TCPlusObject) : PChar; cdecl; external BePascalLibName name 'BWindow_Title';
procedure BWindow_SetTitle(AObject : TCPlusObject; title : PChar); cdecl; external BePascalLibName name 'BWindow_SetTitle';
function BWindow_IsFront(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_IsFront';
function BWindow_IsActive(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_IsActive';
//procedure BWindow_SetKeyMenuBar(AObject : TCPlusObject; bar : TMenuBar); cdecl; external BePascalLibName name 'BWindow_SetKeyMenuBar';
//function BWindow_KeyMenuBar(AObject : TCPlusObject) : TMenuBar; cdecl; external BePascalLibName name 'BWindow_KeyMenuBar';
procedure BWindow_SetSizeLimits(AObject : TCPlusObject; min_h : double; max_h : double; min_v : double; max_v : double); cdecl; external BePascalLibName name 'BWindow_SetSizeLimits';
procedure BWindow_GetSizeLimits(AObject : TCPlusObject; min_h : double; max_h : double; min_v : double; max_v : double); cdecl; external BePascalLibName name 'BWindow_GetSizeLimits';
function BWindow_Workspaces(AObject : TCPlusObject) : Cardinal; cdecl; external BePascalLibName name 'BWindow_Workspaces';
procedure BWindow_SetWorkspaces(AObject : TCPlusObject; Workspaces : Cardinal); cdecl; external BePascalLibName name 'BWindow_SetWorkspaces';
function BWindow_LastMouseMovedView(AObject : TCPlusObject) : TView; cdecl; external BePascalLibName name 'BWindow_LastMouseMovedView';
function BWindow_ResolveSpecifier(AObject : TCPlusObject; msg : TCPlusObject; index : integer; specifier : TCPlusObject; form : integer; aProperty : PChar) : THandler; cdecl; external BePascalLibName name 'BWindow_ResolveSpecifier';
function BWindow_GetSupportedSuites(AObject : TCPlusObject; data : TCPlusObject) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_GetSupportedSuites';
function BWindow_AddToSubset(AObject : TCPlusObject; window : TCPlusObject) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_AddToSubset';
function BWindow_RemoveFromSubset(AObject : TCPlusObject; window : TCPlusObject) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_RemoveFromSubset';
function BWindow_Perform(AObject : TCPlusObject; d : TPerform_code; arg : Pointer) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_Perform';
function BWindow_SetType(AObject : TCPlusObject; aType : Cardinal) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_SetType';
function BWindow_Type(AObject : TCPlusObject) : Cardinal; cdecl; external BePascalLibName name 'BWindow_Type';
function BWindow_SetLook(AObject : TCPlusObject; look : PCardinal) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_SetLook';
function BWindow_Look(AObject : TCPlusObject) : PCardinal; cdecl; external BePascalLibName name 'BWindow_Look';
function BWindow_SetFeel(AObject : TCPlusObject; feel : Cardinal) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_SetFeel';
function BWindow_Feel(AObject : TCPlusObject) : Cardinal; cdecl; external BePascalLibName name 'BWindow_Feel';
function BWindow_SetFlags(AObject : TCPlusObject; aFlags : Cardinal) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_SetFlags';
function BWindow_Flags(AObject : TCPlusObject) : Cardinal; cdecl; external BePascalLibName name 'BWindow_Flags';
function BWindow_IsModal(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_IsModal';
function BWindow_IsFloating(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_IsFloating';
function BWindow_SetWindowAlignment(AObject : TCPlusObject; mode : Cardinal; h : integer; hOffset : integer; width : integer; widthOffset : integer; v : integer; vOffset : integer; height : integer; heightOffset : integer) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_SetWindowAlignment';
function BWindow_GetWindowAlignment(AObject : TCPlusObject; mode : PCardinal; var h : integer; var hOffset : integer; var width : integer; widthOffset : integer; var v : integer; var vOffset : integer; var height : integer; var heightOffset : integer) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_GetWindowAlignment';
function BWindow_QuitRequested(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_QuitRequested';
function BWindow_Run(AObject : TCPlusObject) : TThread_id; cdecl; external BePascalLibName name 'BWindow_Run';
procedure BWindow_BLooper(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BLooper inherited';
//procedure BWindow__ReservedWindow1(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__ReservedWindow1';
//procedure BWindow__ReservedWindow2(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__ReservedWindow2';
//procedure BWindow__ReservedWindow3(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__ReservedWindow3';
//procedure BWindow__ReservedWindow4(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__ReservedWindow4';
//procedure BWindow__ReservedWindow5(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__ReservedWindow5';
//procedure BWindow__ReservedWindow6(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__ReservedWindow6';
//procedure BWindow__ReservedWindow7(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__ReservedWindow7';
//procedure BWindow__ReservedWindow8(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__ReservedWindow8';
//function BWindow_Create(AObject : TBeObject); cdecl; external BePascalLibName name 'BWindow_Create';
//function BWindow_Create(AObject : TBeObject; : TWindow); cdecl; external BePascalLibName name 'BWindow_Create';
//function BWindow_operator=(AObject : TCPlusObject; : TWindow) : TWindow; cdecl; external BePascalLibName name 'BWindow_operator=';
//function BWindow_Create(AObject : TBeObject; frame : TRect; depth : TColor_Space; bitmapFlags : Cardinal; rowBytes : integer); cdecl; external BePascalLibName name 'BWindow_Create';
//procedure BWindow_InitData(AObject : TCPlusObject; frame : TRect; title : PChar; look : PCadinal; feel : Cardinal; flags : Cardinal; workspace : Cardinal); cdecl; external BePascalLibName name 'BWindow_InitData';
//function BWindow_ArchiveChildren(AObject : TCPlusObject; data : TMessage; deep : boolean) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_ArchiveChildren';
//function BWindow_UnarchiveChildren(AObject : TCPlusObject; data : TMessage) : TStatus_t; cdecl; external BePascalLibName name 'BWindow_UnarchiveChildren';
//procedure BWindow_BitmapClose(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BitmapClose';
//procedure BWindow_task_looper(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_task_looper';
//procedure BWindow_start_drag(AObject : TCPlusObject; msg : TMessage; token : integer; offset : TPoint; track_rect : TRect; reply_to : THandler); cdecl; external BePascalLibName name 'BWindow_start_drag';
//procedure BWindow_start_drag(AObject : TCPlusObject; msg : TMessage; token : integer; offset : TPoint; bitmap_token : integer; dragMode : TDrawing_Mode; reply_to : THandler); cdecl; external BePascalLibName name 'BWindow_start_drag';
//procedure BWindow_view_builder(AObject : TCPlusObject; a_view : TView); cdecl; external BePascalLibName name 'BWindow_view_builder';
//procedure BWindow_attach_builder(AObject : TCPlusObject; a_view : TView); cdecl; external BePascalLibName name 'BWindow_attach_builder';
//procedure BWindow_detach_builder(AObject : TCPlusObject; a_view : TView); cdecl; external BePascalLibName name 'BWindow_detach_builder';
//function BWindow_get_server_token(AObject : TCPlusObject) : integer; cdecl; external BePascalLibName name 'BWindow_get_server_token';
//function BWindow_extract_drop(AObject : TCPlusObject; an_event : TMessage; target : THandler) : TMessage; cdecl; external BePascalLibName name 'BWindow_extract_drop';
//procedure BWindow_movesize(AObject : TCPlusObject; opcode : Cardinal; h : double; v : double); cdecl; external BePascalLibName name 'BWindow_movesize';
//function BWindow_ReadMessageFromPort(AObject : TCPlusObject; tout : TBigtime_t) : TMessage; cdecl; external BePascalLibName name 'BWindow_ReadMessageFromPort';
//function BWindow_MessagesWaiting(AObject : TCPlusObject) : integer; cdecl; external BePascalLibName name 'BWindow_MessagesWaiting';
//procedure BWindow_handle_activate(AObject : TCPlusObject; an_event : TMessage); cdecl; external BePascalLibName name 'BWindow_handle_activate';
//procedure BWindow_do_view_frame(AObject : TCPlusObject; an_event : TMessage); cdecl; external BePascalLibName name 'BWindow_do_view_frame';
//procedure BWindow_do_value_change(AObject : TCPlusObject; an_event : TMessage; handler : THandler); cdecl; external BePascalLibName name 'BWindow_do_value_change';
//procedure BWindow_do_mouse_down(AObject : TCPlusObject; an_event : TMessage; target : TView); cdecl; external BePascalLibName name 'BWindow_do_mouse_down';
//procedure BWindow_do_mouse_moved(AObject : TCPlusObject; an_event : TMessage; target : TView); cdecl; external BePascalLibName name 'BWindow_do_mouse_moved';
//procedure BWindow_do_key_down(AObject : TCPlusObject; an_event : TMessage; handler : THandler); cdecl; external BePascalLibName name 'BWindow_do_key_down';
//procedure BWindow_do_key_up(AObject : TCPlusObject; an_event : TMessage; handler : THandler); cdecl; external BePascalLibName name 'BWindow_do_key_up';
//procedure BWindow_do_menu_event(AObject : TCPlusObject; an_event : TMessage); cdecl; external BePascalLibName name 'BWindow_do_menu_event';
//procedure BWindow_do_draw_views(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_do_draw_views';
//function BWindow_ConvertToMessage(AObject : TCPlusObject; raw : Pointer; code : integer) : TMessage; cdecl; external BePascalLibName name 'BWindow_ConvertToMessage';
//function BWindow_allocShortcut(AObject : TCPlusObject; key : Cardinal; modifiers : Cardinal) : TCmd_Key; cdecl; external BePascalLibName name 'BWindow_allocShortcut';
//function BWindow_FindShortcut(AObject : TCPlusObject; key : Cardinal; modifiers : Cardinal) : TCmd_Key; cdecl; external BePascalLibName name 'BWindow_FindShortcut';
//procedure BWindow_AddShortcut(AObject : TCPlusObject; key : Cardinal; modifiers : Cardinal; item : TMenuItem); cdecl; external BePascalLibName name 'BWindow_AddShortcut';
//procedure BWindow_post_message(AObject : TCPlusObject; message : TMessage); cdecl; external BePascalLibName name 'BWindow_post_message';
//procedure BWindow_SetLocalTitle(AObject : TCPlusObject; new_title : PChar); cdecl; external BePascalLibName name 'BWindow_SetLocalTitle';
//procedure BWindow_enable_pulsing(AObject : TCPlusObject; enable : boolean); cdecl; external BePascalLibName name 'BWindow_enable_pulsing';
//function BWindow_determine_target(AObject : TCPlusObject; msg : TMessage; target : THandler; pref : boolean) : THandler; cdecl; external BePascalLibName name 'BWindow_determine_target';
//procedure BWindow_kb_navigate(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_kb_navigate';
//procedure BWindow_navigate_to_next(AObject : TCPlusObject; direction : integer; group : boolean); cdecl; external BePascalLibName name 'BWindow_navigate_to_next';
//procedure BWindow_set_focus(AObject : TCPlusObject; focus : TView; notify_input_server : boolean); cdecl; external BePascalLibName name 'BWindow_set_focus';
//function BWindow_InUpdate(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_InUpdate';
//procedure BWindow_DequeueAll(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_DequeueAll';
//function BWindow_find_token_and_handler(AObject : TCPlusObject; msg : TMessage; token : ^integer; handler : THandler) : boolean; cdecl; external BePascalLibName name 'BWindow_find_token_and_handler';
//function BWindow_compose_type(AObject : TCPlusObject; look : PCadinal; feel : Cardinal) : Cardinal; cdecl; external BePascalLibName name 'BWindow_compose_type';
//procedure BWindow_decompose_type(AObject : TCPlusObject; type : Cardinal; look : PCardinal; feel : PCardinal); cdecl; external BePascalLibName name 'BWindow_decompose_type';
//procedure BWindow_SetIsFilePanel(AObject : TCPlusObject; panel : boolean); cdecl; external BePascalLibName name 'BWindow_SetIsFilePanel';
//function BWindow_IsFilePanel(AObject : TCPlusObject) : boolean; cdecl; external BePascalLibName name 'BWindow_IsFilePanel';
//procedure BWindow_AddFloater(AObject : TCPlusObject; a_floating_window : TWindow); cdecl; external BePascalLibName name 'BWindow_AddFloater';
//procedure BWindow_RemoveFloater(AObject : TCPlusObject; a_floating_window : TWindow); cdecl; external BePascalLibName name 'BWindow_RemoveFloater';
//function BWindow_WindowType(AObject : TCPlusObject) : Cardinal; cdecl; external BePascalLibName name 'BWindow_WindowType';
//procedure BWindow_char *fTitle(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_char *fTitle';
//procedure BWindow_int32 server_token(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_int32 server_token';
//procedure BWindow_char fInUpdate(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_char fInUpdate';
//procedure BWindow_char f_active(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_char f_active';
//procedure BWindow_short fShowLevel(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_short fShowLevel';
//procedure BWindow_uint32 fFlags(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_uint32 fFlags';
//procedure BWindow_port_id send_port(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_port_id send_port';
//procedure BWindow_port_id receive_port(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_port_id receive_port';
//procedure BWindow_BView *top_view(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BView *top_view';
//procedure BWindow_BView *fFocus(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BView *fFocus';
//procedure BWindow_BView *fLastMouseMovedView(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BView *fLastMouseMovedView';
//procedure BWindow__BSession_ *a_session(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__BSession_ *a_session';
//procedure BWindow_BMenuBar *fKeyMenuBar(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BMenuBar *fKeyMenuBar';
//procedure BWindow_BButton *fDefaultButton(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BButton *fDefaultButton';
//procedure BWindow_BList accelList(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BList accelList';
//procedure BWindow_int32 top_view_token(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_int32 top_view_token';
//procedure BWindow_bool pulse_enabled(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_bool pulse_enabled';
//procedure BWindow_bool fViewsNeedPulse(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_bool fViewsNeedPulse';
//procedure BWindow_bool fIsFilePanel(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_bool fIsFilePanel';
//procedure BWindow_bool fUnused1(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_bool fUnused1';
//procedure BWindow_bigtime_t pulse_rate(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_bigtime_t pulse_rate';
//procedure BWindow_bool fWaitingForMenu(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_bool fWaitingForMenu';
//procedure BWindow_bool fOffscreen(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_bool fOffscreen';
//procedure BWindow_sem_id fMenuSem(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_sem_id fMenuSem';
//procedure BWindow_float fMaxZoomH(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_float fMaxZoomH';
//procedure BWindow_float fMaxZoomV(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_float fMaxZoomV';
//procedure BWindow_float fMinWindH(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_float fMinWindH';
//procedure BWindow_float fMinWindV(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_float fMinWindV';
//procedure BWindow_float fMaxWindH(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_float fMaxWindH';
//procedure BWindow_float fMaxWindV(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_float fMaxWindV';
//procedure BWindow_BRect fFrame(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BRect fFrame';
//procedure BWindow_window_look fLook(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_window_look fLook';
//procedure BWindow__view_attr_ *fCurDrawViewState(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__view_attr_ *fCurDrawViewState';
//procedure BWindow_window_feel fFeel(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_window_feel fFeel';
//procedure BWindow_int32 fLastViewToken(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_int32 fLastViewToken';
//procedure BWindow__CEventPort_ *fEventPort(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow__CEventPort_ *fEventPort';
//procedure BWindow_BMessageRunner *fPulseRunner(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BMessageRunner *fPulseRunner';
//procedure BWindow_BRect fCurrentFrame(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_BRect fCurrentFrame';
//procedure BWindow_uint32 _reserved[2](AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_uint32 _reserved[2]';
//procedure BWindow_uint32 _more_reserved[4](AObject : TCPlusObject); cdecl; external BePascalLibName name 'BWindow_uint32 _more_reserved[4]';
//
implementation
function TWindow.QuitRequested : boolean;
begin
Result := inherited;
be_app.PostMessage(B_QUIT_REQUESTED);
end;
constructor TWindow.Create(aFrame : TRect; aTitle : PChar; aNewType, SomeFlags, aWorkspaces : Cardinal);
begin
inherited Create;
CPlusObject := BWindow_Create(Self, aFrame.CPlusObject, aTitle, aNewType, SomeFlags, aWorkspaces);
end;
destructor TWindow.Destroy;
begin
BWindow_Free(CPlusObject);
inherited;
end;
procedure TWindow.Show;
begin
BWindow_Show(Self.CPlusObject);
end;
procedure TWindow.Hide;
begin
BWindow_Hide(Self.CPlusObject);
end;
procedure TWindow.AddChild(aView : TView; sibling : TView);
begin
BWindow_AddChild(Self.CPlusObject, aView.CPlusObject, nil{sibling.CPlusObject});
end;
function TWindow.RemoveChild(aView : TView) : boolean;
begin
result := BWindow_RemoveChild(Self.CPlusObject, aView.CPlusObject);
end;
function TWindow.Instantiate(data : TMessage) : TArchivable;
begin
Result := BWindow_Instantiate(CPlusObject, data.CPlusObject);
end;
function TWindow.Archive(data : TMessage; deep : boolean) : TStatus_t;
begin
Result := BWindow_Archive(CPlusObject, data.CPlusObject, deep);
end;
procedure TWindow.Quit;
begin
BWindow_Quit(CPlusObject);
end;
//procedure TWindow.Close;
//begin
// BWindow_Close(CPlusObject);
//end;
//procedure TWindow.AddChild(child : TView; before : TView);
//begin
// BWindow_AddChild(CPlusObject, child.CPlusObject, before.CPlusObject);
//end;
//function TWindow.RemoveChild(child : TView) : boolean;
//begin
// Result := BWindow_RemoveChild(CPlusObject, child.CPlusObject);
//end;
function TWindow.CountChildren : integer;
begin
Result := BWindow_CountChildren(CPlusObject);
end;
function TWindow.ChildAt(index : integer) : TView;
begin
Result := BWindow_ChildAt(CPlusObject, index);
end;
procedure TWindow.DispatchMessage(message : TMessage; handler : THandler);
begin
end;
procedure TWindow.MessageReceived(message : TMessage);
begin
end;
procedure TWindow.FrameMoved(new_position : TPoint);
begin
BWindow_FrameMoved(CPlusObject, new_position.CPlusObject);
end;
procedure TWindow.WorkspacesChanged(old_ws : Cardinal; new_ws : Cardinal);
begin
BWindow_WorkspacesChanged(CPlusObject, old_ws, new_ws);
end;
procedure TWindow.WorkspaceActivated(ws : integer; state : boolean);
begin
BWindow_WorkspaceActivated(CPlusObject, ws, state);
end;
procedure TWindow.FrameResized(new_width : double; new_height : double);
begin
BWindow_FrameResized(CPlusObject, new_width, new_height);
end;
procedure TWindow.Minimize(aMinimize : boolean);
begin
BWindow_Minimize(CPlusObject, aMinimize);
end;
procedure TWindow.Zoom(rec_position : TPoint; rec_width : double; rec_height : double);
begin
BWindow_Zoom(CPlusObject, rec_position.CPlusObject, rec_width, rec_height);
end;
procedure TWindow.Zoom;
begin
BWindow_Zoom(CPlusObject);
end;
procedure TWindow.SetZoomLimits(max_h : double; max_v : double);
begin
BWindow_SetZoomLimits(CPlusObject, max_h, max_v);
end;
procedure TWindow.ScreenChanged(screen_size : TRect; depth : TColor_Space);
begin
BWindow_ScreenChanged(CPlusObject, screen_size.CPlusObject, depth);
end;
procedure TWindow.SetPulseRate(rate : TBigtime_t);
begin
BWindow_SetPulseRate(CPlusObject, rate);
end;
function TWindow.PulseRate : TBigtime_t;
begin
Result := BWindow_PulseRate(CPlusObject);
end;
procedure TWindow.AddShortcut(key : Cardinal; modifiers : Cardinal; msg : TMessage);
begin
BWindow_AddShortcut(CPlusObject, key, modifiers, msg.CPlusObject);
end;
procedure TWindow.AddShortcut(key : Cardinal; modifiers : Cardinal; msg : TMessage; target : THandler);
begin
BWindow_AddShortcut(CPlusObject, key, modifiers, msg.CPlusObject, target.CPlusObject);
end;
procedure TWindow.RemoveShortcut(key : Cardinal; modifiers : Cardinal);
begin
BWindow_RemoveShortcut(CPlusObject, key, modifiers);
end;
procedure TWindow.SetDefaultButton(button : TButton);
begin
BWindow_SetDefaultButton(CPlusObject, button.CPlusObject);
end;
function TWindow.DefaultButton : TButton;
begin
Result := BWindow_DefaultButton(CPlusObject);
end;
procedure TWindow.MenusBeginning;
begin
BWindow_MenusBeginning(CPlusObject);
end;
procedure TWindow.MenusEnded;
begin
BWindow_MenusEnded(CPlusObject);
end;
function TWindow.NeedsUpdate : boolean;
begin
// Result := BWindow_NeedsUpdate(CPlusObject);
Result := True;
end;
procedure TWindow.UpdateIfNeeded;
begin
BWindow_UpdateIfNeeded(CPlusObject);
end;
function TWindow.FindView(view_name : PChar) : TView;
begin
Result := BWindow_FindView(CPlusObject, view_name);
end;
function TWindow.FindView(aPoint : TPoint) : TView;
begin
Result := BWindow_FindView(CPlusObject, aPoint.CPlusObject);
end;
function TWindow.CurrentFocus : TView;
begin
Result := BWindow_CurrentFocus(CPlusObject);
end;
procedure TWindow.Activate(aValue : boolean);
begin
BWindow_Activate(CPlusObject, aValue);
end;
procedure TWindow.WindowActivated(state : boolean);
begin
// BWindow_WindowActivated(CPlusObject, state);
end;
//procedure TWindow.ConvertToScreen(pt : TPoint);
//begin
// BWindow_ConvertToScreen(CPlusObject, pt.CPlusObject);
//end;
function TWindow.ConvertToScreen(pt : TPoint) : TPoint;
begin
Result := BWindow_ConvertToScreen(CPlusObject, pt.CPlusObject);
end;
//procedure TWindow.ConvertFromScreen(pt : TPoint);
//begin
// BWindow_ConvertFromScreen(CPlusObject, pt.CPlusObject);
//end;
function TWindow.ConvertFromScreen(pt : TPoint) : TPoint;
begin
Result := BWindow_ConvertFromScreen(CPlusObject, pt.CPlusObject);
end;
//procedure TWindow.ConvertToScreen(rect : TRect);
//begin
// BWindow_ConvertToScreen(CPlusObject, rect.CPlusObject);
//end;
//function TWindow.ConvertToScreen(rect : TRect) : TRect;
//begin
// Result := BWindow_ConvertToScreen(CPlusObject, rect.CPlusObject);
//end;
//procedure TWindow.ConvertFromScreen(rect : TRect);
//begin
// BWindow_ConvertFromScreen(CPlusObject, rect.CPlusObject);
//end;
//function TWindow.ConvertFromScreen(rect : TRect) : TRect;
//begin
// Result := BWindow_ConvertFromScreen(CPlusObject, rect.CPlusObject);
//end;
procedure TWindow.MoveBy(dx : double; dy : double);
begin
BWindow_MoveBy(CPlusObject, dx, dy);
end;
procedure TWindow.MoveTo(aPoint : TPoint);
begin
BWindow_MoveTo(CPlusObject, aPoint.CPlusObject);
end;
procedure TWindow.MoveTo(x : double; y : double);
begin
BWindow_MoveTo(CPlusObject, x, y);
end;
procedure TWindow.ResizeBy(dx : double; dy : double);
begin
BWindow_ResizeBy(CPlusObject, dx, dy);
end;
procedure TWindow.ResizeTo(width : double; height : double);
begin
BWindow_ResizeTo(CPlusObject, width, height);
end;
//procedure TWindow.Show;
//begin
// BWindow_Show(CPlusObject);
//end;
//procedure TWindow.Hide;
//begin
// BWindow_Hide(CPlusObject);
//end;
function TWindow.IsHidden : boolean;
begin
Result := BWindow_IsHidden(CPlusObject);
end;
function TWindow.IsMinimized : boolean;
begin
Result := BWindow_IsMinimized(CPlusObject);
end;
procedure TWindow.Flush;
begin
BWindow_Flush(CPlusObject);
end;
procedure TWindow.Sync;
begin
BWindow_Sync(CPlusObject);
end;
function TWindow.SendBehind(window : TWindow) : TStatus_t;
begin
Result := BWindow_SendBehind(CPlusObject, window);
end;
procedure TWindow.DisableUpdates;
begin
BWindow_DisableUpdates(CPlusObject);
end;
procedure TWindow.EnableUpdates;
begin
BWindow_EnableUpdates(CPlusObject);
end;
procedure TWindow.BeginViewTransaction;
begin
BWindow_BeginViewTransaction(CPlusObject);
end;
procedure TWindow.EndViewTransaction;
begin
BWindow_EndViewTransaction(CPlusObject);
end;
function TWindow.Bounds : TRect;
begin
Result := BWindow_Bounds(CPlusObject);
end;
function TWindow.GetFrame : TRect;
begin
Result := BWindow_Frame(CPlusObject);
end;
function TWindow.GetTitle : PChar;
begin
Result := BWindow_Title(CPlusObject);
end;
procedure TWindow.SetTitle(title : PChar);
begin
BWindow_SetTitle(CPlusObject, title);
end;
function TWindow.IsFront : boolean;
begin
Result := BWindow_IsFront(CPlusObject);
end;
function TWindow.IsActive : boolean;
begin
Result := BWindow_IsActive(CPlusObject);
end;
//procedure TWindow.SetKeyMenuBar(bar : TMenuBar);
//begin
// BWindow_SetKeyMenuBar(CPlusObject, bar.CPlusObject);
//end;
//function TWindow.KeyMenuBar : TMenuBar;
//begin
// Result := BWindow_KeyMenuBar(CPlusObject);
//end;
procedure TWindow.SetSizeLimits(min_h : double; max_h : double; min_v : double; max_v : double);
begin
BWindow_SetSizeLimits(CPlusObject, min_h, max_h, min_v, max_v);
end;
procedure TWindow.GetSizeLimits(min_h : double; max_h : double; min_v : double; max_v : double);
begin
BWindow_GetSizeLimits(CPlusObject, min_h, max_h, min_v, max_v);
end;
function TWindow.Workspaces : Cardinal;
begin
Result := BWindow_Workspaces(CPlusObject);
end;
procedure TWindow.SetWorkspaces(aWorkspace : Cardinal);
begin
BWindow_SetWorkspaces(CPlusObject, aWorkspace);
end;
function TWindow.LastMouseMovedView : TView;
begin
Result := BWindow_LastMouseMovedView(CPlusObject);
end;
function TWindow.ResolveSpecifier(msg : TMessage; index : integer; specifier : TMessage; form : integer; aProperty : PChar) : THandler;
begin
Result := BWindow_ResolveSpecifier(CPlusObject, msg.CPlusObject, index, specifier.CPlusObject, form, aProperty);
end;
function TWindow.GetSupportedSuites(data : TMessage) : TStatus_t;
begin
Result := BWindow_GetSupportedSuites(CPlusObject, data.CPlusObject);
end;
function TWindow.AddToSubset(window : TWindow) : TStatus_t;
begin
Result := BWindow_AddToSubset(CPlusObject, window.CPlusObject);
end;
function TWindow.RemoveFromSubset(window : TWindow) : TStatus_t;
begin
Result := BWindow_RemoveFromSubset(CPlusObject, window.CPlusObject);
end;
function TWindow.Perform(d : TPerform_code; arg : Pointer) : TStatus_t;
begin
Result := BWindow_Perform(CPlusObject, d, arg);
end;
function TWindow.SetType(aType : Cardinal) : TStatus_t;
begin
Result := BWindow_SetType(CPlusObject, aType);
end;
function TWindow.GetType : Cardinal;
begin
Result := BWindow_Type(CPlusObject);
end;
function TWindow.SetLook(look : PCardinal) : TStatus_t;
begin
Result := BWindow_SetLook(CPlusObject, look);
end;
function TWindow.GetLook : PCardinal;
begin
Result := BWindow_Look(CPlusObject);
end;
function TWindow.SetFeel(feel : Cardinal) : TStatus_t;
begin
Result := BWindow_SetFeel(CPlusObject, feel);
end;
function TWindow.GetFeel : Cardinal;
begin
Result := BWindow_Feel(CPlusObject);
end;
function TWindow.SetFlags(aFlags : Cardinal) : TStatus_t;
begin
Result := BWindow_SetFlags(CPlusObject, aFlags);
end;
function TWindow.GetFlags : Cardinal;
begin
Result := BWindow_Flags(CPlusObject);
end;
function TWindow.IsModal : boolean;
begin
Result := BWindow_IsModal(CPlusObject);
end;
function TWindow.IsFloating : boolean;
begin
Result := BWindow_IsFloating(CPlusObject);
end;
function TWindow.SetWindowAlignment(mode : Cardinal; h : integer; hOffset : integer; width : integer; widthOffset : integer; v : integer; vOffset : integer; height : integer; heightOffset : integer) : TStatus_t;
begin
Result := BWindow_SetWindowAlignment(CPlusObject, mode, h, hOffset, width, widthOffset, v, vOffset, height, heightOffset);
end;
function TWindow.GetWindowAlignment(mode : PCardinal; var h : integer; var hOffset : integer; var width : integer; var widthOffset : integer; var v : integer; var vOffset : integer; var height : integer; var heightOffset : integer) : TStatus_t;
begin
Result := BWindow_GetWindowAlignment(CPlusObject, mode, h, hOffset, width, widthOffset, v, vOffset, height, heightOffset);
end;
function TWindow.Run : TThread_id;
begin
Result := BWindow_Run(CPlusObject);
end;
//procedure TWindow.BLooper;
//begin
// BWindow_BLooper inherited(CPlusObject);
//end;
//procedure TWindow._ReservedWindow1;
//begin
// BWindow__ReservedWindow1(CPlusObject);
//end;
//
//procedure TWindow._ReservedWindow2;
//begin
// BWindow__ReservedWindow2(CPlusObject);
//end;
//
//procedure TWindow._ReservedWindow3;
//begin
// BWindow__ReservedWindow3(CPlusObject);
//end;
//
//procedure TWindow._ReservedWindow4;
//begin
// BWindow__ReservedWindow4(CPlusObject);
//end;
//
//procedure TWindow._ReservedWindow5;
//begin
// BWindow__ReservedWindow5(CPlusObject);
//end;
//
//procedure TWindow._ReservedWindow6;
//begin
// BWindow__ReservedWindow6(CPlusObject);
//end;
//
//procedure TWindow._ReservedWindow7;
//begin
// BWindow__ReservedWindow7(CPlusObject);
//end;
//
//procedure TWindow._ReservedWindow8;
//begin
// BWindow__ReservedWindow8(CPlusObject);
//end;
//
//constructor TWindow.Create;
//begin
// CPlusObject := BWindow_Create(Self);
//end;
//
//constructor TWindow.Create( : TWindow);
//begin
// CPlusObject := BWindow_Create(Self, .CPlusObject);
//end;
//
//function TWindow.operator=( : TWindow) : TWindow;
//begin
// Result := BWindow_operator=(CPlusObject, .CPlusObject);
//end;
//
//constructor TWindow.Create(frame : TRect; depth : TColor_Space; bitmapFlags : Cardinal; rowBytes : integer);
//begin
// CPlusObject := BWindow_Create(Self, frame.CPlusObject, depth, bitmapFlags, rowBytes);
//end;
//
//procedure TWindow.InitData(frame : TRect; title : PChar; look : PCadinal; feel : Cardinal; flags : Cardinal; workspace : Cardinal);
//begin
// BWindow_InitData(CPlusObject, frame.CPlusObject, title, look, feel, flags, workspace);
//end;
//
//function TWindow.ArchiveChildren(data : TMessage; deep : boolean) : TStatus_t;
//begin
// Result := BWindow_ArchiveChildren(CPlusObject, data.CPlusObject, deep);
//end;
//
//function TWindow.UnarchiveChildren(data : TMessage) : TStatus_t;
//begin
// Result := BWindow_UnarchiveChildren(CPlusObject, data.CPlusObject);
//end;
//
//procedure TWindow.BitmapClose;
//begin
// BWindow_BitmapClose(CPlusObject);
//end;
//
//procedure TWindow.task_looper;
//begin
// BWindow_task_looper(CPlusObject);
//end;
//
//procedure TWindow.start_drag(msg : TMessage; token : integer; offset : TPoint; track_rect : TRect; reply_to : THandler);
//begin
// BWindow_start_drag(CPlusObject, msg.CPlusObject, token, offset.CPlusObject, track_rect.CPlusObject, reply_to.CPlusObject);
//end;
//
//procedure TWindow.start_drag(msg : TMessage; token : integer; offset : TPoint; bitmap_token : integer; dragMode : TDrawing_Mode; reply_to : THandler);
//begin
// BWindow_start_drag(CPlusObject, msg.CPlusObject, token, offset.CPlusObject, bitmap_token, dragMode, reply_to.CPlusObject);
//end;
//
//procedure TWindow.view_builder(a_view : TView);
//begin
// BWindow_view_builder(CPlusObject, a_view.CPlusObject);
//end;
//
//procedure TWindow.attach_builder(a_view : TView);
//begin
// BWindow_attach_builder(CPlusObject, a_view.CPlusObject);
//end;
//
//procedure TWindow.detach_builder(a_view : TView);
//begin
// BWindow_detach_builder(CPlusObject, a_view.CPlusObject);
//end;
//
//function TWindow.get_server_token : integer;
//begin
// Result := BWindow_get_server_token(CPlusObject);
//end;
//
//function TWindow.extract_drop(an_event : TMessage; target : THandler) : TMessage;
//begin
// Result := BWindow_extract_drop(CPlusObject, an_event.CPlusObject, target.CPlusObject);
//end;
//
//procedure TWindow.movesize(opcode : Cardinal; h : double; v : double);
//begin
// BWindow_movesize(CPlusObject, opcode, h, v);
//end;
//
//function TWindow.ReadMessageFromPort(tout : TBigtime_t) : TMessage;
//begin
// Result := BWindow_ReadMessageFromPort(CPlusObject, tout);
//end;
//
//function TWindow.MessagesWaiting : integer;
//begin
// Result := BWindow_MessagesWaiting(CPlusObject);
//end;
//
//procedure TWindow.handle_activate(an_event : TMessage);
//begin
// BWindow_handle_activate(CPlusObject, an_event.CPlusObject);
//end;
//
//procedure TWindow.do_view_frame(an_event : TMessage);
//begin
// BWindow_do_view_frame(CPlusObject, an_event.CPlusObject);
//end;
//
//procedure TWindow.do_value_change(an_event : TMessage; handler : THandler);
//begin
// BWindow_do_value_change(CPlusObject, an_event.CPlusObject, handler.CPlusObject);
//end;
//
//procedure TWindow.do_mouse_down(an_event : TMessage; target : TView);
//begin
// BWindow_do_mouse_down(CPlusObject, an_event.CPlusObject, target.CPlusObject);
//end;
//
//procedure TWindow.do_mouse_moved(an_event : TMessage; target : TView);
//begin
// BWindow_do_mouse_moved(CPlusObject, an_event.CPlusObject, target.CPlusObject);
//end;
//
//procedure TWindow.do_key_down(an_event : TMessage; handler : THandler);
//begin
// BWindow_do_key_down(CPlusObject, an_event.CPlusObject, handler.CPlusObject);
//end;
//
//procedure TWindow.do_key_up(an_event : TMessage; handler : THandler);
//begin
// BWindow_do_key_up(CPlusObject, an_event.CPlusObject, handler.CPlusObject);
//end;
//
//procedure TWindow.do_menu_event(an_event : TMessage);
//begin
// BWindow_do_menu_event(CPlusObject, an_event.CPlusObject);
//end;
//
//procedure TWindow.do_draw_views;
//begin
// BWindow_do_draw_views(CPlusObject);
//end;
//
//function TWindow.ConvertToMessage(raw : Pointer; code : integer) : TMessage;
//begin
// Result := BWindow_ConvertToMessage(CPlusObject, raw, code);
//end;
//
//function TWindow.allocShortcut(key : Cardinal; modifiers : Cardinal) : TCmd_Key;
//begin
// Result := BWindow_allocShortcut(CPlusObject, key, modifiers);
//end;
//
//function TWindow.FindShortcut(key : Cardinal; modifiers : Cardinal) : TCmd_Key;
//begin
// Result := BWindow_FindShortcut(CPlusObject, key, modifiers);
//end;
//
//procedure TWindow.AddShortcut(key : Cardinal; modifiers : Cardinal; item : TMenuItem);
//begin
// BWindow_AddShortcut(CPlusObject, key, modifiers, item.CPlusObject);
//end;
//
//procedure TWindow.post_message(message : TMessage);
//begin
// BWindow_post_message(CPlusObject, message.CPlusObject);
//end;
//
//procedure TWindow.SetLocalTitle(new_title : PChar);
//begin
// BWindow_SetLocalTitle(CPlusObject, new_title);
//end;
//
//procedure TWindow.enable_pulsing(enable : boolean);
//begin
// BWindow_enable_pulsing(CPlusObject, enable);
//end;
//
//function TWindow.determine_target(msg : TMessage; target : THandler; pref : boolean) : THandler;
//begin
// Result := BWindow_determine_target(CPlusObject, msg.CPlusObject, target.CPlusObject, pref);
//end;
//
//procedure TWindow.kb_navigate;
//begin
// BWindow_kb_navigate(CPlusObject);
//end;
//
//procedure TWindow.navigate_to_next(direction : integer; group : boolean);
//begin
// BWindow_navigate_to_next(CPlusObject, direction, group);
//end;
//
//procedure TWindow.set_focus(focus : TView; notify_input_server : boolean);
//begin
// BWindow_set_focus(CPlusObject, focus.CPlusObject, notify_input_server);
//end;
//
//function TWindow.InUpdate : boolean;
//begin
// Result := BWindow_InUpdate(CPlusObject);
//end;
//
//procedure TWindow.DequeueAll;
//begin
// BWindow_DequeueAll(CPlusObject);
//end;
//
//function TWindow.find_token_and_handler(msg : TMessage; token : ^integer; handler : THandler) : boolean;
//begin
// Result := BWindow_find_token_and_handler(CPlusObject, msg.CPlusObject, token, handler.CPlusObject);
//end;
//
//function TWindow.compose_type(look : PCadinal; feel : Cardinal) : Cardinal;
//begin
// Result := BWindow_compose_type(CPlusObject, look, feel);
//end;
//
//procedure TWindow.decompose_type(type : Cardinal; look : PCardinal; feel : PCardinal);
//begin
// BWindow_decompose_type(CPlusObject, type, look, feel);
//end;
//
//procedure TWindow.SetIsFilePanel(panel : boolean);
//begin
// BWindow_SetIsFilePanel(CPlusObject, panel);
//end;
//
//function TWindow.IsFilePanel : boolean;
//begin
// Result := BWindow_IsFilePanel(CPlusObject);
//end;
//
//procedure TWindow.AddFloater(a_floating_window : TWindow);
//begin
// BWindow_AddFloater(CPlusObject, a_floating_window.CPlusObject);
//end;
//
//procedure TWindow.RemoveFloater(a_floating_window : TWindow);
//begin
// BWindow_RemoveFloater(CPlusObject, a_floating_window.CPlusObject);
//end;
//
//function TWindow.WindowType : Cardinal;
//begin
// Result := BWindow_WindowType(CPlusObject);
//end;
//
//procedure TWindow.char *fTitle;
//begin
// BWindow_char *fTitle(CPlusObject);
//end;
//
//procedure TWindow.int32 server_token;
//begin
// BWindow_int32 server_token(CPlusObject);
//end;
//
//procedure TWindow.char fInUpdate;
//begin
// BWindow_char fInUpdate(CPlusObject);
//end;
//
//procedure TWindow.char f_active;
//begin
// BWindow_char f_active(CPlusObject);
//end;
//
//procedure TWindow.short fShowLevel;
//begin
// BWindow_short fShowLevel(CPlusObject);
//end;
//
//procedure TWindow.uint32 fFlags;
//begin
// BWindow_uint32 fFlags(CPlusObject);
//end;
//
//procedure TWindow.port_id send_port;
//begin
// BWindow_port_id send_port(CPlusObject);
//end;
//
//procedure TWindow.port_id receive_port;
//begin
// BWindow_port_id receive_port(CPlusObject);
//end;
//
//procedure TWindow.BView *top_view;
//begin
// BWindow_BView *top_view(CPlusObject);
//end;
//
//procedure TWindow.BView *fFocus;
//begin
// BWindow_BView *fFocus(CPlusObject);
//end;
//
//procedure TWindow.BView *fLastMouseMovedView;
//begin
// BWindow_BView *fLastMouseMovedView(CPlusObject);
//end;
//
//procedure TWindow._BSession_ *a_session;
//begin
// BWindow__BSession_ *a_session(CPlusObject);
//end;
//
//procedure TWindow.BMenuBar *fKeyMenuBar;
//begin
// BWindow_BMenuBar *fKeyMenuBar(CPlusObject);
//end;
//
//procedure TWindow.BButton *fDefaultButton;
//begin
// BWindow_BButton *fDefaultButton(CPlusObject);
//end;
//
//procedure TWindow.BList accelList;
//begin
// BWindow_BList accelList(CPlusObject);
//end;
//
//procedure TWindow.int32 top_view_token;
//begin
// BWindow_int32 top_view_token(CPlusObject);
//end;
//
//procedure TWindow.bool pulse_enabled;
//begin
// BWindow_bool pulse_enabled(CPlusObject);
//end;
//
//procedure TWindow.bool fViewsNeedPulse;
//begin
// BWindow_bool fViewsNeedPulse(CPlusObject);
//end;
//
//procedure TWindow.bool fIsFilePanel;
//begin
// BWindow_bool fIsFilePanel(CPlusObject);
//end;
//
//procedure TWindow.bool fUnused1;
//begin
// BWindow_bool fUnused1(CPlusObject);
//end;
//
//procedure TWindow.bigtime_t pulse_rate;
//begin
// BWindow_bigtime_t pulse_rate(CPlusObject);
//end;
//
//procedure TWindow.bool fWaitingForMenu;
//begin
// BWindow_bool fWaitingForMenu(CPlusObject);
//end;
//
//procedure TWindow.bool fOffscreen;
//begin
// BWindow_bool fOffscreen(CPlusObject);
//end;
//
//procedure TWindow.sem_id fMenuSem;
//begin
// BWindow_sem_id fMenuSem(CPlusObject);
//end;
//
//procedure TWindow.float fMaxZoomH;
//begin
// BWindow_float fMaxZoomH(CPlusObject);
//end;
//
//procedure TWindow.float fMaxZoomV;
//begin
// BWindow_float fMaxZoomV(CPlusObject);
//end;
//
//procedure TWindow.float fMinWindH;
//begin
// BWindow_float fMinWindH(CPlusObject);
//end;
//
//procedure TWindow.float fMinWindV;
//begin
// BWindow_float fMinWindV(CPlusObject);
//end;
//
//procedure TWindow.float fMaxWindH;
//begin
// BWindow_float fMaxWindH(CPlusObject);
//end;
//
//procedure TWindow.float fMaxWindV;
//begin
// BWindow_float fMaxWindV(CPlusObject);
//end;
//
//procedure TWindow.BRect fFrame;
//begin
// BWindow_BRect fFrame(CPlusObject);
//end;
//
//procedure TWindow.window_look fLook;
//begin
// BWindow_window_look fLook(CPlusObject);
//end;
//
//procedure TWindow._view_attr_ *fCurDrawViewState;
//begin
// BWindow__view_attr_ *fCurDrawViewState(CPlusObject);
//end;
//
//procedure TWindow.window_feel fFeel;
//begin
// BWindow_window_feel fFeel(CPlusObject);
//end;
//
//procedure TWindow.int32 fLastViewToken;
//begin
// BWindow_int32 fLastViewToken(CPlusObject);
//end;
//
//procedure TWindow._CEventPort_ *fEventPort;
//begin
// BWindow__CEventPort_ *fEventPort(CPlusObject);
//end;
//
//procedure TWindow.BMessageRunner *fPulseRunner;
//begin
// BWindow_BMessageRunner *fPulseRunner(CPlusObject);
//end;
//
//procedure TWindow.BRect fCurrentFrame;
//begin
// BWindow_BRect fCurrentFrame(CPlusObject);
//end;
//
//{procedure TWindow.uint32 _reserved[2];
//begin
// BWindow_uint32 _reserved[2](CPlusObject);
//end;
//
//procedure TWindow.uint32 _more_reserved[4];
//begin
// BWindow_uint32 _more_reserved[4](CPlusObject);
//end;}
initialization
end.