summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Walter <stefw@src.gnome.org>2009-03-27 05:22:23 +0000
committerStefan Walter <stefw@src.gnome.org>2009-03-27 05:22:23 +0000
commitde60fd8cfd3e7e36db22a359e3d75d353f582cb9 (patch)
treee3807bc487fe47b70bcc35ea77469eec8a929857
parente5110c50b67acc86b8007ada306f303edf74a0ce (diff)
downloadgtk+-de60fd8cfd3e7e36db22a359e3d75d353f582cb9.tar.gz
Use gtk_entry_xxx functions rather than using GtkEntry structure directly.
See bug #576801 svn path=/trunk/; revision=22589
-rw-r--r--ChangeLog16
-rw-r--r--gtk/gtkfilechooserentry.c12
-rw-r--r--gtk/gtkspinbutton.c10
-rw-r--r--modules/other/gail/gailentry.c27
4 files changed, 43 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index bc60199fca..a1268729a9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2009-03-26 Stef Walter <stef@memberwebs.com>
+
+ * gtk/gtkfilechooserentry.c
+ (char_after_cursor_is_directory_separator)
+ (gtk_file_chooser_entry_do_insert_text)
+ (gtk_file_chooser_entry_focus)
+ (commit_completion_and_refresh)
+ (refresh_current_folder_and_file_part) (autocomplete):
+ * gtk/gtkspinbutton.c (gtk_spin_button_insert_text):
+ * modules/other/gail/gailentry.c (gail_entry_real_initialize)
+ (text_setup) (gail_entry_get_run_attributes)
+ (gail_entry_get_character_extents)
+ (gail_entry_get_offset_at_point): Use gtk_entry_xxx functions
+ rather than using GtkEntry structure directly.
+ See bug #576801
+
2009-03-25 Christian Dywan <christian@twotoasts.de>
* gtk/gtkselection.c: Typo correction, s/hilding/holding
diff --git a/gtk/gtkfilechooserentry.c b/gtk/gtkfilechooserentry.c
index bb8b0511c4..2fb5eddbe2 100644
--- a/gtk/gtkfilechooserentry.c
+++ b/gtk/gtkfilechooserentry.c
@@ -641,7 +641,7 @@ char_after_cursor_is_directory_separator (GtkFileChooserEntry *chooser_entry)
result = FALSE;
cursor_pos = gtk_editable_get_position (GTK_EDITABLE (chooser_entry));
- if (cursor_pos < GTK_ENTRY (chooser_entry)->text_length)
+ if (cursor_pos < gtk_entry_get_text_length (GTK_ENTRY (chooser_entry)))
{
char *next_char_str;
@@ -800,7 +800,7 @@ gtk_file_chooser_entry_do_insert_text (GtkEditable *editable,
gint old_text_len;
gint insert_pos;
- old_text_len = GTK_ENTRY (chooser_entry)->text_length;
+ old_text_len = gtk_entry_get_text_length (GTK_ENTRY (chooser_entry));
insert_pos = *position;
parent_editable_iface->do_insert_text (editable, new_text, new_text_length, position);
@@ -1248,7 +1248,7 @@ gtk_file_chooser_entry_focus (GtkWidget *widget,
(! control_pressed))
{
if (chooser_entry->has_completion)
- gtk_editable_set_position (editable, entry->text_length);
+ gtk_editable_set_position (editable, gtk_entry_get_text_length (entry));
else
start_explicit_completion (chooser_entry);
@@ -1275,7 +1275,7 @@ commit_completion_and_refresh (GtkFileChooserEntry *chooser_entry)
if (chooser_entry->has_completion)
{
gtk_editable_set_position (GTK_EDITABLE (chooser_entry),
- GTK_ENTRY (chooser_entry)->text_length);
+ gtk_entry_get_text_length (GTK_ENTRY (chooser_entry)));
}
/* Here we ignore the result of refresh_current_folder_and_file_part(); there is nothing we can do with it */
@@ -1541,7 +1541,7 @@ refresh_current_folder_and_file_part (GtkFileChooserEntry *chooser_entry,
break;
case REFRESH_WHOLE_TEXT:
- end_pos = GTK_ENTRY (chooser_entry)->text_length;
+ end_pos = gtk_entry_get_text_length (GTK_ENTRY (chooser_entry));
break;
default:
@@ -1632,7 +1632,7 @@ autocomplete (GtkFileChooserEntry *chooser_entry)
{
if (!(chooser_entry->current_folder != NULL
&& _gtk_folder_is_finished_loading (chooser_entry->current_folder)
- && gtk_editable_get_position (GTK_EDITABLE (chooser_entry)) == GTK_ENTRY (chooser_entry)->text_length))
+ && gtk_editable_get_position (GTK_EDITABLE (chooser_entry)) == gtk_entry_get_text_length (GTK_ENTRY (chooser_entry))))
return;
append_common_prefix (chooser_entry, TRUE, FALSE);
diff --git a/gtk/gtkspinbutton.c b/gtk/gtkspinbutton.c
index b24d985769..836214b97b 100644
--- a/gtk/gtkspinbutton.c
+++ b/gtk/gtkspinbutton.c
@@ -1427,8 +1427,10 @@ gtk_spin_button_insert_text (GtkEditable *editable,
GdkWChar pos_sign;
GdkWChar neg_sign;
gint entry_length;
+ const gchar *entry_text;
- entry_length = entry->text_length;
+ entry_length = gtk_entry_get_text_length (entry);
+ entry_text = gtk_entry_get_text (entry);
lc = localeconv ();
@@ -1463,8 +1465,8 @@ gtk_spin_button_insert_text (GtkEditable *editable,
#endif
for (sign=0, i=0; i<entry_length; i++)
- if ((entry->text[i] == neg_sign) ||
- (entry->text[i] == pos_sign))
+ if ((entry_text[i] == neg_sign) ||
+ (entry_text[i] == pos_sign))
{
sign = 1;
break;
@@ -1474,7 +1476,7 @@ gtk_spin_button_insert_text (GtkEditable *editable,
return;
for (dotpos=-1, i=0; i<entry_length; i++)
- if (entry->text[i] == *(lc->decimal_point))
+ if (entry_text[i] == *(lc->decimal_point))
{
dotpos = i;
break;
diff --git a/modules/other/gail/gailentry.c b/modules/other/gail/gailentry.c
index f426f5639f..5a7ba4a3b3 100644
--- a/modules/other/gail/gailentry.c
+++ b/modules/other/gail/gailentry.c
@@ -231,7 +231,7 @@ gail_entry_real_initialize (AtkObject *obj,
g_signal_connect (data, "changed",
G_CALLBACK (_gail_entry_changed_cb), NULL);
- if (entry->visible)
+ if (gtk_entry_get_visibility (entry))
obj->role = ATK_ROLE_TEXT;
else
obj->role = ATK_ROLE_PASSWORD_TEXT;
@@ -312,6 +312,7 @@ text_setup (GailEntry *entry,
GString *tmp_string = g_string_new (NULL);
gint ch_len;
gchar buf[7];
+ guint length;
gint i;
invisible_char = gtk_entry_get_invisible_char (gtk_entry);
@@ -319,7 +320,8 @@ text_setup (GailEntry *entry,
invisible_char = ' ';
ch_len = g_unichar_to_utf8 (invisible_char, buf);
- for (i = 0; i < gtk_entry->text_length; i++)
+ length = gtk_entry_get_text_length (gtk_entry);
+ for (i = 0; i < length; i++)
{
g_string_append_len (tmp_string, buf, ch_len);
}
@@ -576,7 +578,7 @@ gail_entry_get_run_attributes (AtkText *text,
at_set = gail_misc_layout_get_run_attributes (at_set,
gtk_entry_get_layout (entry),
- entry->text,
+ (gchar*)gtk_entry_get_text (entry),
offset,
start_offset,
end_offset);
@@ -616,6 +618,7 @@ gail_entry_get_character_extents (AtkText *text,
GtkEntry *entry;
PangoRectangle char_rect;
gint index, cursor_index, x_layout, y_layout;
+ const gchar *entry_text;
widget = GTK_ACCESSIBLE (text)->widget;
if (widget == NULL)
@@ -625,9 +628,9 @@ gail_entry_get_character_extents (AtkText *text,
entry = GTK_ENTRY (widget);
gtk_entry_get_layout_offsets (entry, &x_layout, &y_layout);
- index = g_utf8_offset_to_pointer (entry->text, offset) - entry->text;
- cursor_index = g_utf8_offset_to_pointer (entry->text, entry->current_pos) -
- entry->text;
+ entry_text = gtk_entry_get_text (entry);
+ index = g_utf8_offset_to_pointer (entry_text, offset) - entry_text;
+ cursor_index = g_utf8_offset_to_pointer (entry_text, entry->current_pos) - entry_text;
if (index > cursor_index)
index += entry->preedit_length;
pango_layout_index_to_pos (gtk_entry_get_layout(entry), index, &char_rect);
@@ -645,7 +648,8 @@ gail_entry_get_offset_at_point (AtkText *text,
GtkWidget *widget;
GtkEntry *entry;
gint index, cursor_index, x_layout, y_layout;
-
+ const gchar *entry_text;
+
widget = GTK_ACCESSIBLE (text)->widget;
if (widget == NULL)
/* State is defunct */
@@ -654,21 +658,20 @@ gail_entry_get_offset_at_point (AtkText *text,
entry = GTK_ENTRY (widget);
gtk_entry_get_layout_offsets (entry, &x_layout, &y_layout);
+ entry_text = gtk_entry_get_text (entry);
index = gail_misc_get_index_at_point_in_layout (widget,
gtk_entry_get_layout(entry), x_layout, y_layout, x, y, coords);
if (index == -1)
{
if (coords == ATK_XY_SCREEN || coords == ATK_XY_WINDOW)
- return g_utf8_strlen (entry->text, -1);
+ return g_utf8_strlen (entry_text, -1);
return index;
}
else
{
- cursor_index = g_utf8_offset_to_pointer (entry->text,
- entry->current_pos) -
- entry->text;
+ cursor_index = g_utf8_offset_to_pointer (entry_text, entry->current_pos) - entry_text;
if (index >= cursor_index && entry->preedit_length)
{
if (index >= cursor_index + entry->preedit_length)
@@ -676,7 +679,7 @@ gail_entry_get_offset_at_point (AtkText *text,
else
index = cursor_index;
}
- return g_utf8_pointer_to_offset (entry->text, entry->text + index);
+ return g_utf8_pointer_to_offset (entry_text, entry_text + index);
}
}