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 sigc::signal<void> signal_enter;
34 unsigned visible_rows;
35 const Part *text_part;
40 Entry(const std::string & = std::string());
42 virtual const char *get_class() const { return "entry"; }
44 virtual void autosize();
46 void set_text(const std::string &);
47 const std::string &get_text() const { return text.get(); }
49 /** Sets the minimum size of the editing area, in characters and rows. This
50 only affects autosizing. */
51 void set_edit_size(unsigned w, unsigned h);
53 void set_multiline(bool);
54 bool is_multiline() const { return multiline; }
57 virtual void rebuild_special(const Part &, CachedPart &);
58 virtual void render_special(const Part &, GL::Renderer &) const;
61 virtual void key_press(unsigned, unsigned);
62 virtual void character(wchar_t);
63 virtual void focus_out();
65 virtual void on_geometry_change();
66 virtual void on_style_change();
68 void set_edit_position(unsigned);
69 void reposition_slider();
70 void check_view_range();
71 void slider_value_changed(double);