MyGUI  3.2.1
MyGUI_ISubWidgetText.h
Go to the documentation of this file.
00001 /*
00002  * This source file is part of MyGUI. For the latest info, see http://mygui.info/
00003  * Distributed under the MIT License
00004  * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
00005  */
00006 
00007 #ifndef __MYGUI_I_SUB_WIDGET_TEXT_H__
00008 #define __MYGUI_I_SUB_WIDGET_TEXT_H__
00009 
00010 #include "MyGUI_Prerequest.h"
00011 #include "MyGUI_ISubWidget.h"
00012 #include "MyGUI_Colour.h"
00013 #include "MyGUI_Constants.h"
00014 
00015 namespace MyGUI
00016 {
00017 
00018     class MYGUI_EXPORT ISubWidgetText :
00019         public ISubWidget
00020     {
00021         MYGUI_RTTI_DERIVED( ISubWidgetText )
00022 
00023     public:
00024         virtual ~ISubWidgetText()  { }
00025 
00027         virtual size_t getTextSelectionStart() const
00028         {
00029             return 0;
00030         }
00031 
00033         virtual size_t getTextSelectionEnd() const
00034         {
00035             return 0;
00036         }
00037 
00039         virtual void setTextSelection(size_t _start, size_t _end) { }
00040 
00041         // интенсивность выделенного текста
00042         virtual bool getSelectBackground() const
00043         {
00044             return true;
00045         }
00046 
00047         virtual void setSelectBackground(bool _normal) { }
00048 
00049         // нужно ли инвертировать выделение
00050         virtual bool getInvertSelected() const
00051         {
00052             return true;
00053         }
00054 
00055         virtual void setInvertSelected(bool _value) { }
00056 
00057         // нужно ли показывать тень
00058         virtual bool getShadow() const
00059         {
00060             return false;
00061         }
00062 
00063         virtual void setShadow(bool _value) { }
00064 
00065         // управление видимостью курсора
00066         virtual bool isVisibleCursor() const
00067         {
00068             return false;
00069         }
00070 
00071         virtual void setVisibleCursor(bool _value) { }
00072 
00073         // управление положением курсора
00074         virtual size_t getCursorPosition() const
00075         {
00076             return 0;
00077         }
00078 
00079         virtual void setCursorPosition(size_t _index) { }
00080 
00081         virtual void setWordWrap(bool _value) { }
00082 
00083         // возвращает положение курсора по произвольному положению
00084         // позиция абсолютная, без учета смещений
00085         virtual size_t getCursorPosition(const IntPoint& _point) /*const*/
00086         {
00087             return 0;
00088         }
00089 
00090         // возвращает положение курсора в обсолютных координатах
00091         virtual IntCoord getCursorCoord(size_t _position) /*const*/
00092         {
00093             return IntCoord();
00094         }
00095 
00096         // возвращает положение курсора в обсолютных координатах
00097         IntPoint getCursorPoint(size_t _position) /*const*/
00098         {
00099             const IntCoord& coord = getCursorCoord(_position);
00100             return IntPoint(coord.left + coord.width / 2, coord.top + coord.height / 2);
00101         }
00102 
00103         // возвращает положение курсора в обсолютных координатах
00104         IntRect getCursorRect(size_t _position) /*const*/
00105         {
00106             const IntCoord& coord = getCursorCoord(_position);
00107             return IntRect(coord.left, coord.top, coord.left + coord.width, coord.top + coord.height);
00108         }
00109 
00110         // возвращает размер текста в пикселях
00111         virtual IntSize getTextSize() /*const*/
00112         {
00113             return IntSize();
00114         }
00115 
00116         // устанавливает смещение текста в пикселях
00117         virtual void setViewOffset(const IntPoint& _point) { }
00118         virtual IntPoint getViewOffset() const
00119         {
00120             return IntPoint();
00121         }
00122 
00123         virtual void setCaption(const UString& _value) { }
00124         virtual const UString& getCaption() const
00125         {
00126             return Constants::getEmptyUString();
00127         }
00128 
00129         virtual void setTextColour(const Colour& _value) { }
00130         virtual const Colour& getTextColour() const
00131         {
00132             return Colour::Zero;
00133         }
00134 
00135         virtual void setFontName(const std::string& _value) { }
00136         virtual const std::string& getFontName() const
00137         {
00138             return Constants::getEmptyString();
00139         }
00140 
00141         virtual void setFontHeight(int _value) { }
00142         virtual int getFontHeight() const
00143         {
00144             return 0;
00145         }
00146 
00147         virtual void setTextAlign(Align _value) { }
00148         virtual Align getTextAlign() const
00149         {
00150             return Align::Default;
00151         }
00152 
00153         virtual void setShiftText(bool _value) { }
00154 
00155         virtual void setShadowColour(const Colour& _value) { }
00156         virtual const Colour& getShadowColour() const
00157         {
00158             return Colour::Zero;
00159         }
00160 
00161     };
00162 
00163 } // namespace MyGUI
00164 
00165 #endif // __MYGUI_I_SUB_WIDGET_TEXT_H__