# TextView (Vala)

Tiffany Antopolski
tiffany.antopolski@gmail.com 2012
Widget, který zobrazuje GtkTextBuffer

# Widget TextView

Když zmáčkneme Enter, dostaneme nový řádek.

Když zmáčkneme Enter vícekrát, než je počet řádků ve výchozí velikosti okna, objeví se svislý posuvník.

Když napíšeme dlouhou větu, text se zalomí mezi slovy.

Když máme dlouhéééééééééééééééééééééééééééééééééééé slovo, objeví se vodorovný posuvník.

Zde je příklad Gtk.TextView

/* Toto je aplikace. */ public class MyApplication : Gtk.Application { /* Přepíše signál "activate" z GLib.Application. */ protected override void activate () { /* Vytvoří okno této aplikace. */ new MyWindow (this).show_all (); } }

/* Toto je okno. */ class MyWindow: Gtk.ApplicationWindow { internal MyWindow (MyApplication app) { Object (application: app, title: "TextView Example"); this.set_default_size (220, 200);

var buffer = new Gtk.TextBuffer (null); // uchovává text pro zobrazení var textview = new Gtk.TextView.with_buffer (buffer); // zobrazí TextBuffer textview.set_wrap_mode (Gtk.WrapMode.WORD); // nastaví zalamování řádků

var scrolled_window = new Gtk.ScrolledWindow (null, null); scrolled_window.set_policy (Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC);

scrolled_window.add (textview); scrolled_window.set_border_width (5);

this.add (scrolled_window); } } /* main vytvoří a spustí aplikaci. */ public int main (string[] args) { return new MyApplication ().run (args); }

V této ukázce se používá následující:

Gtk.TextBuffer

Gtk.TextView

Gtk.ScrolledWindow

Gtk.WrapMode

Gtk.PolicyType