+struct _GtkEntryPrivate
+{
+ EntryIconInfo *icons[MAX_ICONS];
+
+ GtkEntryBuffer *buffer;
+ GtkIMContext *im_context;
+ GtkShadowType shadow_type;
+ GtkWidget *popup_menu;
+
+ GdkDevice *completion_device;
+ GdkWindow *text_area;
+
+ PangoLayout *cached_layout;
+
+ gchar *im_module;
+
+ gdouble progress_fraction;
+ gdouble progress_pulse_fraction;
+ gdouble progress_pulse_current;
+
+ gfloat xalign;
+
+ gint ascent; /* font ascent in pango units */
+ gint current_pos;
+ gint descent; /* font descent in pango units */
+ gint dnd_position; /* In chars, -1 == no DND cursor */
+ gint drag_start_x;
+ gint drag_start_y;
+ gint focus_width;
+ gint icon_margin;
+ gint insert_pos;
+ gint selection_bound;
+ gint scroll_offset;
+ gint start_x;
+ gint start_y;
+ gint width_chars;
+
+ gunichar invisible_char;
+
+ guint button;
+ guint blink_time; /* time in msec the cursor has blinked since last user event */
+ guint blink_timeout;
+ guint recompute_idle;
+
+ guint16 x_text_size; /* allocated size, in bytes */
+ guint16 x_n_bytes; /* length in use, in bytes */
+
+ guint16 preedit_length; /* length of preedit string, in bytes */
+ guint16 preedit_cursor; /* offset of cursor within preedit string, in chars */
+
+ guint editable : 1;
+ guint in_drag : 1;
+ guint overwrite_mode : 1;
+ guint visible : 1;
+
+ guint activates_default : 1;
+ guint cache_includes_preedit : 1;
+ guint caps_lock_warning : 1;
+ guint caps_lock_warning_shown : 1;
+ guint change_count : 8;
+ guint cursor_visible : 1;
+ guint editing_canceled : 1; /* Only used by GtkCellRendererText */
+ guint has_frame : 1;
+ guint in_click : 1; /* Flag so we don't select all when clicking in entry to focus in */
+ guint is_cell_renderer : 1;
+ guint invisible_char_set : 1;
+ guint interior_focus : 1;
+ guint mouse_cursor_obscured : 1;
+ guint need_im_reset : 1;
+ guint progress_pulse_mode : 1;
+ guint progress_pulse_way_back : 1;
+ guint real_changed : 1;
+ guint resolved_dir : 4; /* PangoDirection */
+ guint select_words : 1;
+ guint select_lines : 1;
+ guint truncate_multiline : 1;
+};