Mercurial > pidgin
comparison libpurple/protocols/jabber/disco.c @ 26253:290ea90869c0
Use purple_request_input
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Mon, 30 Mar 2009 02:36:02 +0000 |
parents | 535c866b433c |
children | c619bef09bec |
comparison
equal
deleted
inserted
replaced
26252:535c866b433c | 26253:290ea90869c0 |
---|---|
922 } | 922 } |
923 | 923 |
924 void | 924 void |
925 jabber_disco_get_list(PurpleConnection *gc, PurpleDiscoList *list) | 925 jabber_disco_get_list(PurpleConnection *gc, PurpleDiscoList *list) |
926 { | 926 { |
927 PurpleRequestFields *fields; | 927 PurpleAccount *account; |
928 PurpleRequestFieldGroup *g; | |
929 PurpleRequestField *f; | |
930 JabberStream *js; | 928 JabberStream *js; |
931 struct jabber_disco_list_data *disco_list_data; | 929 struct jabber_disco_list_data *disco_list_data; |
932 const char *last_server; | 930 |
933 | 931 account = purple_connection_get_account(gc); |
934 purple_debug_misc("disco.c", "get_list\n"); | |
935 | |
936 js = purple_connection_get_protocol_data(gc); | 932 js = purple_connection_get_protocol_data(gc); |
937 | 933 |
938 disco_list_data = g_new0(struct jabber_disco_list_data, 1); | 934 disco_list_data = g_new0(struct jabber_disco_list_data, 1); |
939 purple_disco_list_set_protocol_data(list, disco_list_data); | 935 purple_disco_list_set_protocol_data(list, disco_list_data); |
940 | 936 |
941 last_server = js->last_disco_server; | |
942 if (last_server == NULL) | |
943 last_server = js->user->domain; | |
944 | |
945 fields = purple_request_fields_new(); | |
946 g = purple_request_field_group_new(NULL); | |
947 f = purple_request_field_string_new("server", _("Server"), | |
948 last_server ? last_server : js->user->domain, FALSE); | |
949 | |
950 purple_request_field_group_add_field(g, f); | |
951 purple_request_fields_add_group(fields, g); | |
952 | |
953 purple_disco_list_ref(list); | 937 purple_disco_list_ref(list); |
954 | 938 |
955 purple_request_fields(gc, | 939 purple_request_input(gc, _("Server name request"), _("Enter an XMPP Server"), |
956 _("Server name request"), | 940 _("Select an XMPP server to query"), |
957 _("Enter server name"), | 941 js->last_disco_server ? js->last_disco_server : js->user->domain, |
958 NULL, | 942 FALSE, FALSE, NULL, |
959 fields, | 943 _("Find Services"), PURPLE_CALLBACK(jabber_disco_server_cb), |
960 _("OK"), G_CALLBACK(jabber_disco_server_cb), | 944 _("Cancel"), PURPLE_CALLBACK(jabber_disco_cancel), |
961 _("Cancel"), G_CALLBACK(jabber_disco_cancel), | 945 account, NULL, NULL, disco_list_data); |
962 purple_connection_get_account(gc), NULL, NULL, list); | 946 |
963 } | 947 } |
964 | 948 |
965 void | 949 void |
966 jabber_disco_cancel(PurpleDiscoList *list) | 950 jabber_disco_cancel(PurpleDiscoList *list) |
967 { | 951 { |