Files
befpc/bepascal/bepascal/be/interface/textcontrol.pp
2003-04-08 11:06:01 +00:00

435 lines
18 KiB
ObjectPascal

{ BePascal - A pascal wrapper around the BeOS API
Copyright (C) 2002 Olivier Coursiere
Eric Jourde
Oscar Lesta
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 TextControl;
interface
uses
beobj, Control, Message, Archivable, SupportDefs, Rect, Handler,interfacedefs;
type
TTextControl = class(TControl)
private
public
destructor Destroy;override;
constructor Create(frame : TRect; name, aLabel,initial : PChar; message : TMessage; resizingMode, flags : Cardinal); virtual;
constructor Create(data : TMessage);override;
function Instantiate(data : TMessage) : TArchivable;
function Archive(data : TMessage; deep : boolean) : TStatus_t;
procedure SetText(texte : PChar);
function Text : PChar;
procedure SetValue(valu : integer);
function Invoke(msg : TMessage) : TStatus_t;
function TextView : TTextControl;
procedure SetModificationMessage(message : TMessage);
function ModificationMessage : TMessage;
procedure SetAlignment(alabel : TAlignment; texte : TAlignment);
procedure GetAlignment(alabel : TAlignment; texte : TAlignment);
procedure SetDivider(dividing_line : single);
function Divider : single;
procedure Draw(updateRect : TRect);override;
procedure MouseDown(where : TPoint);override;
procedure AttachedToWindow;override;
procedure MakeFocus(focusState : boolean);override;
procedure SetEnabled(state : boolean);
procedure FrameMoved(new_position : TPoint);override;
procedure FrameResized(new_width : double; new_height : double);override;
procedure WindowActivated(active : boolean);override;
procedure GetPreferredSize(width : double; height : double);
procedure ResizeToPreferred;override;
procedure MessageReceived(msg : TMessage);override;
function ResolveSpecifier(msg : TMessage; index : integer; specifier : TMessage; form : integer; properti : PChar) : THandler;
procedure MouseUp(pt : TPoint);override;
procedure MouseMoved(pt : TPoint; code : Cardinal; msg : TMessage);override;
procedure DetachedFromWindow;override;
procedure AllAttached;override;
procedure AllDetached;override;
function GetSupportedSuites(data : TMessage) : TStatus_t;
procedure SetFlags(flags : Cardinal);
function Perform(d : TPerform_code; arg : Pointer) : TStatus_t;
{ procedure _ReservedTextControl1;
procedure _ReservedTextControl2;
procedure _ReservedTextControl3;
procedure _ReservedTextControl4;
function operator=( : TTextControl) : TTextControl;
procedure CommitValue;
procedure InitData(label : PChar; initial_text : PChar; data : TMessage);
procedure _BTextInput_ *fText;
procedure char *fLabel;
procedure BMessage *fModificationMessage;
procedure alignment fLabelAlign;
procedure float fDivider;
procedure uint16 fPrevWidth;
procedure uint16 fPrevHeight;
procedure uint32 _reserved[3];
procedure uint32 _more_reserved[4];
procedure bool fClean;
procedure bool fSkipSetFlags;
procedure bool fUnusedBool1;
procedure bool fUnusedBool2;
}
end;
procedure BTextControl_Free(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_Free';
function BTextControl_Create(AObject : TBeObject; frame : TCPlusObject; name, aLabel ,initial: PChar; message : TCPlusObject; resizingMode, flags : Cardinal): TCPlusObject; cdecl; external BePascalLibName name 'BTextControl_Create';
function BTextControl_Create(AObject : TBeObject; data : TCPlusObject): TCPlusObject; cdecl; external BePascalLibName name 'BTextControl_Create_1';
function BTextControl_Instantiate(AObject : TCPlusObject; data : TCPlusObject) : TArchivable; cdecl; external BePascalLibName name 'BTextControl_Instantiate';
function BTextControl_Archive(AObject : TCPlusObject; data : TCPlusObject; deep : boolean) : TStatus_t; cdecl; external BePascalLibName name 'BTextControl_Archive';
procedure BTextControl_SetText(AObject : TCPlusObject; text : PChar); cdecl; external BePascalLibName name 'BTextControl_SetText';
function BTextControl_Text(AObject : TCPlusObject) : PChar; cdecl; external BePascalLibName name 'BTextControl_Text';
procedure BTextControl_SetValue(AObject : TCPlusObject; value : integer); cdecl; external BePascalLibName name 'BTextControl_SetValue';
function BTextControl_Invoke(AObject : TCPlusObject; msg : TCPlusObject) : TStatus_t; cdecl; external BePascalLibName name 'BTextControl_Invoke';
function BTextControl_TextView(AObject : TCPlusObject) : TTextControl; cdecl; external BePascalLibName name 'BTextControl_TextView';
procedure BTextControl_SetModificationMessage(AObject : TCPlusObject; message : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_SetModificationMessage';
function BTextControl_ModificationMessage(AObject : TCPlusObject) : TMessage; cdecl; external BePascalLibName name 'BTextControl_ModificationMessage';
procedure BTextControl_SetAlignment(AObject : TCPlusObject; alabel : TAlignment; texte : TAlignment); cdecl; external BePascalLibName name 'BTextControl_SetAlignment';
procedure BTextControl_GetAlignment(AObject : TCPlusObject; alabel : TAlignment; texte : TAlignment); cdecl; external BePascalLibName name 'BTextControl_GetAlignment';
procedure BTextControl_SetDivider(AObject : TCPlusObject; dividing_line : single); cdecl; external BePascalLibName name 'BTextControl_SetDivider';
function BTextControl_Divider(AObject : TCPlusObject) : single; cdecl; external BePascalLibName name 'BTextControl_Divider';
procedure BTextControl_Draw(AObject : TCPlusObject; updateRect : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_Draw';
procedure BTextControl_MouseDown(AObject : TCPlusObject; where : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_MouseDown';
procedure BTextControl_AttachedToWindow(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_AttachedToWindow';
procedure BTextControl_MakeFocus(AObject : TCPlusObject; focusState : boolean); cdecl; external BePascalLibName name 'BTextControl_MakeFocus';
procedure BTextControl_SetEnabled(AObject : TCPlusObject; state : boolean); cdecl; external BePascalLibName name 'BTextControl_SetEnabled';
procedure BTextControl_FrameMoved(AObject : TCPlusObject; new_position : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_FrameMoved';
procedure BTextControl_FrameResized(AObject : TCPlusObject; new_width : double; new_height : double); cdecl; external BePascalLibName name 'BTextControl_FrameResized';
procedure BTextControl_WindowActivated(AObject : TCPlusObject; active : boolean); cdecl; external BePascalLibName name 'BTextControl_WindowActivated';
procedure BTextControl_GetPreferredSize(AObject : TCPlusObject; width : double; height : double); cdecl; external BePascalLibName name 'BTextControl_GetPreferredSize';
procedure BTextControl_ResizeToPreferred(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_ResizeToPreferred';
procedure BTextControl_MessageReceived(AObject : TCPlusObject; msg : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_MessageReceived';
function BTextControl_ResolveSpecifier(AObject : TCPlusObject; msg : TCPlusObject; index : integer; specifier : TCPlusObject; form : integer; properti : PChar) : THandler; cdecl; external BePascalLibName name 'BTextControl_ResolveSpecifier';
procedure BTextControl_MouseUp(AObject : TCPlusObject; pt : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_MouseUp';
procedure BTextControl_MouseMoved(AObject : TCPlusObject; pt : TCPlusObject; code : Cardinal; msg : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_MouseMoved';
procedure BTextControl_DetachedFromWindow(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_DetachedFromWindow';
procedure BTextControl_AllAttached(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_AllAttached';
procedure BTextControl_AllDetached(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_AllDetached';
function BTextControl_GetSupportedSuites(AObject : TCPlusObject; data : TCPlusObject) : TStatus_t; cdecl; external BePascalLibName name 'BTextControl_GetSupportedSuites';
procedure BTextControl_SetFlags(AObject : TCPlusObject; flags : Cardinal); cdecl; external BePascalLibName name 'BTextControl_SetFlags';
function BTextControl_Perform(AObject : TCPlusObject; d : TPerform_code; arg : Pointer) : TStatus_t; cdecl; external BePascalLibName name 'BTextControl_Perform';
{procedure BTextControl__ReservedTextControl1(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl__ReservedTextControl1';
procedure BTextControl__ReservedTextControl2(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl__ReservedTextControl2';
procedure BTextControl__ReservedTextControl3(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl__ReservedTextControl3';
procedure BTextControl__ReservedTextControl4(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl__ReservedTextControl4';
function BTextControl_operator=(AObject : TCPlusObject; : TTextControl) : TTextControl; cdecl; external BePascalLibName name 'BTextControl_operator=';
procedure BTextControl_CommitValue(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_CommitValue';
procedure BTextControl_InitData(AObject : TCPlusObject; label : PChar; initial_text : PChar; data : TMessage); cdecl; external BePascalLibName name 'BTextControl_InitData';
procedure BTextControl__BTextInput_ *fText(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl__BTextInput_ *fText';
procedure BTextControl_char *fLabel(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_char *fLabel';
procedure BTextControl_BMessage *fModificationMessage(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_BMessage *fModificationMessage';
procedure BTextControl_alignment fLabelAlign(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_alignment fLabelAlign';
procedure BTextControl_float fDivider(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_float fDivider';
procedure BTextControl_uint16 fPrevWidth(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_uint16 fPrevWidth';
procedure BTextControl_uint16 fPrevHeight(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_uint16 fPrevHeight';
procedure BTextControl_uint32 _reserved[3](AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_uint32 _reserved[3]';
procedure BTextControl_uint32 _more_reserved[4](AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_uint32 _more_reserved[4]';
procedure BTextControl_bool fClean(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_bool fClean';
procedure BTextControl_bool fSkipSetFlags(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_bool fSkipSetFlags';
procedure BTextControl_bool fUnusedBool1(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_bool fUnusedBool1';
procedure BTextControl_bool fUnusedBool2(AObject : TCPlusObject); cdecl; external BePascalLibName name 'BTextControl_bool fUnusedBool2';
}
implementation
destructor TTextControl.Destroy;
begin
BTextControl_Free(CPlusObject);
inherited;
end;
constructor TTextControl.Create(frame : TRect; name, aLabel,initial : PChar; message : TMessage; resizingMode, flags : Cardinal);
begin
CreatePas;
CPlusObject := BTextControl_Create(Self, frame.CPlusObject, name, aLabel,initial, message.CPlusObject, resizingMode, flags);
end;
constructor TTextControl.Create(data : TMessage);
begin
CreatePas;
CPlusObject := BTextControl_Create(Self, data.CPlusObject);
end;
function TTextControl.Instantiate(data : TMessage) : TArchivable;
begin
Result := BTextControl_Instantiate(CPlusObject, data.CPlusObject);
end;
function TTextControl.Archive(data : TMessage; deep : boolean) : TStatus_t;
begin
Result := BTextControl_Archive(CPlusObject, data.CPlusObject, deep);
end;
procedure TTextControl.SetText(texte : PChar);
begin
BTextControl_SetText(CPlusObject, texte);
end;
function TTextControl.Text : PChar;
begin
Result := BTextControl_Text(CPlusObject);
end;
procedure TTextControl.SetValue(valu : integer);
begin
BTextControl_SetValue(CPlusObject, valu);
end;
function TTextControl.Invoke(msg : TMessage) : TStatus_t;
begin
Result := BTextControl_Invoke(CPlusObject, msg.CPlusObject);
end;
function TTextControl.TextView : TTextControl;
begin
Result := BTextControl_TextView(CPlusObject);
end;
procedure TTextControl.SetModificationMessage(message : TMessage);
begin
BTextControl_SetModificationMessage(CPlusObject, message.CPlusObject);
end;
function TTextControl.ModificationMessage : TMessage;
begin
Result := BTextControl_ModificationMessage(CPlusObject);
end;
procedure TTextControl.SetAlignment(alabel : TAlignment; texte : TAlignment);
begin
BTextControl_SetAlignment(CPlusObject, alabel, texte);
end;
procedure TTextControl.GetAlignment(alabel : TAlignment; texte : TAlignment);
begin
BTextControl_GetAlignment(CPlusObject, alabel, texte);
end;
procedure TTextControl.SetDivider(dividing_line : single);
begin
BTextControl_SetDivider(CPlusObject, dividing_line);
end;
function TTextControl.Divider : single;
begin
Result := BTextControl_Divider(CPlusObject);
end;
procedure TTextControl.Draw(updateRect : TRect);
begin
end;
procedure TTextControl.MouseDown(where : TPoint);
begin
end;
procedure TTextControl.AttachedToWindow;
begin
end;
procedure TTextControl.MakeFocus(focusState : boolean);
begin
BTextControl_MakeFocus(CPlusObject, focusState);
end;
procedure TTextControl.SetEnabled(state : boolean);
begin
BTextControl_SetEnabled(CPlusObject, state);
end;
procedure TTextControl.FrameMoved(new_position : TPoint);
begin
end;
procedure TTextControl.FrameResized(new_width : double; new_height : double);
begin
// BTextControl_FrameResized(CPlusObject, new_width, new_height);
end;
procedure TTextControl.WindowActivated(active : boolean);
begin
//BTextControl_WindowActivated(CPlusObject, active);
end;
procedure TTextControl.GetPreferredSize(width : double; height : double);
begin
//BTextControl_GetPreferredSize(CPlusObject, width, height);
end;
procedure TTextControl.ResizeToPreferred;
begin
//BTextControl_ResizeToPreferred(CPlusObject);
end;
procedure TTextControl.MessageReceived(msg : TMessage);
begin
//BTextControl_MessageReceived(CPlusObject, msg.CPlusObject);
end;
function TTextControl.ResolveSpecifier(msg : TMessage; index : integer; specifier : TMessage; form : integer; properti : PChar) : THandler;
begin
Result := BTextControl_ResolveSpecifier(CPlusObject, msg.CPlusObject, index, specifier.CPlusObject, form, properti);
end;
procedure TTextControl.MouseUp(pt : TPoint);
begin
//BTextControl_MouseUp(CPlusObject, pt.CPlusObject);
end;
procedure TTextControl.MouseMoved(pt : TPoint; code : Cardinal; msg : TMessage);
begin
//BTextControl_MouseMoved(CPlusObject, pt.CPlusObject, code, msg);
end;
procedure TTextControl.DetachedFromWindow;
begin
//BTextControl_DetachedFromWindow(CPlusObject);
end;
procedure TTextControl.AllAttached;
begin
//BTextControl_AllAttached(CPlusObject);
end;
procedure TTextControl.AllDetached;
begin
//BTextControl_AllDetached(CPlusObject);
end;
function TTextControl.GetSupportedSuites(data : TMessage) : TStatus_t;
begin
Result := BTextControl_GetSupportedSuites(CPlusObject, data.CPlusObject);
end;
procedure TTextControl.SetFlags(flags : Cardinal);
begin
BTextControl_SetFlags(CPlusObject, flags);
end;
function TTextControl.Perform(d : TPerform_code; arg : Pointer) : TStatus_t;
begin
Result := BTextControl_Perform(CPlusObject, d, arg);
end;
{procedure TTextControl._ReservedTextControl1;
begin
BTextControl__ReservedTextControl1(CPlusObject);
end;
procedure TTextControl._ReservedTextControl2;
begin
BTextControl__ReservedTextControl2(CPlusObject);
end;
procedure TTextControl._ReservedTextControl3;
begin
BTextControl__ReservedTextControl3(CPlusObject);
end;
procedure TTextControl._ReservedTextControl4;
begin
BTextControl__ReservedTextControl4(CPlusObject);
end;
function TTextControl.operator=( : TTextControl) : TTextControl;
begin
Result := BTextControl_operator=(CPlusObject, );
end;
procedure TTextControl.CommitValue;
begin
BTextControl_CommitValue(CPlusObject);
end;
procedure TTextControl.InitData(label : PChar; initial_text : PChar; data : TMessage);
begin
BTextControl_InitData(CPlusObject, label, initial_text, data.CPlusObject);
end;
procedure TTextControl._BTextInput_ *fText;
begin
BTextControl__BTextInput_ *fText(CPlusObject);
end;
procedure TTextControl.char *fLabel;
begin
BTextControl_char *fLabel(CPlusObject);
end;
procedure TTextControl.BMessage *fModificationMessage;
begin
BTextControl_BMessage *fModificationMessage(CPlusObject);
end;
procedure TTextControl.alignment fLabelAlign;
begin
BTextControl_alignment fLabelAlign(CPlusObject);
end;
procedure TTextControl.float fDivider;
begin
BTextControl_float fDivider(CPlusObject);
end;
procedure TTextControl.uint16 fPrevWidth;
begin
BTextControl_uint16 fPrevWidth(CPlusObject);
end;
procedure TTextControl.uint16 fPrevHeight;
begin
BTextControl_uint16 fPrevHeight(CPlusObject);
end;
procedure TTextControl.uint32 _reserved[3];
begin
BTextControl_uint32 _reserved[3](CPlusObject);
end;
procedure TTextControl.uint32 _more_reserved[4];
begin
BTextControl_uint32 _more_reserved[4](CPlusObject);
end;
procedure TTextControl.bool fClean;
begin
BTextControl_bool fClean(CPlusObject);
end;
procedure TTextControl.bool fSkipSetFlags;
begin
BTextControl_bool fSkipSetFlags(CPlusObject);
end;
procedure TTextControl.bool fUnusedBool1;
begin
BTextControl_bool fUnusedBool1(CPlusObject);
end;
procedure TTextControl.bool fUnusedBool2;
begin
BTextControl_bool fUnusedBool2(CPlusObject);
end;
}
end.