⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 abookcontactview.c

📁 linux手机下的电话本源码(是contact的上层)
💻 C
📖 第 1 页 / 共 2 页
字号:
    GtkWidget *grpbox = NULL;    GtkWidget *sep = NULL;    grpbox = gtk_hbox_new (FALSE, 0);    gtk_widget_set_size_request (grpbox, -1, 70);    if (TRUE)    {      GtkWidget *subbox = NULL;      gtk_widget_set_size_request (view->labels[CNT_VIEW_NAME], -1, 40);      gtk_misc_set_alignment (GTK_MISC (view->labels[CNT_VIEW_NAME]), 0, 0);      gtk_entry_set_alignment (GTK_ENTRY (view->entries[CNT_VIEW_NAME]), 1.0);      subbox = gtk_vbox_new (FALSE, 0);      gtk_box_pack_start (GTK_BOX (subbox), view->labels[CNT_VIEW_NAME], FALSE,                          FALSE, 0);      gtk_box_pack_start (GTK_BOX (subbox), view->entries[CNT_VIEW_NAME], FALSE,                          FALSE, 0);      gtk_box_pack_start (GTK_BOX (grpbox), subbox, FALSE, FALSE, 10);    }    gtk_box_pack_end (GTK_BOX (grpbox), view->image, FALSE, FALSE, 10);    gtk_box_pack_start (GTK_BOX (vbox), grpbox, FALSE, FALSE, 10);    sep = gtk_hseparator_new ();    gtk_box_pack_start (GTK_BOX (vbox), sep, 0, TRUE, 0);  }  for (i = CNT_VIEW_MOBILENUM; i < NUM_CNT_VIEW_ITEMS; i++)  {    GtkWidget *grpbox = NULL;    grpbox = gtk_vbox_new (FALSE, 5);    gtk_widget_set_size_request (grpbox, -1, 60);    gtk_misc_set_alignment (GTK_MISC (view->labels[i]), 0, 0);    gtk_box_pack_start (GTK_BOX (grpbox), view->labels[i], FALSE, FALSE, 0);    gtk_box_pack_start (GTK_BOX (grpbox), view->entries[i], FALSE, FALSE, 0);    gtk_box_pack_start (GTK_BOX (vbox), grpbox, FALSE, FALSE, 5);  }  if (TRUE)  {    GtkWidget *grpbox = NULL;    GtkWidget *hbox = NULL;    grpbox = gtk_vbox_new (FALSE, 5);    gtk_widget_set_size_request (grpbox, -1, 60);    hbox = gtk_hbox_new (FALSE, 0);    view->cat_label = gtk_label_new (NULL);    gtk_label_set_markup (GTK_LABEL (view->cat_label),                          "<span color=\"Blue\">Categories</span>");    gtk_misc_set_alignment (GTK_MISC (view->cat_label), 0, 0);    view->cat_entry = gtk_entry_new ();    gtk_widget_set_size_request (view->cat_entry, 180, -1);    gtk_entry_set_has_frame (GTK_ENTRY (view->cat_entry), FALSE);    g_signal_connect (G_OBJECT (view->cat_entry), "focus-in-event",                      G_CALLBACK (entry_focus_in_cb), (gpointer) view);    g_signal_connect (G_OBJECT (view->cat_entry), "focus-out-event",                      G_CALLBACK (entry_focus_out_cb), (gpointer) view);    g_signal_connect (G_OBJECT (view->cat_entry), "key-press-event",                      G_CALLBACK                      (abook_contact_view_category_entry_key_press_cb),                      (gpointer) view);    view->cat_image = gtk_image_new ();    gtk_widget_set_size_request (view->cat_image, SIZE_NORMAL_W, SIZE_NORMAL_H);    if (TRUE)    {      GdkPixbuf *pixbuf = NULL;      gchar *picpath = NULL;      picpath =        g_build_filename (abook_env_get_picpath (), "categories.png", NULL);      abook_pictures_load (picpath, PIC_NORMAL);      pixbuf = abook_pictures_find (picpath, PIC_NORMAL);      gtk_image_set_from_pixbuf (GTK_IMAGE (view->cat_image), pixbuf);      g_free (picpath);    }    gtk_box_pack_start (GTK_BOX (hbox), view->cat_entry, TRUE, TRUE, 0);    gtk_box_pack_start (GTK_BOX (hbox), view->cat_image, TRUE, TRUE, 0);    gtk_box_pack_start (GTK_BOX (grpbox), view->cat_label, FALSE, FALSE, 0);    gtk_box_pack_start (GTK_BOX (grpbox), hbox, FALSE, FALSE, 0);    gtk_box_pack_start (GTK_BOX (vbox), grpbox, FALSE, FALSE, 5);  }  gtk_auto_scrolled_window_add_with_viewport (GTK_AUTO_SCROLLED_WINDOW (view),                                              vbox);  if (TRUE)  {    GtkWidget *viewport = NULL;    GdkColor white_bg = { 0, 0xFFFF, 0xFFFF, 0xFFFF };    viewport =      gtk_auto_scrolled_window_get_viewport (GTK_AUTO_SCROLLED_WINDOW (view));    if (viewport)    {      gtk_widget_modify_bg (GTK_WIDGET (viewport), GTK_STATE_NORMAL, &white_bg);    }  }  g_signal_connect (G_OBJECT (view), "show",                    G_CALLBACK (abook_contact_view_show_cb), NULL);  g_signal_connect (G_OBJECT (view), "hide",                    G_CALLBACK (abook_contact_view_hide_cb), NULL);  view->uuid = NULL;  view->editable = TRUE;  view->status = FALSE;  view->cat_modifier = NULL;//      view->cat_uids = g_ptr_array_new();  view->focused_item = CNT_VIEW_NAME;  return;}GtkWidget *abook_contact_view_new (void){  return gtk_widget_new (ABOOK_TYPE_CONTACT_VIEW, NULL);}G_CONST_RETURN gchar *abook_contact_view_get_item_value (const ABookContactView *view,                                   ABookContactViewItems item){  GtkWidget *entry = view->entries[item];  return gtk_entry_get_text (GTK_ENTRY (entry));}voidabook_contact_view_set_item_value (ABookContactView *view,                                   ABookContactViewItems item,                                   const gchar *value){  GtkWidget *entry = view->entries[item];  if (value == NULL)  {    return;  }  gtk_entry_set_text (GTK_ENTRY (entry), value);  if (item == CNT_VIEW_PICTURE)  {    GdkPixbuf *pixbuf = NULL;    gchar *picpath = NULL;    picpath = g_build_filename (abook_env_get_picpath (), value, NULL);//              g_print("%s(): path = %s\n", __FUNCTION__, picpath);    abook_pictures_load (picpath, PIC_LARGE);    pixbuf = abook_pictures_find (picpath, PIC_LARGE);    gtk_image_set_from_pixbuf (GTK_IMAGE (view->image), pixbuf);//              g_object_unref(pixbuf);    g_free (picpath);  }  return;}voidabook_contact_view_set_uid (ABookContactView *view, const gchar *uidstr){  if (view->uuid)  {    g_free (view->uuid);    view->uuid = NULL;  }  if (uidstr)  {    view->uuid = g_strdup (uidstr);  }  return;}G_CONST_RETURN gchar *abook_contact_view_get_uid (ABookContactView *view){  return view->uuid;}voidabook_contact_view_set_editable (ABookContactView *view, gboolean editable){  gint i;  if (view->editable == editable)  {    return;  }  view->editable = editable;  if (editable)  {    for (i = 0; i < NUM_CNT_VIEW_ITEMS; i++)    {      GTK_WIDGET_UNSET_FLAGS (view->labels[i], GTK_CAN_FOCUS);      GTK_WIDGET_SET_FLAGS (view->entries[i], GTK_CAN_FOCUS);      gtk_editable_set_editable (GTK_EDITABLE (view->entries[i]), editable);    }    if (TRUE)    {      GTK_WIDGET_UNSET_FLAGS (view->cat_label, GTK_CAN_FOCUS);      GTK_WIDGET_SET_FLAGS (view->cat_entry, GTK_CAN_FOCUS);      gtk_editable_set_editable (GTK_EDITABLE (view->cat_entry), editable);    }  }  else  {    for (i = 0; i < NUM_CNT_VIEW_ITEMS; i++)    {      GTK_WIDGET_SET_FLAGS (view->labels[i], GTK_CAN_FOCUS);      GTK_WIDGET_UNSET_FLAGS (view->entries[i], GTK_CAN_FOCUS);      gtk_editable_set_editable (GTK_EDITABLE (view->entries[i]), editable);    }    if (TRUE)    {      GTK_WIDGET_SET_FLAGS (view->cat_label, GTK_CAN_FOCUS);      GTK_WIDGET_UNSET_FLAGS (view->cat_entry, GTK_CAN_FOCUS);      gtk_editable_set_editable (GTK_EDITABLE (view->cat_entry), editable);    }  }  return;}gbooleanabook_contact_view_get_editable (ABookContactView *view){  return view->editable;}voidabook_contact_view_set_category_modifier (ABookContactView *view,                                          ABookContactViewCatModifier modifier){  view->cat_modifier = modifier;  return;}voidabook_contact_view_set_categories (ABookContactView *view,                                   const gchar *categories_str){  if (categories_str == NULL)  {    gtk_entry_set_text (GTK_ENTRY (view->cat_entry), "");  }  else  {    gtk_entry_set_text (GTK_ENTRY (view->cat_entry), categories_str);  }  return;}G_CONST_RETURN gchar *abook_contact_view_get_categories (ABookContactView *view){  return gtk_entry_get_text (GTK_ENTRY (view->cat_entry));}voidabook_contact_view_set_focus_item (ABookContactView *view,                                   ABookContactViewItems item){  view->focused_item = item;  return;}/* vi:ts=2:nowrap:ai:expandtab*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -