further separating implementation

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2004-07-11 16:19:18 +00:00
parent f18925dfe5
commit 5ca0d8122a
28 changed files with 2604 additions and 1879 deletions

View File

@@ -336,12 +336,20 @@ public :
virtual ~wxMacControl()
{
}
bool Ok() const { return m_controlRef != NULL ; }
virtual void Dispose() ;
bool Ok() const { return GetControlRef() != NULL ; }
virtual ControlRef * GetControlRefAddr() { return &m_controlRef; }
virtual ControlRef GetControlRef() const { return m_controlRef ; }
virtual void SetReference( SInt32 data ) ;
/*
void operator= (ControlRef c) { m_controlRef = c ; }
operator ControlRef () { return m_controlRef; }
operator ControlRef * () { return &m_controlRef; }
*/
// accessing data and values
virtual OSStatus SetData( ControlPartCode inPartCode , ResType inTag , Size inSize , const void * inData ) ;
@@ -363,6 +371,10 @@ public :
virtual void SetValueAndRange( SInt32 value , SInt32 minimum , SInt32 maximum ) ;
virtual void SetRange( SInt32 minimum , SInt32 maximum ) ;
virtual OSStatus SetFocus( ControlFocusPart focusPart ) ;
virtual bool HasFocus() const ;
virtual bool NeedsFocusRect() const ;
// templated helpers
Size GetDataSize( ControlPartCode inPartCode , ResType inTag ) const
@@ -395,7 +407,67 @@ public :
virtual void Flash( ControlPartCode part , UInt32 ticks = 8 ) ;
virtual void VisibilityChanged( bool shown ) ;
virtual void SetFont( const wxFont & font , const wxColour& foreground , long windowStyle ) ;
virtual ControlPartCode HandleKey( SInt16 keyCode, SInt16 charCode, EventModifiers modifiers ) ;
void SetActionProc( ControlActionUPP actionProc ) ;
void SetViewSize( SInt32 viewSize ) ;
SInt32 GetViewSize() const ;
virtual bool IsVisible() const ;
virtual void SetVisibility( bool visible , bool redraw ) ;
virtual bool IsEnabled() const ;
virtual bool IsActive() const ;
virtual void Enable( bool enable ) ;
// invalidates this control and all children
virtual void InvalidateWithChildren() ;
virtual void SetDrawingEnabled( bool enable ) ;
virtual bool GetNeedsDisplay() const ;
virtual void SetNeedsDisplay( bool needsDisplay , RgnHandle where = NULL ) ;
virtual void ScrollRect( const wxRect &rect , int dx , int dy ) ;
virtual void GetRect( Rect *r ) ;
virtual void SetRect( Rect *r ) ;
virtual void GetRectInWindowCoords( Rect *r ) ;
virtual void GetBestRect( Rect *r ) ;
virtual void SetTitle( const wxString &title ) ;
// converts from Toplevel-Content relative to local
static void Convert( wxPoint *pt , wxMacControl *convert , wxMacControl *to ) ;
virtual void GetFeatures( UInt32 *features ) ;
virtual OSStatus GetRegion( ControlPartCode partCode , RgnHandle region ) ;
virtual OSStatus SetZOrder( bool above , wxMacControl* other ) ;
// to be moved into a databrowser subclass
virtual OSStatus SetSelectionFlags( DataBrowserSelectionFlags ) ;
virtual OSStatus AddListViewColumn( DataBrowserListViewColumnDesc *columnDesc,
DataBrowserTableViewColumnIndex position ) ;
virtual OSStatus AutoSizeListViewColumns() ;
virtual OSStatus SetHasScrollBars( bool horiz , bool vert ) ;
virtual OSStatus SetTableViewHiliteStyle( DataBrowserTableViewHiliteStyle hiliteStyle ) ;
virtual OSStatus SetListViewHeaderBtnHeight(UInt16 height) ;
virtual OSStatus SetCallbacks(const DataBrowserCallbacks * callbacks) ;
virtual OSStatus UpdateItems( DataBrowserItemID container, UInt32 numItems,
const DataBrowserItemID* items,
DataBrowserPropertyID preSortProperty,
DataBrowserPropertyID propertyID ) ;
virtual OSStatus AddItems( DataBrowserItemID container, UInt32 numItems,
const DataBrowserItemID* items,
DataBrowserPropertyID preSortProperty ) ;
virtual OSStatus RemoveItems( DataBrowserItemID container, UInt32 numItems,
const DataBrowserItemID* items,
DataBrowserPropertyID preSortProperty ) ;
virtual OSStatus RevealItem( DataBrowserItemID item,
DataBrowserPropertyID propertyID,
DataBrowserRevealOptions options ) ;
virtual bool IsItemSelected( DataBrowserItemID item ) ;
virtual OSStatus SetSelectedItems(UInt32 numItems,
const DataBrowserItemID * items,
DataBrowserSetOption operation ) ;
// to be moved into a tab control class
virtual OSStatus SetTabEnabled( SInt16 tabNo , bool enable ) ;
protected :
ControlRef m_controlRef ;
wxFont m_font ;

View File

@@ -20,6 +20,8 @@
WXDLLEXPORT_DATA(extern const wxChar*) wxTextCtrlNameStr;
class wxMacTextControl ;
// Single-line text item
class WXDLLEXPORT wxTextCtrl: public wxTextCtrlBase
{
@@ -169,6 +171,7 @@ public:
virtual wxInt16 MacControlUserPaneFocusProc(wxInt16 action) ;
virtual void MacControlUserPaneBackgroundProc(void* info) ;
wxMacTextControl* GetPeer() const { return (wxMacTextControl*) m_peer ; }
protected:
// common part of all ctors
void Init();
@@ -180,14 +183,8 @@ protected:
// flag is set to true when the user edits the controls contents
bool m_dirty;
WXWidget m_scrollView ;
WXWidget m_textView ;
void* m_macTXN ;
unsigned long m_maxLength ;
// need to make this public because of the current implementation via callbacks
public :
void* m_macTXNvars ;
private :
DECLARE_EVENT_TABLE()
};

View File

@@ -205,7 +205,7 @@ public:
{ return (m_hScrollBar == sb || m_vScrollBar == sb) ; }
wxList& GetSubcontrols() { return m_subControls; }
virtual void MacInstallEventHandler() ;
virtual void MacInstallEventHandler(WXWidget native) ;
virtual void MacRedrawControl();
WXEVENTHANDLERREF MacGetControlEventHandler() { return m_macControlEventHandler ; }
void MacPostControlCreate(const wxPoint& pos, const wxSize& size) ;