gdm r6636 - in trunk: . gui/user-switch-applet
- From: mccann svn gnome org
- To: svn-commits-list gnome org
- Subject: gdm r6636 - in trunk: . gui/user-switch-applet
- Date: Mon, 15 Dec 2008 16:22:18 +0000 (UTC)
Author: mccann
Date: Mon Dec 15 16:22:18 2008
New Revision: 6636
URL: http://svn.gnome.org/viewvc/gdm?rev=6636&view=rev
Log:
2008-12-15 William Jon McCann <jmccann redhat com>
* gui/user-switch-applet/gdm-entry-menu-item.c
(gdm_entry_menu_item_class_init), (on_text_buffer_changed),
(gdm_entry_menu_item_init):
Use TextView instead of Entry.
Modified:
trunk/ChangeLog
trunk/gui/user-switch-applet/gdm-entry-menu-item.c
Modified: trunk/gui/user-switch-applet/gdm-entry-menu-item.c
==============================================================================
--- trunk/gui/user-switch-applet/gdm-entry-menu-item.c (original)
+++ trunk/gui/user-switch-applet/gdm-entry-menu-item.c Mon Dec 15 16:22:18 2008
@@ -29,6 +29,9 @@
#include "gdm-entry-menu-item.h"
+/* same as twitter */
+#define TEXT_BUFFER_MAX_CHARS 64
+
enum
{
PROP_0,
@@ -155,10 +158,12 @@
GObjectClass *gobject_class;
GtkWidgetClass *widget_class;
GtkMenuItemClass *menu_item_class;
+ GtkItemClass *item_class;
gobject_class = G_OBJECT_CLASS (klass);
widget_class = GTK_WIDGET_CLASS (klass);
- menu_item_class = (GtkMenuItemClass*) klass;
+ menu_item_class = GTK_MENU_ITEM_CLASS (klass);
+ item_class = GTK_ITEM_CLASS (klass);
gobject_class->set_property = gdm_entry_menu_item_set_property;
gobject_class->get_property = gdm_entry_menu_item_get_property;
@@ -180,6 +185,18 @@
}
static void
+on_text_buffer_changed (GtkTextBuffer *buffer,
+ GdmEntryMenuItem *item)
+{
+ int len;
+
+ len = gtk_text_buffer_get_char_count (buffer);
+ if (len > TEXT_BUFFER_MAX_CHARS) {
+ gdk_window_beep (GTK_WIDGET (item)->window);
+ }
+}
+
+static void
gdm_entry_menu_item_init (GdmEntryMenuItem *item)
{
PangoFontDescription *fontdesc;
@@ -187,6 +204,7 @@
PangoContext *context;
PangoLanguage *lang;
int ascent;
+ GtkTextBuffer *buffer;
item->hbox = gtk_hbox_new (FALSE, 6);
gtk_container_add (GTK_CONTAINER (item), item->hbox);
@@ -194,14 +212,19 @@
item->image = gtk_image_new ();
gtk_box_pack_start (GTK_BOX (item->hbox), item->image, FALSE, FALSE, 0);
- item->entry = gtk_entry_new ();
+ item->entry = gtk_text_view_new ();
+ gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (item->entry),
+ GTK_WRAP_WORD);
g_signal_connect (item->entry,
"show",
G_CALLBACK (on_entry_show),
item);
- gtk_editable_set_editable (GTK_EDITABLE (item->entry), TRUE);
- gtk_entry_set_max_length (GTK_ENTRY (item->entry), 64);
- gtk_entry_set_text (GTK_ENTRY (item->entry), _("Status"));
+ buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (item->entry));
+ gtk_text_buffer_set_text (buffer, _("Status"), 0);
+ g_signal_connect (buffer,
+ "changed",
+ G_CALLBACK (on_text_buffer_changed),
+ item);
/* get the font ascent for the current font and language */
context = gtk_widget_get_pango_context (item->entry);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]