initial commit

Signed-off-by: Peter Siegmund <mars3142@noreply.mars3142.dev>
This commit is contained in:
2025-10-31 23:37:30 +01:00
commit bf6b52fd94
9654 changed files with 4035664 additions and 0 deletions

View File

@@ -0,0 +1,399 @@
/*
* Name: wx/osx/iphone/chkconf.h
* Purpose: Compiler-specific configuration checking
* Author: Stefan Csomor
* Modified by:
* Created: 2008-07-30
* Copyright: (c) Stefan Csomor
* Licence: wxWindows licence
*/
#ifndef _WX_OSX_IPHONE_CHKCONF_H_
#define _WX_OSX_IPHONE_CHKCONF_H_
/*
* text rendering system
*/
/* we have different options and we turn on all that make sense
* under a certain platform
*/
#define wxHAS_OPENGL_ES
#define wxOSX_USE_QUICKTIME 0
#define wxOSX_USE_AUDIOTOOLBOX 1
/*
* turning off capabilities that don't work under iphone yet
*/
#if wxUSE_MIMETYPE
#undef wxUSE_MIMETYPE
#define wxUSE_MIMETYPE 0
#endif
#if wxUSE_MDI
#undef wxUSE_MDI
#define wxUSE_MDI 0
#endif
#if wxUSE_MDI_ARCHITECTURE
#undef wxUSE_MDI_ARCHITECTURE
#define wxUSE_MDI_ARCHITECTURE 0
#endif
#if wxUSE_DRAG_AND_DROP
#undef wxUSE_DRAG_AND_DROP
#define wxUSE_DRAG_AND_DROP 0
#endif
#if wxUSE_TASKBARICON
#undef wxUSE_TASKBARICON
#define wxUSE_TASKBARICON 0
#endif
#if wxUSE_TOOLTIPS
#undef wxUSE_TOOLTIPS
#define wxUSE_TOOLTIPS 0
#endif
#if wxUSE_DATAVIEWCTRL
#undef wxUSE_DATAVIEWCTRL
#define wxUSE_DATAVIEWCTRL 0
#endif
#if wxUSE_TREELISTCTRL
#undef wxUSE_TREELISTCTRL
#define wxUSE_TREELISTCTRL 0
#endif
#if wxUSE_DRAG_AND_DROP
#undef wxUSE_DRAG_AND_DROP
#define wxUSE_DRAG_AND_DROP 0
#endif
#if wxUSE_TASKBARICON
#undef wxUSE_TASKBARICON
#define wxUSE_TASKBARICON 0
#endif
#define wxUSE_BUTTON 1
#if wxUSE_CARET
#undef wxUSE_CARET
#define wxUSE_CARET 0
#endif
#if wxUSE_CHOICE
#undef wxUSE_CHOICE
#define wxUSE_CHOICE 0
#endif
#if wxUSE_COMBOBOX
#undef wxUSE_COMBOBOX
#define wxUSE_COMBOBOX 0
#endif
#ifndef __WXUNIVERSAL__
#undef wxUSE_SCROLLBAR
#define wxUSE_SCROLLBAR 0
#endif
#undef wxUSE_STATUSBAR
#undef wxUSE_NATIVE_STATUSBAR
#undef wxUSE_ABOUTDLG
#undef wxUSE_STATLINE
#undef wxUSE_COLLPANE
#undef wxUSE_STATBMP
#undef wxUSE_STATBOX
#undef wxUSE_RADIOBTN
#undef wxUSE_RADIOBOX
#undef wxUSE_TOGGLEBTN
#define wxUSE_STATUSBAR 0
#define wxUSE_NATIVE_STATUSBAR 0
#define wxUSE_ABOUTDLG 0
#define wxUSE_STATLINE 0
#define wxUSE_COLLPANE 0
#define wxUSE_STATBMP 0
#define wxUSE_STATBOX 0
#define wxUSE_RADIOBTN 0
#define wxUSE_RADIOBOX 0
#define wxUSE_TOGGLEBTN 0
#undef wxUSE_HTML
#define wxUSE_HTML 0
#undef wxUSE_RICHTEXT
#define wxUSE_RICHTEXT 0
#undef wxUSE_ACTIVITYINDICATOR
#undef wxUSE_ADDREMOVECTRL
#undef wxUSE_ANIMATIONCTRL
#undef wxUSE_CALENDARCTRL
#undef wxUSE_COMBOCTRL
#undef wxUSE_ODCOMBOBOX
#undef wxUSE_BITMAPCOMBOBOX
#undef wxUSE_BMPBUTTON
#undef wxUSE_CHECKLISTBOX
#undef wxUSE_GRID
#undef wxUSE_LISTBOX
#undef wxUSE_LISTCTRL
#undef wxUSE_NOTEBOOK
#undef wxUSE_SPINBTN
#undef wxUSE_SPINCTRL
#undef wxUSE_TREECTRL
#undef wxUSE_DATEPICKCTRL
#undef wxUSE_DATAVIEWCTRL
#undef wxUSE_EDITABLELISTBOX
#undef wxUSE_FILEPICKERCTRL
#undef wxUSE_DIRPICKERCTRL
#undef wxUSE_FILECTRL
#undef wxUSE_COLOURPICKERCTRL
#undef wxUSE_FONTPICKERCTRL
#undef wxUSE_DEBUGREPORT
#undef wxUSE_HYPERLINKCTRL
#undef wxUSE_STC
#undef wxUSE_AUI
#undef wxUSE_BUSYINFO
#undef wxUSE_SEARCHCTRL
#define wxUSE_ACTIVITYINDICATOR 0
#define wxUSE_ADDREMOVECTRL 0
#define wxUSE_ANIMATIONCTRL 0
#define wxUSE_CALENDARCTRL 0
#define wxUSE_COMBOCTRL 0
#define wxUSE_ODCOMBOBOX 0
#define wxUSE_BITMAPCOMBOBOX 0
#define wxUSE_BMPBUTTON 0
#define wxUSE_CHECKLISTBOX 0
#define wxUSE_GRID 0
#define wxUSE_LISTBOX 0
#define wxUSE_LISTCTRL 0
#define wxUSE_NOTEBOOK 0
#define wxUSE_SPINBTN 0
#define wxUSE_SPINCTRL 0
#define wxUSE_TREECTRL 0
#define wxUSE_DATEPICKCTRL 0
#define wxUSE_DATAVIEWCTRL 0
#define wxUSE_EDITABLELISTBOX 0
#define wxUSE_FILEPICKERCTRL 0
#define wxUSE_DIRPICKERCTRL 0
#define wxUSE_FILECTRL 0
#define wxUSE_COLOURPICKERCTRL 0
#define wxUSE_FONTPICKERCTRL 0
#define wxUSE_DEBUGREPORT 0
#define wxUSE_HYPERLINKCTRL 0
#define wxUSE_STC 0
#define wxUSE_AUI 0
#define wxUSE_BUSYINFO 0
#define wxUSE_SEARCHCTRL 0
#undef wxUSE_LOGWINDOW
#undef wxUSE_LOG_DIALOG
#undef wxUSE_LISTBOOK
#undef wxUSE_CHOICEBOOK
#undef wxUSE_TREEBOOK
#undef wxUSE_TOOLBOOK
#undef wxUSE_CHOICEDLG
#undef wxUSE_HELP
#undef wxUSE_PROGRESSDLG
#undef wxUSE_FONTDLG
#undef wxUSE_FILEDLG
#undef wxUSE_CHOICEDLG
#undef wxUSE_NUMBERDLG
#undef wxUSE_TEXTDLG
#undef wxUSE_DIRDLG
#undef wxUSE_STARTUP_TIPS
#undef wxUSE_WIZARDDLG
#undef wxUSE_TOOLBAR_NATIVE
#undef wxUSE_FINDREPLDLG
#undef wxUSE_TASKBARICON
#undef wxUSE_REARRANGECTRL
#undef wxUSE_NATIVE_DATAVIEWCTRL
#define wxUSE_LOGWINDOW 0
#define wxUSE_LOG_DIALOG 0
#define wxUSE_LISTBOOK 0
#define wxUSE_CHOICEBOOK 0
#define wxUSE_TREEBOOK 0
#define wxUSE_TOOLBOOK 0
#define wxUSE_CHOICEDLG 0
#define wxUSE_HELP 0
#define wxUSE_PROGRESSDLG 0
#define wxUSE_FONTDLG 0
#define wxUSE_FILEDLG 0
#define wxUSE_CHOICEDLG 0
#define wxUSE_NUMBERDLG 0
#define wxUSE_TEXTDLG 0
#define wxUSE_DIRDLG 0
#define wxUSE_STARTUP_TIPS 0
#define wxUSE_WIZARDDLG 0
#define wxUSE_TOOLBAR_NATIVE 0
#define wxUSE_FINDREPLDLG 0
#define wxUSE_TASKBARICON 0
#define wxUSE_REARRANGECTRL 0
#define wxUSE_NATIVE_DATAVIEWCTRL 0
#if wxUSE_WXHTML_HELP
#undef wxUSE_WXHTML_HELP
#define wxUSE_WXHTML_HELP 0
#endif
#if wxUSE_DOC_VIEW_ARCHITECTURE
#undef wxUSE_DOC_VIEW_ARCHITECTURE
#define wxUSE_DOC_VIEW_ARCHITECTURE 0
#endif
#if wxUSE_PRINTING_ARCHITECTURE
#undef wxUSE_PRINTING_ARCHITECTURE
#define wxUSE_PRINTING_ARCHITECTURE 0
#endif
#if wxUSE_MENUS
#undef wxUSE_MENUS
// we are basing our implementatino on UIMenuElement
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 130000
#define wxUSE_MENUS 1
#else
#define wxUSE_MENUS 0
#endif
#endif
#if wxUSE_MENUBAR
#undef wxUSE_MENUBAR
#define wxUSE_MENUBAR 0
#endif
/*
#if wxUSE_POPUPWIN
#undef wxUSE_POPUPWIN
#define wxUSE_POPUPWIN 0
#endif
#if wxUSE_COMBOBOX
#undef wxUSE_COMBOBOX
#define wxUSE_COMBOBOX 0
#endif
#if wxUSE_CALENDARCTRL
#undef wxUSE_CALENDARCTRL
#define wxUSE_CALENDARCTRL 0
#endif
*/
#if wxUSE_CLIPBOARD
#undef wxUSE_CLIPBOARD
#define wxUSE_CLIPBOARD 0
#endif // wxUSE_CLIPBOARD
/*
#if wxUSE_GLCANVAS
#undef wxUSE_GLCANVAS
#define wxUSE_GLCANVAS 0
#endif // wxUSE_GLCANVAS
*/
#if wxUSE_COLOURDLG
#undef wxUSE_COLOURDLG
#define wxUSE_COLOURDLG 0
#endif // wxUSE_COLOURDLG
// iphone has a toolbar that is a regular UIView
#ifdef wxOSX_USE_NATIVE_TOOLBAR
#if wxOSX_USE_NATIVE_TOOLBAR
#undef wxOSX_USE_NATIVE_TOOLBAR
#define wxOSX_USE_NATIVE_TOOLBAR 0
#endif
#else
#define wxOSX_USE_NATIVE_TOOLBAR 0
#endif
#if wxUSE_RIBBON
#undef wxUSE_RIBBON
#define wxUSE_RIBBON 0
#endif
#if wxUSE_INFOBAR
#undef wxUSE_INFOBAR
#define wxUSE_INFOBAR 0
#endif
#if wxUSE_FILE_HISTORY
#undef wxUSE_FILE_HISTORY
#define wxUSE_FILE_HISTORY 0
#endif
#if wxUSE_NOTIFICATION_MESSAGE
#undef wxUSE_NOTIFICATION_MESSAGE
#define wxUSE_NOTIFICATION_MESSAGE 0
#endif
#undef wxUSE_PREFERENCES_EDITOR
#define wxUSE_PREFERENCES_EDITOR 0
#if wxUSE_PROPGRID
#undef wxUSE_PROPGRID
#define wxUSE_PROPGRID 0
#endif
#if wxUSE_WEBKIT
#undef wxUSE_WEBKIT
#define wxUSE_WEBKIT 0
#endif
#if wxUSE_DATAOBJ
#undef wxUSE_DATAOBJ
#define wxUSE_DATAOBJ 0
#endif
#if wxUSE_UIACTIONSIMULATOR
#undef wxUSE_UIACTIONSIMULATOR
#define wxUSE_UIACTIONSIMULATOR 0
#endif
#if wxUSE_RICHMSGDLG
#undef wxUSE_RICHMSGDLG
#define wxUSE_RICHMSGDLG 0
#endif
#if wxUSE_RICHTEXT
#undef wxUSE_RICHTEXT
#define wxUSE_RICHTEXT 0
#endif
#if wxUSE_TIMEPICKCTRL
#undef wxUSE_TIMEPICKCTRL
#define wxUSE_TIMEPICKCTRL 0
#endif
#if wxUSE_RICHTOOLTIP
#undef wxUSE_RICHTOOLTIP
#define wxUSE_RICHTOOLTIP 0
#endif
#if wxUSE_WEBVIEW
#undef wxUSE_WEBVIEW
#define wxUSE_WEBVIEW 0
#endif
#if wxUSE_SECRETSTORE
#undef wxUSE_SECRETSTORE
#define wxUSE_SECRETSTORE 0
#endif
// IconRef datatype does not exist on iOS
#undef wxOSX_USE_ICONREF
#define wxOSX_USE_ICONREF 0
#endif
/* _WX_OSX_IPHONE_CHKCONF_H_ */

