示例#1
0
文件: login.c 项目: aissat/Elysia
/* Get entry box text */
static void get_entry_text(struct elyapp *app, char **str)
{
    GtkEntryBuffer *buf = gtk_entry_get_buffer(GTK_ENTRY(app->gui.widg));
    const gchar *text   = gtk_entry_buffer_get_text(buf);
    printf("~%s~\n", text);
    buf                 = gtk_entry_buffer_new(0, -1);
    gtk_entry_buffer_set_max_length(buf, app->text.maxchars);
    gtk_entry_set_buffer(GTK_ENTRY(app->gui.widg), buf);
    gtk_widget_destroy(app->gui.widg);
    *str = (char*)text;
}
示例#2
0
文件: login.c 项目: aissat/Elysia
/* ***************************
 * ***** SETUP ENTRY BOX *****
 * ***************************
 */
static void setup_entry(struct elyapp *app, char *tag)
{
    TRACE(stdout, "Setting up %s entry box...", tag);

    if ( app->text.invis != NULL ) {
        gtk_entry_set_visibility(GTK_ENTRY(app->gui.widg),
                                 FALSE);
        gtk_entry_set_invisible_char(GTK_ENTRY(app->gui.widg),
                                     *app->text.invis);
    }
    GtkEntryBuffer *buf = gtk_entry_buffer_new(0, -1);
    gtk_entry_buffer_set_max_length(buf, app->text.maxchars);
    gtk_entry_set_buffer(GTK_ENTRY(app->gui.widg), buf);
    gtk_entry_set_placeholder_text(GTK_ENTRY(app->gui.widg), tag);

    TRACE(stdout, "Done setting up %s entry box.", tag);
}
示例#3
0
static void
gtk_entry_buffer_set_property (GObject      *obj,
                               guint         prop_id,
                               const GValue *value,
                               GParamSpec   *pspec)
{
  GtkEntryBuffer *buffer = GTK_ENTRY_BUFFER (obj);

  switch (prop_id)
    {
    case PROP_TEXT:
      gtk_entry_buffer_set_text (buffer, g_value_get_string (value), -1);
      break;
    case PROP_MAX_LENGTH:
      gtk_entry_buffer_set_max_length (buffer, g_value_get_int (value));
      break;
    default:
      G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, prop_id, pspec);
      break;
    }
}