#include "gnoclVTE.h"
Go to the source code of this file.
Functions | |
static int | vteFunc (ClientData data, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]) |
static int | configure (Tcl_Interp *interp, GtkWidget *term, GnoclOption options[]) |
Configure the vte widget based upon parameters passed to the calling function. | |
int | gnoclVTECmd (ClientData data, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]) |
Variables | |
static GnoclOption | vteOptions [] |
static int configure | ( | Tcl_Interp * | interp, | |
GtkWidget * | term, | |||
GnoclOption | options[] | |||
) | [static] |
Configure the vte widget based upon parameters passed to the calling function.
Definition at line 97 of file vte.c.
Referenced by gnoclVTECmd().
int gnoclVTECmd | ( | ClientData | data, | |
Tcl_Interp * | interp, | |||
int | objc, | |||
Tcl_Obj *const | objv[] | |||
) |
gnoclVTECmd
Definition at line 110 of file vte.c.
References configure(), vteFunc(), and vteOptions.
00115 { 00116 00117 g_print ( "gnoclVTECmd\n" ); 00118 00119 int ret; 00120 GtkWidget *term; 00121 00122 if ( gnoclParseOptions ( interp, objc, objv, vteOptions ) != TCL_OK ) 00123 { 00124 gnoclClearOptions ( vteOptions ); 00125 return TCL_ERROR; 00126 } 00127 00128 00129 GtkWidget *terminal = vte_terminal_new (); 00130 00131 GtkWidget *scrollbar = gtk_vscrollbar_new ( vte_terminal_get_adjustment 00132 ( VTE_TERMINAL ( terminal ) ) ); 00133 GtkWidget *hbox = gtk_hbox_new ( FALSE, 0 ); 00134 00135 vte_terminal_fork_command ( VTE_TERMINAL ( terminal ), "/bin/bash", 00136 NULL, NULL, g_get_home_dir (), FALSE, FALSE, FALSE ); 00137 vte_terminal_set_font_from_string ( VTE_TERMINAL ( terminal ), "Monospace 9" ); 00138 vte_terminal_set_scroll_on_output ( VTE_TERMINAL ( terminal ), FALSE ); 00139 vte_terminal_set_scroll_on_keystroke ( VTE_TERMINAL ( terminal ), TRUE ); 00140 vte_terminal_set_mouse_autohide ( VTE_TERMINAL ( terminal ), TRUE ); 00141 00142 gtk_box_pack_start ( GTK_BOX ( hbox ), terminal, TRUE, TRUE, 0 ); 00143 00144 gtk_box_pack_start ( GTK_BOX ( hbox ), scrollbar, FALSE, FALSE, 0 ); 00145 00146 /* set options */ 00147 00148 00149 gtk_widget_show ( GTK_WIDGET ( terminal ) ); 00150 00151 ret = gnoclSetOptions ( interp, vteOptions, G_OBJECT ( terminal ), -1 ); 00152 00153 if ( ret == TCL_OK ) 00154 { 00155 ret = configure ( interp, terminal, vteOptions ); 00156 } 00157 00158 gnoclClearOptions ( vteOptions ); 00159 00160 if ( ret != TCL_OK ) 00161 { 00162 gtk_widget_destroy ( GTK_WIDGET ( terminal ) ); 00163 return TCL_ERROR; 00164 } 00165 00166 00167 char *command = "mc\n"; 00168 00169 /* -background */ 00170 GdkColor color; 00171 gchar text[] = "red"; 00172 gdk_color_parse ( &text, &color ); 00173 vte_terminal_set_color_background ( VTE_TERMINAL ( terminal ), &color ); 00174 00175 /* -foreground */ 00176 vte_terminal_set_color_foreground ( VTE_TERMINAL ( terminal ), &color ); 00177 00178 /* -tint */ 00179 vte_terminal_set_background_tint_color ( VTE_TERMINAL ( terminal ), &color ); 00180 00181 /* -bold */ 00182 vte_terminal_set_color_bold ( VTE_TERMINAL ( terminal ), &color ); 00183 00184 /* -saturation */ 00185 vte_terminal_set_background_saturation ( VTE_TERMINAL ( terminal ), 0.5 ); 00186 00187 /* -transparent */ 00188 vte_terminal_set_background_transparent ( VTE_TERMINAL ( terminal ), 1 ); 00189 00190 /* -backgroundImage */ 00191 vte_terminal_set_background_image_file ( VTE_TERMINAL ( terminal ), "./EU_flag.jpg" ); 00192 00193 /* -scrollBackground */ 00194 vte_terminal_set_scroll_background ( VTE_TERMINAL ( terminal ), 1 ); 00195 00196 /* -cursor 00197 * typedef enum { 00198 VTE_CURSOR_SHAPE_BLOCK, 00199 VTE_CURSOR_SHAPE_IBEAM, 00200 VTE_CURSOR_SHAPE_UNDERLINE 00201 } VteTerminalCursorShape; 00202 * */ 00203 /* not available */ 00204 /* 00205 vte_terminal_set_cursor_shape (VTE_TERMINAL (terminal),1); 00206 */ 00207 00208 /* -cursorBlink default = 0*/ 00209 vte_terminal_set_cursor_blinks ( VTE_TERMINAL ( terminal ), 1 ); 00210 00211 /* -mouseHide default = 1*/ 00212 vte_terminal_set_mouse_autohide ( VTE_TERMINAL ( terminal ), 0 ); 00213 00214 /* -font */ 00215 // vte_terminal_set_font_from_string (VTE_TERMINAL (terminal), text); 00216 00217 /* -hearBell default = 0 */ 00218 vte_terminal_set_audible_bell ( VTE_TERMINAL ( terminal ), 1 ); 00219 00220 /* -seeBell default = 0 */ 00221 vte_terminal_set_visible_bell ( VTE_TERMINAL ( terminal ), 1 ); 00222 00223 /* -allowBold */ 00224 vte_terminal_set_allow_bold ( VTE_TERMINAL ( terminal ), 1 ); 00225 00226 /* id feed ??string?? */ 00227 vte_terminal_feed_child ( VTE_TERMINAL ( terminal ), command, strlen ( command ) ); 00228 00229 return gnoclRegisterWidget ( interp, GTK_WIDGET ( hbox ) , vteFunc ); 00230 00231 //return TCL_OK; 00232 00233 }
static int vteFunc | ( | ClientData | data, | |
Tcl_Interp * | interp, | |||
int | objc, | |||
Tcl_Obj *const | objv[] | |||
) | [static] |
GnoclOption vteOptions[] [static] |