View File

@@ -0,0 +1,242 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/osx/iphone/private.h
// Purpose: Private declarations: as this header is only included by
// wxWidgets itself, it may contain identifiers which don't start
// with "wx".
// Author: Stefan Csomor
// Created: 1998-01-01
// Copyright: (c) Stefan Csomor
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_PRIVATE_IPHONE_H_
#define _WX_PRIVATE_IPHONE_H_
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#endif
#include <CoreText/CTFont.h>
#include <CoreText/CTStringAttributes.h>
#include <CoreText/CTLine.h>
#if wxUSE_GUI
#include "wx/bmpbndl.h"
typedef CGRect WXRect;
OSStatus WXDLLIMPEXP_CORE wxMacDrawCGImage(
CGContextRef inContext,
const CGRect * inBounds,
CGImageRef inImage) ;
WX_UIImage WXDLLIMPEXP_CORE wxOSXGetUIImageFromCGImage( CGImageRef image );
wxBitmapBundle WXDLLIMPEXP_CORE wxOSXCreateSystemBitmapBundle(const wxString& id, const wxString &client, const wxSize& size);
class WXDLLIMPEXP_CORE wxWidgetIPhoneImpl : public wxWidgetImpl
{
public :
wxWidgetIPhoneImpl( wxWindowMac* peer , WXWidget w, int flags = 0 ) ;
wxWidgetIPhoneImpl() ;
~wxWidgetIPhoneImpl();
void Init();
virtual bool IsVisible() const ;
virtual void SetVisibility( bool visible );
virtual void Raise();
virtual void Lower();
virtual void ScrollRect( const wxRect *rect, int dx, int dy );
virtual WXWidget GetWXWidget() const { return m_osxView; }
virtual void SetBackgroundColour( const wxColour& col ) ;
virtual bool SetBackgroundStyle(wxBackgroundStyle style) ;
virtual void SetForegroundColour( const wxColour& col ) ;
virtual void GetContentArea( int &left , int &top , int &width , int &height ) const;
virtual void Move(int x, int y, int width, int height);
virtual void GetPosition( int &x, int &y ) const;
virtual void GetSize( int &width, int &height ) const;
virtual void SetControlSize( wxWindowVariant variant );
virtual double GetContentScaleFactor() const ;
virtual void SetNeedsDisplay( const wxRect* where = nullptr );
virtual bool GetNeedsDisplay() const;
virtual bool CanFocus() const;
// return true if successful
virtual bool SetFocus();
virtual bool HasFocus() const;
void RemoveFromParent();
void Embed( wxWidgetImpl *parent );
void SetDefaultButton( bool isDefault );
void PerformClick();
virtual void SetLabel(const wxString& title);
void SetCursor( const wxCursor & cursor );
void CaptureMouse();
void ReleaseMouse();
wxInt32 GetValue() const;
void SetValue( wxInt32 v );
virtual wxBitmap GetBitmap() const;
virtual void SetBitmap( const wxBitmapBundle& bitmap );
virtual void SetBitmapPosition( wxDirection dir );
void SetupTabs( const wxNotebook &notebook );
void GetBestRect( wxRect *r ) const;
bool IsEnabled() const;
void Enable( bool enable );
bool ButtonClickDidStateChange() { return true ;}
void SetMinimum( wxInt32 v );
void SetMaximum( wxInt32 v );
void SetIncrement(int WXUNUSED(value)) { }
wxInt32 GetMinimum() const;
wxInt32 GetMaximum() const;
int GetIncrement() const { return 1; }
void PulseGauge();
void SetScrollThumb( wxInt32 value, wxInt32 thumbSize );
void SetFont(const wxFont & font);
void InstallEventHandler( WXWidget control = nullptr );
bool EnableTouchEvents(int WXUNUSED(eventsMask)) { return false; }
virtual void DoNotifyFocusEvent(bool receivedFocus, wxWidgetImpl* otherWindow);
// thunk connected calls
virtual void drawRect(CGRect* rect, WXWidget slf, void* _cmd);
virtual void touchEvent(WX_NSSet touches, WX_UIEvent event, WXWidget slf, void* _cmd);
virtual bool becomeFirstResponder(WXWidget slf, void* _cmd);
virtual bool resignFirstResponder(WXWidget slf, void* _cmd);
// action
virtual void controlAction(void* sender, wxUint32 controlEvent, WX_UIEvent rawEvent);
virtual void controlTextDidChange();
protected:
WXWidget m_osxView;
wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxWidgetIPhoneImpl);
};
class wxNonOwnedWindowIPhoneImpl : public wxNonOwnedWindowImpl
{
public :
wxNonOwnedWindowIPhoneImpl( wxNonOwnedWindow* nonownedwnd) ;
wxNonOwnedWindowIPhoneImpl();
virtual ~wxNonOwnedWindowIPhoneImpl();
virtual void WillBeDestroyed() override;
void Create(wxWindow* parent, const wxPoint& pos, const wxSize& size,
long style, long extraStyle, const wxString& name ) override;
void Create( wxWindow* parent, WXWindow nativeWindow );
WXWindow GetWXWindow() const override;
void Raise() override;
void Lower() override;
bool Show(bool show) override;
bool ShowWithEffect(bool show, wxShowEffect effect, unsigned timeout) override;
void Update() override;
bool SetTransparent(wxByte alpha) override;
bool SetBackgroundColour(const wxColour& col ) override;
void SetExtraStyle( long exStyle ) override;
bool SetBackgroundStyle(wxBackgroundStyle style) override;
bool CanSetTransparent() override;
void MoveWindow(int x, int y, int width, int height) override;
void GetPosition( int &x, int &y ) const override;
void GetSize( int &width, int &height ) const override;
void GetContentArea( int &left , int &top , int &width , int &height ) const override;
bool SetShape(const wxRegion& region) override;
virtual void SetTitle( const wxString& title ) override;
// Title bar buttons don't exist in iOS.
virtual bool EnableCloseButton(bool WXUNUSED(enable)) override { return false; }
virtual bool EnableMaximizeButton(bool WXUNUSED(enable)) override { return false; }
virtual bool EnableMinimizeButton(bool WXUNUSED(enable)) override { return false; }
virtual bool IsMaximized() const override;
virtual bool IsIconized() const override;
virtual void Iconize( bool iconize ) override;
virtual void Maximize(bool maximize) override;
virtual bool IsFullScreen() const override;
virtual bool EnableFullScreenView(bool enable, long style) override;
virtual bool ShowFullScreen(bool show, long style) override;
virtual wxContentProtection GetContentProtection() const override
{ return wxCONTENT_PROTECTION_NONE; }
virtual bool SetContentProtection(wxContentProtection WXUNUSED(contentProtection)) override
{ return false; }
virtual void RequestUserAttention(int flags) override;
virtual void ScreenToWindow( int *x, int *y ) override;
virtual void WindowToScreen( int *x, int *y ) override;
// FIXME: Does iPhone have a concept of inactive windows?
virtual bool IsActive() override { return true; }
wxNonOwnedWindow* GetWXPeer() { return m_wxPeer; }
virtual bool InitialShowEventSent() { return m_initialShowSent; }
protected :
WX_UIWindow m_macWindow;
void * m_macFullScreenData ;
bool m_initialShowSent;
wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxNonOwnedWindowIPhoneImpl);
};
#ifdef __OBJC__
WXDLLIMPEXP_CORE CGRect wxToNSRect( UIView* parent, const wxRect& r );
WXDLLIMPEXP_CORE wxRect wxFromNSRect( UIView* parent, const CGRect& rect );
WXDLLIMPEXP_CORE CGPoint wxToNSPoint( UIView* parent, const wxPoint& p );
WXDLLIMPEXP_CORE wxPoint wxFromNSPoint( UIView* parent, const CGPoint& p );
WXDLLIMPEXP_CORE CGPoint wxToNSPointF(UIView* parent, const wxPoint2DDouble& p);
WXDLLIMPEXP_CORE wxPoint2DDouble wxFromNSPointF(UIView* parent, const CGPoint& p);
CGRect WXDLLIMPEXP_CORE wxOSXGetFrameForControl( wxWindowMac* window , const wxPoint& pos , const wxSize &size ,
bool adjustForOrigin = true );
@interface wxUIButton : UIButton
{
}
@end
@interface wxUIView : UIView
{
}
@end // wxUIView
void WXDLLIMPEXP_CORE wxOSXIPhoneClassAddWXMethods(Class c);
#endif
#endif // wxUSE_GUI
#endif
// _WX_PRIVATE_IPHONE_H_

