73 Edit(
X x,
Y y,
X w,
const std::string& str,
const boost::shared_ptr<Font>& font,
Clr color,
78 virtual Pt MinUsableSize()
const;
79 virtual Pt ClientUpperLeft()
const;
80 virtual Pt ClientLowerRight()
const;
84 const std::pair<CPSize, CPSize>& CursorPosn()
const;
87 Clr InteriorColor()
const;
90 Clr HiliteColor()
const;
93 Clr SelectedTextColor()
const;
103 virtual void Render();
105 virtual void SetColor(
Clr c);
108 void SetInteriorColor(
Clr c);
111 void SetHiliteColor(
Clr c);
114 void SetSelectedTextColor(
Clr c);
127 virtual void SelectAll();
129 virtual void SetText(
const std::string& str);
139 virtual bool MultiSelected()
const;
142 CPSize FirstCharShown()
const;
146 bool RecentlyEdited()
const;
154 X FirstCharOffset()
const;
158 X ScreenPosOfChar(
CPSize idx)
const;
162 CPSize LastVisibleChar()
const;
165 unsigned int LastButtonDownTime()
const;
169 bool InDoubleButtonDownMode()
const;
173 std::pair<CPSize, CPSize> DoubleButtonDownCursorPos()
const;
181 virtual void KeyPress(
Key key, boost::uint32_t key_code_point,
Flags<ModKey> mod_keys);
182 virtual void GainingFocus();
183 virtual void LosingFocus();
192 std::pair<CPSize, CPSize> GetDoubleButtonDownWordIndices(
CPSize char_index);
199 std::pair<CPSize, CPSize> GetDoubleButtonDownDragWordIndices(
CPSize char_index);
203 void ClearDoubleButtonDownMode();
211 void ClearSelected();
217 std::pair<CPSize, CPSize> m_cursor_pos;
219 CPSize m_first_char_shown;
222 Clr m_sel_text_color;
224 bool m_recently_edited;
226 unsigned int m_last_button_down_time;
227 bool m_in_double_click_mode;
228 std::pair<CPSize, CPSize> m_double_click_cursor_pos;
231 void GG_API GetTranslatedCodePoint(
Key key,
232 boost::uint32_t key_code_point,
234 std::string& translated_code_point);