1 #ifndef MSP_GLTK_ENTRY_H_
2 #define MSP_GLTK_ENTRY_H_
18 text The current text of the widget. Graphics are ignored.
19 cursor Indicates the current input position. Fill_x is ignored.
20 slider A vertical slider for multiline entries.
22 class Entry: virtual public Widget, private Container
25 class Loader: public Widget::Loader
31 sigc::signal<void> signal_enter;
40 unsigned visible_rows;
41 const Part *text_part;
46 Entry(const std::string & = std::string());
48 virtual const char *get_class() const { return "entry"; }
50 virtual void autosize();
52 void set_text(const std::string &);
53 const std::string &get_text() const { return text.get(); }
55 /** Sets the minimum size of the editing area, in characters and rows. This
56 only affects autosizing. */
57 void set_edit_size(unsigned w, unsigned h);
59 void set_multiline(bool);
60 bool is_multiline() const { return multiline; }
63 virtual void rebuild_special(const Part &, CachedPart &);
64 virtual void render_special(const Part &, GL::Renderer &) const;
67 virtual void key_press(unsigned, unsigned);
68 virtual void character(wchar_t);
69 virtual void focus_out();
71 virtual void on_geometry_change();
72 virtual void on_style_change();
74 void set_edit_position(unsigned);
75 void reposition_slider();
76 void check_view_range();
77 void slider_value_changed(double);