Mercurial > pidgin.yaz
comparison src/dialogs.c @ 1144:b1454d019277
[gaim-migrate @ 1154]
yay. the UI for the permit/deny stuff is done. the rest should be easy. :-P
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Mon, 27 Nov 2000 12:45:03 +0000 |
parents | 8f4ce8b74901 |
children | 428372cc1e39 |
comparison
equal
deleted
inserted
replaced
1143:403989ecc1cc | 1144:b1454d019277 |
---|---|
103 struct gaim_connection *gc; | 103 struct gaim_connection *gc; |
104 }; | 104 }; |
105 | 105 |
106 struct addperm { | 106 struct addperm { |
107 GtkWidget *window; | 107 GtkWidget *window; |
108 GSList *buttons; | |
109 GtkWidget *entry; | 108 GtkWidget *entry; |
110 struct gaim_connection *gc; | 109 struct gaim_connection *gc; |
110 gboolean permit; | |
111 }; | 111 }; |
112 | 112 |
113 struct addbp { | 113 struct addbp { |
114 GtkWidget *window; | 114 GtkWidget *window; |
115 GtkWidget *nameentry; | 115 GtkWidget *nameentry; |
1826 { | 1826 { |
1827 | 1827 |
1828 char *who; | 1828 char *who; |
1829 char *name; | 1829 char *name; |
1830 int d = 0; | 1830 int d = 0; |
1831 GSList *buttons = p->buttons; | |
1832 | 1831 |
1833 | 1832 |
1834 who = gtk_entry_get_text(GTK_ENTRY(p->entry)); | 1833 who = gtk_entry_get_text(GTK_ENTRY(p->entry)); |
1835 | 1834 |
1836 name = g_malloc(strlen(who) + 2); | 1835 name = g_malloc(strlen(who) + 2); |
1837 g_snprintf(name, strlen(who) + 2, "%s", who); | 1836 g_snprintf(name, strlen(who) + 2, "%s", who); |
1838 | 1837 |
1839 while(buttons) { | 1838 if (!p->permit) { |
1840 if((int)gtk_object_get_user_data(GTK_OBJECT(buttons->data)) == 1) { | |
1841 if (GTK_TOGGLE_BUTTON(buttons->data)->active) | |
1842 d = 1; | |
1843 } | |
1844 buttons = buttons->next; | |
1845 } | |
1846 | |
1847 if (d) { | |
1848 GSList *d = p->gc->deny; | 1839 GSList *d = p->gc->deny; |
1849 char *n; | 1840 char *n; |
1850 n = g_strdup(normalize(name)); | 1841 n = g_strdup(normalize(name)); |
1851 while (d) { | 1842 while (d) { |
1852 if (!strcasecmp(n, normalize(d->data))) | 1843 if (!strcasecmp(n, normalize(d->data))) |
1883 destroy_dialog(NULL, p->window); | 1874 destroy_dialog(NULL, p->window); |
1884 } | 1875 } |
1885 | 1876 |
1886 | 1877 |
1887 | 1878 |
1888 void show_add_perm(struct gaim_connection *gc, char *who) | 1879 void show_add_perm(struct gaim_connection *gc, char *who, gboolean permit) |
1889 { | 1880 { |
1890 GtkWidget *cancel; | 1881 GtkWidget *cancel; |
1891 GtkWidget *add; | 1882 GtkWidget *add; |
1892 GtkWidget *label; | 1883 GtkWidget *label; |
1893 GtkWidget *bbox; | 1884 GtkWidget *bbox; |
1894 GtkWidget *vbox; | 1885 GtkWidget *vbox; |
1895 GtkWidget *rbox; | |
1896 GtkWidget *topbox; | 1886 GtkWidget *topbox; |
1897 GtkWidget *which; | |
1898 GtkWidget *frame; | 1887 GtkWidget *frame; |
1899 | 1888 |
1900 struct addperm *p = g_new0(struct addperm, 1); | 1889 struct addperm *p = g_new0(struct addperm, 1); |
1901 p->gc = gc; | 1890 p->gc = gc; |
1891 p->permit = permit; | |
1902 | 1892 |
1903 p->window = gtk_window_new(GTK_WINDOW_DIALOG); | 1893 p->window = gtk_window_new(GTK_WINDOW_DIALOG); |
1904 gtk_container_set_border_width(GTK_CONTAINER(p->window), 5); | 1894 gtk_container_set_border_width(GTK_CONTAINER(p->window), 5); |
1905 gtk_widget_set_usize(p->window, 310, 130); | |
1906 gtk_window_set_policy(GTK_WINDOW(p->window), FALSE, FALSE, TRUE); | 1895 gtk_window_set_policy(GTK_WINDOW(p->window), FALSE, FALSE, TRUE); |
1907 gtk_widget_show(p->window); | 1896 gtk_widget_realize(p->window); |
1908 | 1897 |
1909 dialogwindows = g_list_prepend(dialogwindows, p->window); | 1898 dialogwindows = g_list_prepend(dialogwindows, p->window); |
1910 | 1899 |
1911 bbox = gtk_hbox_new(TRUE, 10); | 1900 bbox = gtk_hbox_new(TRUE, 10); |
1912 topbox = gtk_hbox_new(FALSE, 5); | 1901 topbox = gtk_hbox_new(FALSE, 5); |
1913 vbox = gtk_vbox_new(FALSE, 5); | 1902 vbox = gtk_vbox_new(FALSE, 5); |
1914 rbox = gtk_vbox_new(FALSE, 5); | |
1915 p->entry = gtk_entry_new(); | 1903 p->entry = gtk_entry_new(); |
1916 | 1904 |
1917 frame = gtk_frame_new(_("Permit / Deny")); | 1905 if (permit) |
1906 frame = gtk_frame_new(_("Permit")); | |
1907 else | |
1908 frame = gtk_frame_new(_("Deny")); | |
1918 | 1909 |
1919 /* Build Add Button */ | 1910 /* Build Add Button */ |
1920 | 1911 |
1921 add = picture_button(p->window, _("Add"), add_xpm); | 1912 if (permit) |
1913 add = picture_button(p->window, _("Permit"), add_xpm); | |
1914 else | |
1915 add = picture_button(p->window, _("Deny"), add_xpm); | |
1922 cancel = picture_button(p->window, _("Cancel"), cancel_xpm); | 1916 cancel = picture_button(p->window, _("Cancel"), cancel_xpm); |
1923 | 1917 |
1924 /* End of Cancel Button */ | 1918 /* End of Cancel Button */ |
1925 if (who != NULL) | 1919 if (who != NULL) |
1926 gtk_entry_set_text(GTK_ENTRY(p->entry), who); | 1920 gtk_entry_set_text(GTK_ENTRY(p->entry), who); |
1927 | 1921 |
1928 which = gtk_radio_button_new_with_label(NULL, _("Deny")); | |
1929 gtk_box_pack_start(GTK_BOX(rbox), which, FALSE, FALSE, 0); | |
1930 gtk_object_set_user_data(GTK_OBJECT(which), (int *)1); | |
1931 gtk_widget_show(which); | |
1932 | |
1933 which = gtk_radio_button_new_with_label(gtk_radio_button_group(GTK_RADIO_BUTTON(which)), _("Permit")); | |
1934 gtk_box_pack_start(GTK_BOX(rbox), which, FALSE, FALSE, 0); | |
1935 gtk_object_set_user_data(GTK_OBJECT(which), (int *)2); | |
1936 gtk_widget_show(which); | |
1937 | |
1938 /* Put the buttons in the box */ | 1922 /* Put the buttons in the box */ |
1939 | 1923 |
1940 gtk_box_pack_start(GTK_BOX(bbox), add, FALSE, FALSE, 5); | 1924 gtk_box_pack_start(GTK_BOX(bbox), add, FALSE, FALSE, 5); |
1941 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 5); | 1925 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 5); |
1942 | 1926 |
1943 label = gtk_label_new(_("Add")); | 1927 label = gtk_label_new(_("Add")); |
1944 gtk_widget_show(label); | 1928 gtk_widget_show(label); |
1945 gtk_box_pack_start(GTK_BOX(topbox), label, FALSE, FALSE, 5); | 1929 gtk_box_pack_start(GTK_BOX(topbox), label, FALSE, FALSE, 5); |
1946 gtk_box_pack_start(GTK_BOX(topbox), p->entry, FALSE, FALSE, 5); | 1930 gtk_box_pack_start(GTK_BOX(topbox), p->entry, FALSE, FALSE, 5); |
1947 gtk_box_pack_start(GTK_BOX(topbox), rbox, FALSE, FALSE, 5); | |
1948 /* And the boxes in the box */ | 1931 /* And the boxes in the box */ |
1949 gtk_box_pack_start(GTK_BOX(vbox), topbox, TRUE, TRUE, 5); | 1932 gtk_box_pack_start(GTK_BOX(vbox), topbox, TRUE, TRUE, 5); |
1950 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 5); | 1933 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 5); |
1951 gtk_container_add(GTK_CONTAINER(frame), vbox); | 1934 gtk_container_add(GTK_CONTAINER(frame), vbox); |
1952 | 1935 |
1953 | 1936 |
1954 p->buttons = gtk_radio_button_group(GTK_RADIO_BUTTON(which)); | |
1955 /* Handle closes right */ | 1937 /* Handle closes right */ |
1956 gtk_signal_connect(GTK_OBJECT(p->window), "destroy", | 1938 gtk_signal_connect(GTK_OBJECT(p->window), "destroy", |
1957 GTK_SIGNAL_FUNC(destroy_dialog), p->window); | 1939 GTK_SIGNAL_FUNC(destroy_dialog), p->window); |
1958 gtk_signal_connect(GTK_OBJECT(cancel), "clicked", | 1940 gtk_signal_connect(GTK_OBJECT(cancel), "clicked", |
1959 GTK_SIGNAL_FUNC(destroy_dialog), p->window); | 1941 GTK_SIGNAL_FUNC(destroy_dialog), p->window); |
1967 gtk_widget_show(cancel); | 1949 gtk_widget_show(cancel); |
1968 gtk_widget_show(p->entry); | 1950 gtk_widget_show(p->entry); |
1969 gtk_widget_show(topbox); | 1951 gtk_widget_show(topbox); |
1970 gtk_widget_show(bbox); | 1952 gtk_widget_show(bbox); |
1971 gtk_widget_show(vbox); | 1953 gtk_widget_show(vbox); |
1972 gtk_widget_show(rbox); | |
1973 gtk_widget_show(frame); | 1954 gtk_widget_show(frame); |
1974 gtk_window_set_title(GTK_WINDOW(p->window), _("Gaim - Add Permit/Deny")); | 1955 if (permit) |
1956 gtk_window_set_title(GTK_WINDOW(p->window), _("Gaim - Add Permit")); | |
1957 else | |
1958 gtk_window_set_title(GTK_WINDOW(p->window), _("Gaim - Add Deny")); | |
1975 gtk_window_set_focus(GTK_WINDOW(p->window), p->entry); | 1959 gtk_window_set_focus(GTK_WINDOW(p->window), p->entry); |
1976 gtk_container_add(GTK_CONTAINER(p->window), frame); | 1960 gtk_container_add(GTK_CONTAINER(p->window), frame); |
1977 gtk_widget_realize(p->window); | 1961 gtk_widget_realize(p->window); |
1978 aol_icon(p->window->window); | 1962 aol_icon(p->window->window); |
1979 | 1963 |