1 #ifndef __GTK_VI_SCREEN_H__
2 #define __GTK_VI_SCREEN_H__
7 #include "../common/multibyte.h"
10 #include <pango/pango.h>
11 #include <pango/pangox.h>
13 #define xthickness klass->xthickness
14 #define ythickness klass->ythickness
15 #define GTK_CLASS_TYPE(class) class->type
18 #define GTK_TYPE_VI_SCREEN (gtk_vi_screen_get_type ())
19 #define GTK_VI_SCREEN(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_VI_SCREEN, GtkViScreen))
20 #define GTK_VI_SCREEN_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_VI_SCREEN, GtkViScreenClass))
21 #define GTK_IS_VI_SCREEN(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_VI_SCREEN))
22 #define GTK_IS_VI_SCREEN_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_VI_SCREEN))
24 typedef struct _GtkViScreen GtkViScreen
;
25 typedef struct _GtkViScreenClass GtkViScreenClass
;
44 gint ch_width
, ch_height
, ch_ascent
;
45 gint curx
, cury
; /* character position */
47 gint marked_x
, marked_y
, marked_maxx
, marked_maxy
;
55 struct _GtkViScreenClass
57 GtkWidgetClass parent_class
;
59 void (*rename
) (GtkViScreen
*vi
, gchar
*name
, gint len
);
60 void (*resized
) (GtkViScreen
*vi
, gint width
, gint height
);
63 GtkType
gtk_vi_screen_get_type (void);
64 GtkWidget
* gtk_vi_screen_new (GtkAdjustment
*vadj
);
65 void gtk_vi_screen_set_adjustment (GtkViScreen
*vi_screen
,
67 void gtk_vi_screen_move (GtkViScreen
*vi
, gint row
, gint col
);
68 void gtk_vi_screen_clrtoel (GtkViScreen
*vi
);
69 void gtk_vi_screen_attribute(GtkViScreen
*vi
, gint attribute
, gint on
);
70 void gtk_vi_screen_addstr (GtkViScreen
*vi
, const char *str
, int len
);
71 void gtk_vi_screen_deleteln (GtkViScreen
*vi
);
72 void gtk_vi_screen_insertln (GtkViScreen
*vi
);
73 void gtk_vi_screen_refresh (GtkViScreen
*vi
);
74 void gtk_vi_screen_rewrite (GtkViScreen
*vi
, gint row
);
76 #endif /* __GTK_VI_SCREEN_H__ */