<refentry id="zvt-zvtterm"> <refmeta> <refentrytitle>ZvtTerm widget API description.</refentrytitle> <manvolnum>3</manvolnum> <refmiscinfo>ZVT Library</refmiscinfo> </refmeta> <refnamediv> <refname>ZvtTerm widget API description.</refname><refpurpose>The API description for the ZvtTerm Gtk widget.</refpurpose> </refnamediv> <refsynopsisdiv><title>Synopsis</title> <synopsis> #define <link linkend="ZVT-TERM-CAPS">ZVT_TERM</link> (obj) #define <link linkend="ZVT-TERM-CLASS-CAPS">ZVT_TERM_CLASS</link> (klass) #define <link linkend="ZVT-IS-TERM-CAPS">ZVT_IS_TERM</link> (obj) struct <link linkend="ZvtTerm-struct">ZvtTerm</link>; struct <link linkend="ZvtTermClass">ZvtTermClass</link>; #define <link linkend="ZVT-TERM-DO-UTMP-LOG-CAPS">ZVT_TERM_DO_UTMP_LOG</link> #define <link linkend="ZVT-TERM-DO-WTMP-LOG-CAPS">ZVT_TERM_DO_WTMP_LOG</link> <link linkend="GtkWidget">GtkWidget</link>* <link linkend="zvt-term-new">zvt_term_new</link> (void); <link linkend="GtkWidget">GtkWidget</link>* <link linkend="zvt-term-new-with-size">zvt_term_new_with_size</link> (int cols, int rows); void <link linkend="zvt-term-feed">zvt_term_feed</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, char *text, int len); int <link linkend="zvt-term-forkpty">zvt_term_forkpty</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int do_uwtmp_log); int <link linkend="zvt-term-closepty">zvt_term_closepty</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term); int <link linkend="zvt-term-killchild">zvt_term_killchild</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int signal); void <link linkend="zvt-term-bell">zvt_term_bell</link> (void *zvt_term); <link linkend="guint">guint</link> <link linkend="zvt-term-get-type">zvt_term_get_type</link> (void); void <link linkend="zvt-term-set-scrollback">zvt_term_set_scrollback</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int lines); char* <link linkend="zvt-term-get-buffer">zvt_term_get_buffer</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int *len, int type, int sx, int sy, int ex, int ey); void <link linkend="zvt-term-set-font-name">zvt_term_set_font_name</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, char *name); void <link linkend="zvt-term-set-fonts">zvt_term_set_fonts</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, <link linkend="GdkFont">GdkFont</link> *font, <link linkend="GdkFont">GdkFont</link> *font_bold); void <link linkend="zvt-term-hide-pointer">zvt_term_hide_pointer</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term); void <link linkend="zvt-term-show-pointer">zvt_term_show_pointer</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term); void <link linkend="zvt-term-set-bell">zvt_term_set_bell</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state); <link linkend="gboolean">gboolean</link> <link linkend="zvt-term-get-bell">zvt_term_get_bell</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term); void <link linkend="zvt-term-set-blink">zvt_term_set_blink</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state); void <link linkend="zvt-term-set-scroll-on-keystroke">zvt_term_set_scroll_on_keystroke</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state); void <link linkend="zvt-term-set-scroll-on-output">zvt_term_set_scroll_on_output</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state); void <link linkend="zvt-term-set-color-scheme">zvt_term_set_color_scheme</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, <link linkend="gushort">gushort</link> *red, <link linkend="gushort">gushort</link> *grn, <link linkend="gushort">gushort</link> *blu); void <link linkend="zvt-term-set-default-color-scheme">zvt_term_set_default_color_scheme</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term); void <link linkend="zvt-term-set-del-key-swap">zvt_term_set_del_key_swap</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state); void <link linkend="zvt-term-set-wordclass">zvt_term_set_wordclass</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, unsigned char *klass); void <link linkend="zvt-term-set-background">zvt_term_set_background</link> (<link linkend="ZvtTerm">ZvtTerm</link> *terminal, char *pixmap_file, int transparent, int flags); void <link linkend="zvt-term-set-shadow-type">zvt_term_set_shadow_type</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, <link linkend="GtkShadowType">GtkShadowType</link> type); void <link linkend="zvt-term-set-size">zvt_term_set_size</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term, <link linkend="guint">guint</link> width, <link linkend="guint">guint</link> height); <link linkend="guint32">guint32</link> <link linkend="zvt-term-get-capabilities">zvt_term_get_capabilities</link> (<link linkend="ZvtTerm">ZvtTerm</link> *term); <link linkend="GtkAdjustment">GtkAdjustment</link>* <link linkend="zvt-term-get-adjustment">zvt_term_get_adjustment</link> (<link linkend="ZvtTerm">ZvtTerm</link> *terminal); void <link linkend="zvk-term-set-adjustment">zvk_term_set_adjustment</link> (<link linkend="ZvtTerm">ZvtTerm</link> *dial, <link linkend="GtkAdjustment">GtkAdjustment</link> *adjustment); </synopsis> </refsynopsisdiv> <refsect1> <title>Description</title> <para> Here is the API decription of the Zvt Widget. </para> </refsect1> <refsect1> <title>Details</title> <refsect2> <title><anchor id="ZVT-TERM-CAPS">ZVT_TERM()</title> <programlisting>#define ZVT_TERM(obj) GTK_CHECK_CAST (obj, zvt_term_get_type (), ZvtTerm) </programlisting> <para> Casts the <parameter>obj</parameter> GtkObject into a ZvtTerm object class. </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>obj</parameter> :</entry> <entry>A GtkObject </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="ZVT-TERM-CLASS-CAPS">ZVT_TERM_CLASS()</title> <programlisting>#define ZVT_TERM_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, zvt_term_get_type (), ZvtTermClass) </programlisting> <para> Casts the <parameter>klass</parameter> GtkObjectClass into a ZvtTermClass class. </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>klass</parameter> :</entry> <entry>A GtkClass </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="ZVT-IS-TERM-CAPS">ZVT_IS_TERM()</title> <programlisting>#define ZVT_IS_TERM(obj) GTK_CHECK_TYPE (obj, zvt_term_get_type ()) </programlisting> <para> Returns TRUE if the <parameter>obj</parameter> argument is a GtkObject of type ZvtTerm. </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>obj</parameter> :</entry> <entry>A Gtk Object. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="ZvtTerm-struct">struct ZvtTerm</title> <programlisting>struct ZvtTerm;</programlisting> <para> </para></refsect2> <refsect2> <title><anchor id="ZvtTermClass">struct ZvtTermClass</title> <programlisting>struct ZvtTermClass { GtkWidgetClass parent_class; void (* child_died) (ZvtTerm *term); void (* title_changed) (ZvtTerm *term, VTTITLE_TYPE type, char *newtitle); }; </programlisting> <para> </para></refsect2> <refsect2> <title><anchor id="ZVT-TERM-DO-UTMP-LOG-CAPS">ZVT_TERM_DO_UTMP_LOG</title> <programlisting>#define ZVT_TERM_DO_UTMP_LOG 1 </programlisting> <para> </para></refsect2> <refsect2> <title><anchor id="ZVT-TERM-DO-WTMP-LOG-CAPS">ZVT_TERM_DO_WTMP_LOG</title> <programlisting>#define ZVT_TERM_DO_WTMP_LOG 2 </programlisting> <para> </para></refsect2> <refsect2> <title><anchor id="zvt-term-new">zvt_term_new ()</title> <programlisting><link linkend="GtkWidget">GtkWidget</link>* zvt_term_new (void);</programlisting> <para> Creates a new ZVT Terminal widget. By default the terminal will be setup as 80 colmns x 24 rows, but it will size automatically to its encompassing widget, and may be smaller or larger upon realisation.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> A pointer to a &ZvtTerm widget is returned, or <literal>NULL</literal> on error. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-new-with-size">zvt_term_new_with_size ()</title> <programlisting><link linkend="GtkWidget">GtkWidget</link>* zvt_term_new_with_size (int cols, int rows);</programlisting> <para> Creates a new ZVT Terminal widget of the given character dimentions. If the encompassing widget is resizable, then this size may change afterwards, but should be correct at realisation time.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>cols</parameter> :</entry> <entry> Number of columns required. </entry></row> <row><entry align="right"><parameter>rows</parameter> :</entry> <entry> Number of rows required. </entry></row> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> A pointer to a &ZvtTerm widget is returned, or <literal>NULL</literal> on error. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-feed">zvt_term_feed ()</title> <programlisting>void zvt_term_feed (<link linkend="ZvtTerm">ZvtTerm</link> *term, char *text, int len);</programlisting> <para> This makes the terminal emulator process the stream of characters in <parameter>text</parameter> for <parameter>len</parameter> bytes. The text is interpreted by the terminal emulator as if it were generated by a child process. </para> <para> This is used by code that needs a terminal emulator, but does not use a child process.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>text</parameter> :</entry> <entry> The text to feed. </entry></row> <row><entry align="right"><parameter>len</parameter> :</entry> <entry> The text length. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-forkpty">zvt_term_forkpty ()</title> <programlisting>int zvt_term_forkpty (<link linkend="ZvtTerm">ZvtTerm</link> *term, int do_uwtmp_log);</programlisting> <para> Fork a child process, with a master controlling terminal.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>do_uwtmp_log</parameter> :</entry> <entry> If <literal>TRUE</literal>, then log the session in wtmp(4) and utmp(4). </entry></row> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-closepty">zvt_term_closepty ()</title> <programlisting>int zvt_term_closepty (<link linkend="ZvtTerm">ZvtTerm</link> *term);</programlisting> <para> Close master pty to the child process. It is upto the child to recognise its pty has been closed, and to exit appropriately. </para> <para> Note that a child process must have first been started using <link linkend="zvt-term-forkpty">zvt_term_forkpty</link>().</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> See close(2). </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-killchild">zvt_term_killchild ()</title> <programlisting>int zvt_term_killchild (<link linkend="ZvtTerm">ZvtTerm</link> *term, int signal);</programlisting> <para> Send the signal <parameter>signal</parameter> to the child process. Note that a child process must have first been started using <link linkend="zvt-term-forkpty">zvt_term_forkpty</link>().</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>signal</parameter> :</entry> <entry> A signal number. </entry></row> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> See kill(2). See Also: signal(5). </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-bell">zvt_term_bell ()</title> <programlisting>void zvt_term_bell (void *zvt_term);</programlisting> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>zvt_term</parameter> :</entry> <entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-get-type">zvt_term_get_type ()</title> <programlisting><link linkend="guint">guint</link> zvt_term_get_type (void);</programlisting> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-scrollback">zvt_term_set_scrollback ()</title> <programlisting>void zvt_term_set_scrollback (<link linkend="ZvtTerm">ZvtTerm</link> *term, int lines);</programlisting> <para> Set the maximum number of scrollback lines for the widget <parameter>term</parameter> to <parameter>lines</parameter> lines.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>lines</parameter> :</entry> <entry> Number of lines desired for the scrollback buffer. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-get-buffer">zvt_term_get_buffer ()</title> <programlisting>char* zvt_term_get_buffer (<link linkend="ZvtTerm">ZvtTerm</link> *term, int *len, int type, int sx, int sy, int ex, int ey);</programlisting> <para> Convert the buffer memory into a contiguous array which may be saved or processed. Note that this is not gauranteed to match the order of characters processed by the terminal, only the order in which they were displayed. Tabs will normally be preserved in the output. </para> <para> All inputs are range-checked first, so it is possible to fudge a full buffer grab. </para> <para> Examples: data = zvt_term_get_buffer(term, NULL, VT_SELTYPE_LINE, -term->vx->vt.scrollbackmax, 0, term->vx->vt.height, 0); or, as a rule - data = zvt_term_get_buffer(term, NULL, VT_SELTYPE_LINE, -10000, 0, 10000, 0); </para> <para> Will return the contents of the entire scrollback and on-screen buffers, remembering that all inputs are range-checked first. </para> <para> data = zvt_term_get_buffer(term, NULL, VT_SELTYPE_CHAR, 0, 0, 5, 10); </para> <para> Will return the first 5 lines of the visible screen, and the 6th line upto column 10. </para> <para> Return value: A pointer to a <literal>NUL</literal> terminated buffer containing the raw text from the buffer. If memory could not be allocated, then</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> Valid &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>len</parameter> :</entry> <entry> Placeholder to store the length of text selected. May be <literal>NULL</literal> in which case the value is not returned. </entry></row> <row><entry align="right"><parameter>type</parameter> :</entry> <entry> Type of selection. <literal>VT_SELTYPE_LINE</literal>, select by line, <literal>VT_SELTYPE_WORD</literal>, select by word, or <literal>VT_SELTYPE_CHAR</literal>, select by character. </entry></row> <row><entry align="right"><parameter>sx</parameter> :</entry> <entry> Start of selection, horizontal. </entry></row> <row><entry align="right"><parameter>sy</parameter> :</entry> <entry> Start of selection, vertical. 0 is the top of the visible screen, <0 is scrollback lines, >0 is visible lines (upto the height of the window). </entry></row> <row><entry align="right"><parameter>ex</parameter> :</entry> <entry> End of selection, horizontal. </entry></row> <row><entry align="right"><parameter>ey</parameter> :</entry> <entry> End of selection, vertical, as above. </entry></row> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry><literal>NULL</literal>. Note that it is upto the caller to free the memory, using g_free(3c). If <parameter>len</parameter> was supplied, then the length of data is stored there. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-font-name">zvt_term_set_font_name ()</title> <programlisting>void zvt_term_set_font_name (<link linkend="ZvtTerm">ZvtTerm</link> *term, char *name);</programlisting> <para> Set a font by name only. If font aliases such as 'fixed' or '10x20' are passed to this function, then both the bold and non-bold font will be identical. In colour mode bold fonts are always the top 8 colour scheme entries, and so bold is still rendered. </para> <para> Tries to calculate bold font name from the base name. This only works with fonts where the names are alike.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>name</parameter> :</entry> <entry> A full X11 font name string. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-fonts">zvt_term_set_fonts ()</title> <programlisting>void zvt_term_set_fonts (<link linkend="ZvtTerm">ZvtTerm</link> *term, <link linkend="GdkFont">GdkFont</link> *font, <link linkend="GdkFont">GdkFont</link> *font_bold);</programlisting> <para> Load a set of fonts into the terminal. </para> <para> These fonts should be the same size, otherwise it could get messy ...</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>font</parameter> :</entry> <entry> Font used for regular text. </entry></row> <row><entry align="right"><parameter>font_bold</parameter> :</entry> <entry> Font used for bold text. May be null, in which case the bold font is rendered by over-striking. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-hide-pointer">zvt_term_hide_pointer ()</title> <programlisting>void zvt_term_hide_pointer (<link linkend="ZvtTerm">ZvtTerm</link> *term);</programlisting> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-show-pointer">zvt_term_show_pointer ()</title> <programlisting>void zvt_term_show_pointer (<link linkend="ZvtTerm">ZvtTerm</link> *term);</programlisting> <para> Hide the pointer. In reality the pointer is changed to a single-pixel black dot.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-bell">zvt_term_set_bell ()</title> <programlisting>void zvt_term_set_bell (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state);</programlisting> <para> Enable or disable the terminal bell. If <parameter>state</parameter> is <literal>TRUE</literal>, then the bell is enabled.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>state</parameter> :</entry> <entry> New bell state. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-get-bell">zvt_term_get_bell ()</title> <programlisting><link linkend="gboolean">gboolean</link> zvt_term_get_bell (<link linkend="ZvtTerm">ZvtTerm</link> *term);</programlisting> <para> get the terminal bell state. If the bell on then <literal>TRUE</literal> is returned, otherwise <literal>FALSE</literal>.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-blink">zvt_term_set_blink ()</title> <programlisting>void zvt_term_set_blink (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state);</programlisting> <para> Use this to control the way the cursor is displayed (blinking/solid)</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>state</parameter> :</entry> <entry> The blinking state. If <literal>TRUE</literal>, the cursor will blink. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-scroll-on-keystroke">zvt_term_set_scroll_on_keystroke ()</title> <programlisting>void zvt_term_set_scroll_on_keystroke (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state);</programlisting> <para> If <parameter>state</parameter> is <literal>TRUE</literal>, forces the terminal to jump out of the scrollback buffer whenever a keypress is received.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>state</parameter> :</entry> <entry> Desired state. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-scroll-on-output">zvt_term_set_scroll_on_output ()</title> <programlisting>void zvt_term_set_scroll_on_output (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state);</programlisting> <para> If <parameter>state</parameter> is <literal>TRUE</literal>, forces the terminal to scroll on output being generated by a child process or by <link linkend="zvt-term-feed">zvt_term_feed</link>().</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>state</parameter> :</entry> <entry> Desired state. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-color-scheme">zvt_term_set_color_scheme ()</title> <programlisting>void zvt_term_set_color_scheme (<link linkend="ZvtTerm">ZvtTerm</link> *term, <link linkend="gushort">gushort</link> *red, <link linkend="gushort">gushort</link> *grn, <link linkend="gushort">gushort</link> *blu);</programlisting> <para> This function sets the colour palette for the terminal <parameter>term</parameter>. Each pointer points to a gushort array of 18 elements. White is 0xffff in all elements. </para> <para> The elements 0 trough 15 are the first 16 colours for the terminal, with element 16 and 17 the default foreground and background colour respectively.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>red</parameter> :</entry> <entry> pointer to a gushort array of 18 elements with red values. </entry></row> <row><entry align="right"><parameter>grn</parameter> :</entry> <entry> pointer to a gushort array of 18 elements with green values. </entry></row> <row><entry align="right"><parameter>blu</parameter> :</entry> <entry> pointer to a gushort array of 18 elements with blue values. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-default-color-scheme">zvt_term_set_default_color_scheme ()</title> <programlisting>void zvt_term_set_default_color_scheme (<link linkend="ZvtTerm">ZvtTerm</link> *term);</programlisting> <para> Resets the color values to the default color scheme.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-del-key-swap">zvt_term_set_del_key_swap ()</title> <programlisting>void zvt_term_set_del_key_swap (<link linkend="ZvtTerm">ZvtTerm</link> *term, int state);</programlisting> <para> Sets the mode for interpreting the DEL and Backspace keys.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>state</parameter> :</entry> <entry> If true it swaps the del/backspace definitions </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-wordclass">zvt_term_set_wordclass ()</title> <programlisting>void zvt_term_set_wordclass (<link linkend="ZvtTerm">ZvtTerm</link> *term, unsigned char *klass);</programlisting> <para> Sets the list of characters (character class) that are considered part of a word, when selecting by word. The <parameter>class</parameter> is defined the same was as a regular expression character class (as normally defined using []'s, but without those included). A leading or trailing hypen (-) is used to include a hyphen in the character class. </para> <para> Passing a <literal>NULL</literal> <parameter>class</parameter> restores the default behaviour of alphanumerics plus "_" (i.e. "A-Za-z0-9_").</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>klass</parameter> :</entry> <entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-background">zvt_term_set_background ()</title> <programlisting>void zvt_term_set_background (<link linkend="ZvtTerm">ZvtTerm</link> *terminal, char *pixmap_file, int transparent, int flags);</programlisting> <para> Sets the background of the <parameter>terminal</parameter>. If <parameter>pixmap_file</parameter> and <parameter>transparent</parameter> are <literal>NULL</literal> and <literal>FALSE</literal>, then a standard filled background is set.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>terminal</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>pixmap_file</parameter> :</entry> <entry> file containing the pixmap image </entry></row> <row><entry align="right"><parameter>transparent</parameter> :</entry> <entry> true if we want to run in transparent mode </entry></row> <row><entry align="right"><parameter>shaded</parameter> :</entry> <entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-shadow-type">zvt_term_set_shadow_type ()</title> <programlisting>void zvt_term_set_shadow_type (<link linkend="ZvtTerm">ZvtTerm</link> *term, <link linkend="GtkShadowType">GtkShadowType</link> type);</programlisting> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> </entry></row> <row><entry align="right"><parameter>type</parameter> :</entry> <entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-set-size">zvt_term_set_size ()</title> <programlisting>void zvt_term_set_size (<link linkend="ZvtTerm">ZvtTerm</link> *term, <link linkend="guint">guint</link> width, <link linkend="guint">guint</link> height);</programlisting> <para> Causes the terminal to attempt to resize to the absolute character size of <parameter>width</parameter> rows by <parameter>height</parameter> columns.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><parameter>width</parameter> :</entry> <entry> Width of terminal, in columns. </entry></row> <row><entry align="right"><parameter>height</parameter> :</entry> <entry> Height of terminal, in rows. </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-get-capabilities">zvt_term_get_capabilities ()</title> <programlisting><link linkend="guint32">guint32</link> zvt_term_get_capabilities (<link linkend="ZvtTerm">ZvtTerm</link> *term);</programlisting> <para> Gets the compiled in capabilities of the terminal widget. </para> <para> <literal>ZVT_TERM_PIXMAP_SUPPORT</literal>; Pixmaps can be loaded into the background using the background setting function. </para> <para> <literal>ZVT_TERM_PIXMAPSCROLL_SUPPORT</literal>; The background scrolling flag of the background setting function is honoured. </para> <para> <literal>ZVT_TERM_EMBOLDEN_SUPPORT</literal>; Bold fonts are autogenerated, and can be requested by setting the bold_font of the font setting function to NULL. </para> <para> <literal>ZVT_TERM_MATCH_SUPPORT</literal>; The <link linkend="zvt-term-add-match">zvt_term_add_match</link>() functions exist, and can be used to receive the match_clicked signal when the user clicks on matching text. </para> <para> <literal>ZVT_TERM_TRANSPARENCY_SUPPORT</literal>; A transparent background can be requested on the current display.</para> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>term</parameter> :</entry> <entry> A &ZvtTerm widget. </entry></row> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> a bitmask of the capabilities </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvt-term-get-adjustment">zvt_term_get_adjustment ()</title> <programlisting><link linkend="GtkAdjustment">GtkAdjustment</link>* zvt_term_get_adjustment (<link linkend="ZvtTerm">ZvtTerm</link> *terminal);</programlisting> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>terminal</parameter> :</entry> <entry> </entry></row> <row><entry align="right"><emphasis>Returns</emphasis> :</entry><entry> </entry></row> </tbody></tgroup></informaltable></refsect2> <refsect2> <title><anchor id="zvk-term-set-adjustment">zvk_term_set_adjustment ()</title> <programlisting>void zvk_term_set_adjustment (<link linkend="ZvtTerm">ZvtTerm</link> *dial, <link linkend="GtkAdjustment">GtkAdjustment</link> *adjustment);</programlisting> <para> </para><informaltable pgwide="1" frame="none" role="params"> <tgroup cols="2"> <colspec colwidth="2*"> <colspec colwidth="8*"> <tbody> <row><entry align="right"><parameter>dial</parameter> :</entry> <entry> </entry></row> <row><entry align="right"><parameter>adjustment</parameter> :</entry> <entry> </entry></row> </tbody></tgroup></informaltable></refsect2> </refsect1> </refentry>