Mercurial > pidgin
comparison finch/gntrequest.c @ 22217:ad357ca94de9
We will probably eventually use purple_object_[get|set]_ui_data. Until then, this will do.
| author | Sadrul Habib Chowdhury <imadil@gmail.com> |
|---|---|
| date | Sat, 26 Jan 2008 22:33:08 +0000 |
| parents | 6bb29f94862c |
| children | 1f256f63c52c |
comparison
equal
deleted
inserted
replaced
| 22216:b99d6d21cd79 | 22217:ad357ca94de9 |
|---|---|
| 306 { | 306 { |
| 307 PurpleRequestField *field = fields->data; | 307 PurpleRequestField *field = fields->data; |
| 308 PurpleRequestFieldType type = purple_request_field_get_type(field); | 308 PurpleRequestFieldType type = purple_request_field_get_type(field); |
| 309 if (type == PURPLE_REQUEST_FIELD_BOOLEAN) | 309 if (type == PURPLE_REQUEST_FIELD_BOOLEAN) |
| 310 { | 310 { |
| 311 GntWidget *check = field->ui_data; | 311 GntWidget *check = FINCH_GET_DATA(field); |
| 312 gboolean value = gnt_check_box_get_checked(GNT_CHECK_BOX(check)); | 312 gboolean value = gnt_check_box_get_checked(GNT_CHECK_BOX(check)); |
| 313 purple_request_field_bool_set_value(field, value); | 313 purple_request_field_bool_set_value(field, value); |
| 314 } | 314 } |
| 315 else if (type == PURPLE_REQUEST_FIELD_STRING) | 315 else if (type == PURPLE_REQUEST_FIELD_STRING) |
| 316 { | 316 { |
| 317 GntWidget *entry = field->ui_data; | 317 GntWidget *entry = FINCH_GET_DATA(field); |
| 318 const char *text = gnt_entry_get_text(GNT_ENTRY(entry)); | 318 const char *text = gnt_entry_get_text(GNT_ENTRY(entry)); |
| 319 purple_request_field_string_set_value(field, (text && *text) ? text : NULL); | 319 purple_request_field_string_set_value(field, (text && *text) ? text : NULL); |
| 320 } | 320 } |
| 321 else if (type == PURPLE_REQUEST_FIELD_INTEGER) | 321 else if (type == PURPLE_REQUEST_FIELD_INTEGER) |
| 322 { | 322 { |
| 323 GntWidget *entry = field->ui_data; | 323 GntWidget *entry = FINCH_GET_DATA(field); |
| 324 const char *text = gnt_entry_get_text(GNT_ENTRY(entry)); | 324 const char *text = gnt_entry_get_text(GNT_ENTRY(entry)); |
| 325 int value = (text && *text) ? atoi(text) : 0; | 325 int value = (text && *text) ? atoi(text) : 0; |
| 326 purple_request_field_int_set_value(field, value); | 326 purple_request_field_int_set_value(field, value); |
| 327 } | 327 } |
| 328 else if (type == PURPLE_REQUEST_FIELD_CHOICE) | 328 else if (type == PURPLE_REQUEST_FIELD_CHOICE) |
| 329 { | 329 { |
| 330 GntWidget *combo = field->ui_data; | 330 GntWidget *combo = FINCH_GET_DATA(field); |
| 331 int id; | 331 int id; |
| 332 id = GPOINTER_TO_INT(gnt_combo_box_get_selected_data(GNT_COMBO_BOX(combo))); | 332 id = GPOINTER_TO_INT(gnt_combo_box_get_selected_data(GNT_COMBO_BOX(combo))); |
| 333 purple_request_field_choice_set_value(field, id); | 333 purple_request_field_choice_set_value(field, id); |
| 334 } | 334 } |
| 335 else if (type == PURPLE_REQUEST_FIELD_LIST) | 335 else if (type == PURPLE_REQUEST_FIELD_LIST) |
| 336 { | 336 { |
| 337 GList *list = NULL; | 337 GList *list = NULL; |
| 338 if (purple_request_field_list_get_multi_select(field)) | 338 if (purple_request_field_list_get_multi_select(field)) |
| 339 { | 339 { |
| 340 GList *iter; | 340 GList *iter; |
| 341 GntWidget *tree = field->ui_data; | 341 GntWidget *tree = FINCH_GET_DATA(field); |
| 342 | 342 |
| 343 iter = purple_request_field_list_get_items(field); | 343 iter = purple_request_field_list_get_items(field); |
| 344 for (; iter; iter = iter->next) | 344 for (; iter; iter = iter->next) |
| 345 { | 345 { |
| 346 const char *text = iter->data; | 346 const char *text = iter->data; |
| 349 list = g_list_prepend(list, key); | 349 list = g_list_prepend(list, key); |
| 350 } | 350 } |
| 351 } | 351 } |
| 352 else | 352 else |
| 353 { | 353 { |
| 354 GntWidget *combo = field->ui_data; | 354 GntWidget *combo = FINCH_GET_DATA(field); |
| 355 gpointer data = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(combo)); | 355 gpointer data = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(combo)); |
| 356 list = g_list_append(list, data); | 356 list = g_list_append(list, data); |
| 357 } | 357 } |
| 358 | 358 |
| 359 purple_request_field_list_set_selected(field, list); | 359 purple_request_field_list_set_selected(field, list); |
| 360 g_list_free(list); | 360 g_list_free(list); |
| 361 } | 361 } |
| 362 else if (type == PURPLE_REQUEST_FIELD_ACCOUNT) | 362 else if (type == PURPLE_REQUEST_FIELD_ACCOUNT) |
| 363 { | 363 { |
| 364 GntWidget *combo = field->ui_data; | 364 GntWidget *combo = FINCH_GET_DATA(field); |
| 365 PurpleAccount *acc = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(combo)); | 365 PurpleAccount *acc = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(combo)); |
| 366 purple_request_field_account_set_value(field, acc); | 366 purple_request_field_account_set_value(field, acc); |
| 367 } | 367 } |
| 368 } | 368 } |
| 369 } | 369 } |
| 592 gnt_box_add_widget(GNT_BOX(hbox), l); | 592 gnt_box_add_widget(GNT_BOX(hbox), l); |
| 593 } | 593 } |
| 594 | 594 |
| 595 if (type == PURPLE_REQUEST_FIELD_BOOLEAN) | 595 if (type == PURPLE_REQUEST_FIELD_BOOLEAN) |
| 596 { | 596 { |
| 597 field->ui_data = create_boolean_field(field); | 597 FINCH_SET_DATA(field, create_boolean_field(field)); |
| 598 } | 598 } |
| 599 else if (type == PURPLE_REQUEST_FIELD_STRING) | 599 else if (type == PURPLE_REQUEST_FIELD_STRING) |
| 600 { | 600 { |
| 601 field->ui_data = create_string_field(field, &screenname); | 601 FINCH_SET_DATA(field, create_string_field(field, &screenname)); |
| 602 } | 602 } |
| 603 else if (type == PURPLE_REQUEST_FIELD_INTEGER) | 603 else if (type == PURPLE_REQUEST_FIELD_INTEGER) |
| 604 { | 604 { |
| 605 field->ui_data = create_integer_field(field); | 605 FINCH_SET_DATA(field, create_integer_field(field)); |
| 606 } | 606 } |
| 607 else if (type == PURPLE_REQUEST_FIELD_CHOICE) | 607 else if (type == PURPLE_REQUEST_FIELD_CHOICE) |
| 608 { | 608 { |
| 609 field->ui_data = create_choice_field(field); | 609 FINCH_SET_DATA(field, create_choice_field(field)); |
| 610 } | 610 } |
| 611 else if (type == PURPLE_REQUEST_FIELD_LIST) | 611 else if (type == PURPLE_REQUEST_FIELD_LIST) |
| 612 { | 612 { |
| 613 field->ui_data = create_list_field(field); | 613 FINCH_SET_DATA(field, create_list_field(field)); |
| 614 } | 614 } |
| 615 else if (type == PURPLE_REQUEST_FIELD_ACCOUNT) | 615 else if (type == PURPLE_REQUEST_FIELD_ACCOUNT) |
| 616 { | 616 { |
| 617 accountlist = field->ui_data = create_account_field(field); | 617 accountlist = FINCH_SET_DATA(field, create_account_field(field)); |
| 618 } | 618 } |
| 619 else | 619 else |
| 620 { | 620 { |
| 621 field->ui_data = gnt_label_new_with_format(_("Not implemented yet."), | 621 FINCH_SET_DATA(field, gnt_label_new_with_format(_("Not implemented yet."), |
| 622 GNT_TEXT_FLAG_BOLD); | 622 GNT_TEXT_FLAG_BOLD)); |
| 623 } | 623 } |
| 624 gnt_box_set_alignment(GNT_BOX(hbox), GNT_ALIGN_MID); | 624 gnt_box_set_alignment(GNT_BOX(hbox), GNT_ALIGN_MID); |
| 625 gnt_box_add_widget(GNT_BOX(hbox), GNT_WIDGET(field->ui_data)); | 625 gnt_box_add_widget(GNT_BOX(hbox), GNT_WIDGET(FINCH_GET_DATA(field))); |
| 626 } | 626 } |
| 627 if (grlist->next) | 627 if (grlist->next) |
| 628 gnt_box_add_widget(GNT_BOX(box), gnt_hline_new()); | 628 gnt_box_add_widget(GNT_BOX(box), gnt_hline_new()); |
| 629 } | 629 } |
| 630 gnt_box_add_widget(GNT_BOX(window), box); | 630 gnt_box_add_widget(GNT_BOX(window), box); |