View File

@@ -0,0 +1,113 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/osx/iphone/private/textimpl.h
// Purpose: textcontrol implementation classes that have to be exposed
// Author: Stefan Csomor
// Created: 03/02/99
// Copyright: (c) Stefan Csomor
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_OSX_COCOA_PRIVATE_TEXTIMPL_H_
#define _WX_OSX_COCOA_PRIVATE_TEXTIMPL_H_
#include "wx/combobox.h"
#include "wx/osx/private.h"
// implementation exposed, so that search control can pull it
class wxUITextFieldControl : public wxWidgetIPhoneImpl, public wxTextWidgetImpl
{
public :
wxUITextFieldControl( wxTextCtrl *wxPeer, UITextField* w );
virtual ~wxUITextFieldControl();
virtual wxTextSearchResult SearchText(const wxTextSearch &search) const;
virtual wxString GetStringValue() const ;
virtual void SetStringValue( const wxString &str) ;
virtual wxString GetRTFValue() const;
virtual void SetRTFValue(const wxString& WXUNUSED(str));
virtual void Copy() ;
virtual void Cut() ;
virtual void Paste() ;
virtual bool CanPaste() const ;
virtual void SetEditable(bool editable) ;
virtual void GetSelection( long* from, long* to) const ;
virtual void SetSelection( long from , long to );
virtual void WriteText(const wxString& str) ;
virtual bool HasOwnContextMenu() const { return true; }
virtual wxSize GetBestSize() const;
virtual bool SetHint(const wxString& hint);
virtual void controlAction(WXWidget slf, void* _cmd, void *sender);
protected :
UITextField* m_textField;
NSObject<UITextFieldDelegate>* m_delegate;
long m_selStart;
long m_selEnd;
};
class wxUITextViewControl : public wxWidgetIPhoneImpl, public wxTextWidgetImpl
{
public:
wxUITextViewControl( wxTextCtrl *wxPeer, UITextView* w );
virtual ~wxUITextViewControl();
virtual wxTextSearchResult SearchText(const wxTextSearch &search) const;
virtual wxString GetStringValue() const ;
virtual void SetStringValue( const wxString &str) ;
virtual wxString GetRTFValue() const;
virtual void SetRTFValue(const wxString& WXUNUSED(str));
virtual void Copy() ;
virtual void Cut() ;
virtual void Paste() ;
virtual bool CanPaste() const ;
virtual void SetEditable(bool editable) ;
virtual void GetSelection( long* from, long* to) const ;
virtual void SetSelection( long from , long to );
virtual void WriteText(const wxString& str) ;
virtual void SetFont(const wxFont & font);
virtual bool GetStyle(long position, wxTextAttr& style);
virtual void SetStyle(long start, long end, const wxTextAttr& style);
virtual bool CanFocus() const;
virtual bool HasOwnContextMenu() const { return true; }
virtual wxSize GetBestSize() const;
protected:
NSObject<UITextViewDelegate>* m_delegate;
UITextView* m_textView;
};
#if 0
class wxNSComboBoxControl : public wxUITextFieldControl, public wxComboWidgetImpl
{
public :
wxNSComboBoxControl( wxWindow *wxPeer, WXWidget w );
virtual ~wxNSComboBoxControl();
virtual int GetSelectedItem() const;
virtual void SetSelectedItem(int item);
virtual int GetNumberOfItems() const;
virtual void InsertItem(int pos, const wxString& item);
virtual void RemoveItem(int pos);
virtual void Clear();
virtual wxString GetStringAtIndex(int pos) const;
virtual int FindString(const wxString& text) const;
private:
NSComboBox* m_comboBox;
};
#endif
#endif // _WX_OSX_COCOA_PRIVATE_TEXTIMPL_H_