-/* $Id$
-
-This file is part of libmspgltk
-Copyright © 2007-2011 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
#include <msp/gl/matrix.h>
#include <msp/gl/texture.h>
#include <msp/gl/transform.h>
part.get_graphic(state)->render(part.get_geometry().w, part.get_geometry().h);
GL::pop_matrix();
}
- else if(part.get_name()=="slider")
+ else if(part.get_name()=="slider" && multiline)
slider->render();
}
-void Entry::key_press(unsigned key, unsigned, wchar_t ch)
+void Entry::key_press(unsigned key, unsigned)
{
if(key==Input::KEY_LEFT)
{
else
signal_enter.emit();
}
- else if(ch>=' ')
+}
+
+void Entry::character(wchar_t ch)
+{
+ if(ch>=' ')
{
- text.insert(edit_pos, Codecs::encode<Codecs::Utf8>(Codecs::ustring(1, ch)));
+ text.insert(edit_pos, StringCodec::encode<StringCodec::Utf8>(StringCodec::ustring(1, ch)));
++edit_pos;
}
}
else if(row>=first_row+visible_rows)
first_row = row+1-visible_rows;
- if(slider)
- {
- unsigned scroll = max(text.get_n_lines(), visible_rows)-visible_rows;
- slider->set_range(0, scroll);
- slider->set_value(scroll-first_row);
- }
+ unsigned scroll = max(text.get_n_lines(), visible_rows)-visible_rows;
+ slider->set_range(0, scroll);
+ slider->set_value(scroll-first_row);
}
void Entry::slider_value_changed(double value)