| 569 |
569 |
| 570 GaimSavedStatus * |
570 GaimSavedStatus * |
| 571 gaim_savedstatus_get_current() |
571 gaim_savedstatus_get_current() |
| 572 { |
572 { |
| 573 int creation_time; |
573 int creation_time; |
| 574 GaimSavedStatus *saved_status; |
574 GaimSavedStatus *saved_status = NULL; |
| 575 |
575 |
| 576 creation_time = gaim_prefs_get_int("/core/savedstatus/current"); |
576 creation_time = gaim_prefs_get_int("/core/savedstatus/current"); |
| 577 |
577 |
| 578 if (creation_time == 0) |
578 if (creation_time != 0) |
| |
579 saved_status = g_hash_table_lookup(creation_times, &creation_time); |
| |
580 |
| |
581 if (saved_status == NULL) |
| 579 { |
582 { |
| 580 /* |
583 /* |
| 581 * We don't have a current saved statuses! This is either a new |
584 * We don't have a current saved statuses! This is either a new |
| 582 * Gaim user or someone upgrading from Gaim 1.5.0 or older. Add |
585 * Gaim user or someone upgrading from Gaim 1.5.0 or older, or |
| 583 * a default status. |
586 * possibly someone who deleted the status they were currently |
| |
587 * using? In any case, add a default status. |
| 584 */ |
588 */ |
| 585 saved_status = gaim_savedstatus_new(NULL, GAIM_STATUS_AVAILABLE); |
589 saved_status = gaim_savedstatus_new(NULL, GAIM_STATUS_AVAILABLE); |
| 586 gaim_savedstatus_set_message(saved_status, _("Hello!")); |
590 gaim_savedstatus_set_message(saved_status, _("Hello!")); |
| 587 } |
|
| 588 else |
|
| 589 { |
|
| 590 saved_status = g_hash_table_lookup(creation_times, &creation_time); |
|
| 591 } |
591 } |
| 592 |
592 |
| 593 return saved_status; |
593 return saved_status; |
| 594 } |
594 } |
| 595 |
595 |
| 638 } |
638 } |
| 639 |
639 |
| 640 gboolean |
640 gboolean |
| 641 gaim_savedstatus_is_transient(const GaimSavedStatus *saved_status) |
641 gaim_savedstatus_is_transient(const GaimSavedStatus *saved_status) |
| 642 { |
642 { |
| |
643 g_return_val_if_fail(saved_status != NULL, TRUE); |
| |
644 |
| 643 return (saved_status->title == NULL); |
645 return (saved_status->title == NULL); |
| 644 } |
646 } |
| 645 |
647 |
| 646 const char * |
648 const char * |
| 647 gaim_savedstatus_get_title(const GaimSavedStatus *saved_status) |
649 gaim_savedstatus_get_title(const GaimSavedStatus *saved_status) |
| 648 { |
650 { |
| |
651 g_return_val_if_fail(saved_status != NULL, NULL); |
| |
652 |
| 649 return saved_status->title; |
653 return saved_status->title; |
| 650 } |
654 } |
| 651 |
655 |
| 652 GaimStatusPrimitive |
656 GaimStatusPrimitive |
| 653 gaim_savedstatus_get_type(const GaimSavedStatus *saved_status) |
657 gaim_savedstatus_get_type(const GaimSavedStatus *saved_status) |
| 654 { |
658 { |
| |
659 g_return_val_if_fail(saved_status != NULL, GAIM_STATUS_OFFLINE); |
| |
660 |
| 655 return saved_status->type; |
661 return saved_status->type; |
| 656 } |
662 } |
| 657 |
663 |
| 658 const char * |
664 const char * |
| 659 gaim_savedstatus_get_message(const GaimSavedStatus *saved_status) |
665 gaim_savedstatus_get_message(const GaimSavedStatus *saved_status) |
| 660 { |
666 { |
| |
667 g_return_val_if_fail(saved_status != NULL, NULL); |
| |
668 |
| 661 return saved_status->message; |
669 return saved_status->message; |
| 662 } |
670 } |
| 663 |
671 |
| 664 time_t |
672 time_t |
| 665 gaim_savedstatus_get_creation_time(const GaimSavedStatus *saved_status) |
673 gaim_savedstatus_get_creation_time(const GaimSavedStatus *saved_status) |
| 666 { |
674 { |
| |
675 g_return_val_if_fail(saved_status != NULL, 0); |
| |
676 |
| 667 return saved_status->creation_time; |
677 return saved_status->creation_time; |
| 668 } |
678 } |
| 669 |
679 |
| 670 gboolean |
680 gboolean |
| 671 gaim_savedstatus_has_substatuses(const GaimSavedStatus *saved_status) |
681 gaim_savedstatus_has_substatuses(const GaimSavedStatus *saved_status) |
| 672 { |
682 { |
| |
683 g_return_val_if_fail(saved_status != NULL, FALSE); |
| |
684 |
| 673 return (saved_status->substatuses != NULL); |
685 return (saved_status->substatuses != NULL); |
| 674 } |
686 } |
| 675 |
687 |
| 676 GaimSavedStatusSub * |
688 GaimSavedStatusSub * |
| 677 gaim_savedstatus_get_substatus(const GaimSavedStatus *saved_status, |
689 gaim_savedstatus_get_substatus(const GaimSavedStatus *saved_status, |