void PresentableField::setPresenter( const TextPresenter_p& pPresenter ) { if( pPresenter == m_pPresenter ) return; _presenter()->removeField(this); m_pPresenter = pPresenter; _presenter()->addField(this); }
void PresentableField::clearPresenter() { if( !m_pPresenter ) return; _presenter()->removeField(this); m_pPresenter = 0; _presenter()->addField(this); }
void PresentableField::onNewSize( const Size& size ) { if( size == m_size ) return; m_size = size; _presenter()->onFieldResize(this,size); }
void PresentableField::setState( State state ) { if( state == m_state ) return; State old = m_state; m_state = state; _presenter()->onStateChange( this, state, old ); }
int PresentableField::matchingHeight( int width ) const { return _presenter()->matchingHeight(this, width); }
int WgTextField::Replace( int ofs, int nDelete, const WgCharSeq& seq ) { m_charBuffer.Replace(ofs,nDelete,seq); _presenter()->OnTextModified(this, ofs, nDelete, seq.Length() ); }
int WgTextField::Append( const WgCharSeq& seq ) { int ofs = m_charBuffer.Length(); int len = m_charBuffer.PushBack(seq); _presenter()->OnTextModified(this, ofs, 0, len ); }
void WgTextField::Set( const WgCharSeq& seq ) { int removed = m_charBuffer.Length(); m_charBuffer = seq; _presenter()->OnTextModified(this, 0, removed, m_charBuffer.Length() ); }
void WgEditTextField::OnRender( WgGfxDevice * pDevice, const WgRect& _canvas, const WgRect& _clip ) { _presenter()->RenderField(this, pDevice, _canvas, _clip); }
Rect PresentableField::rectForRange( int ofs, int length ) const { _presenter()->rectForRange(this, ofs, length); }
void PresentableField::onRender( GfxDevice * pDevice, const Rect& _canvas, const Rect& _clip ) { _presenter()->renderField(this, pDevice, _canvas, _clip); }
void PresentableField::onRefresh() { _presenter()->onRefresh(this); }
Rect PresentableField::charToRect( int charOfs ) const { return _presenter()->charToRect(this, charOfs); }
int PresentableField::coordToChar( Coord pos ) const { return _presenter()->coordToChar(this,pos); }
String PresentableField::tooltip() const { return _presenter()->tooltip(this); }
Size PresentableField::preferredSize() const { return _presenter()->preferredSize(this); }
PresentableField::PresentableField( WgPresentableHolder * pHolder ) : Field( pHolder ) { _presenter()->addField(this); }
void WgTextField::Clear() { int removed = m_charBuffer.Length(); m_charBuffer.Clear(); _presenter()->OnTextModified(this, 0, removed, 0 ); }
PresentableField::~PresentableField() { _presenter()->removeField(this); }
void WgTextField::Set( const WgString& str ) { int removed = m_charBuffer.Length(); m_charBuffer = str; _presenter()->OnTextModified(this, 0, removed, m_charBuffer.Length() ); }
void PresentableField::setStyle( const TextStyle_p& pStyle ) { m_pStyle = pStyle; _presenter()->onStyleChange(this); }
int WgTextField::Insert( int ofs, const WgCharSeq& seq ) { m_charBuffer.Insert(ofs,seq); _presenter()->OnTextModified(this, ofs, 0, seq.Length() ); }
void PresentableField::clearStyle() { m_pStyle = 0; _presenter()->onStyleChange(this); }
int WgTextField::Delete( int ofs, int len ) { m_charBuffer.Delete(ofs,len); _presenter()->OnTextModified(this, ofs, len, 0 ); }
int PresentableField::matchingWidth( int height ) const { return _presenter()->matchingWidth(this, height); }