ui/common/args.c

changeset 632
8cce45a85942
parent 620
174c11734dad
child 636
4630ddf7a20c
equal deleted inserted replaced
631:5d745e140ee7 632:8cce45a85942
699 free((void*)args->varname); 699 free((void*)args->varname);
700 free((void*)args->groups); 700 free((void*)args->groups);
701 free(args); 701 free(args);
702 } 702 }
703 703
704
705 /* ------------------------- UiListArgs ----------------------------*/
706
707 UiListArgs* ui_list_args_new(void) {
708 UiListArgs *args = malloc(sizeof(UiListArgs));
709 memset(args, 0, sizeof(UiListArgs));
710 return args;
711 }
712
713 void ui_list_args_set_fill(UiListArgs *args, UiBool fill) {
714 args->fill = fill ? UI_ON : UI_OFF;
715 }
716
717 void ui_list_args_set_hexpand(UiListArgs *args, UiBool value) {
718 args->hexpand = value;
719 }
720
721 void ui_list_args_set_vexpand(UiListArgs *args, UiBool value) {
722 args->vexpand = value;
723 }
724
725 void ui_list_args_set_hfill(UiListArgs *args, UiBool value) {
726 args->hfill = value;
727 }
728
729 void ui_list_args_set_vfill(UiListArgs *args, UiBool value) {
730 args->vfill = value;
731 }
732
733 void ui_list_args_set_override_defaults(UiListArgs *args, UiBool value) {
734 args->override_defaults = value;
735 }
736
737 void ui_list_args_set_colspan(UiListArgs *args, int colspan) {
738 args->colspan = colspan;
739 }
740
741 void ui_list_args_set_rowspan(UiListArgs *args, int rowspan) {
742 args->rowspan = rowspan;
743 }
744
745 void ui_list_args_set_name(UiListArgs *args, const char *name) {
746 args->name = strdup(name);
747 }
748
749 void ui_list_args_set_style_class(UiListArgs *args, const char *classname) {
750 args->style_class = classname;
751 }
752
753 void ui_list_args_set_varname(UiListArgs *args, const char *varname) {
754 args->varname = strdup(varname);
755 }
756
757 void ui_list_args_set_value(UiListArgs *args, UiList *value) {
758 args->list = value;
759 }
760
761 void ui_list_args_set_model(UiListArgs *args, UiModel *model) {
762 args->model = model;
763 }
764
765 void ui_list_args_set_static_elements(UiListArgs *args, char **strarray, size_t nelm) {
766 char **array = calloc(nelm, sizeof(char*));
767 for(int i=0;i<nelm;i++) {
768 array[i] = strdup(strarray[i]);
769 }
770 args->static_elements = array;
771 args->static_nelm = nelm;
772 }
773
774 void ui_list_args_set_getvalue_func(UiListArgs *args, ui_getvaluefunc getvalue) {
775 args->getvalue = getvalue;
776 }
777
778 void ui_list_args_set_onactivate(UiListArgs *args, ui_callback callback) {
779 args->onactivate = callback;
780 }
781
782 void ui_list_args_set_onactivatedata(UiListArgs *args, void *userdata) {
783 args->onactivatedata = userdata;
784 }
785
786 void ui_list_args_set_onselection(UiListArgs *args, ui_callback callback) {
787 args->onselection = callback;
788 }
789
790 void ui_list_args_set_onselectiondata(UiListArgs *args, void *userdata) {
791 args->onselectiondata = userdata;
792 }
793
794 void ui_list_args_set_ondragstart(UiListArgs *args, ui_callback callback) {
795 args->ondragstart = callback;
796 }
797
798 void ui_list_args_set_ondragstartdata(UiListArgs *args, void *userdata) {
799 args->ondragstartdata = userdata;
800 }
801
802 void ui_list_args_set_ondragcomplete(UiListArgs *args, ui_callback callback) {
803 args->ondragcomplete = callback;
804 }
805
806 void ui_list_args_set_ondragcompletedata(UiListArgs *args, void *userdata) {
807 args->ondragcompletedata = userdata;
808 }
809
810 void ui_list_args_set_ondrop(UiListArgs *args, ui_callback callback) {
811 args->ondrop = callback;
812 }
813
814 void ui_list_args_set_ondropdata(UiListArgs *args, void *userdata) {
815 args->ondropdata = userdata;
816 }
817
818 void ui_list_args_set_multiselection(UiListArgs *args, UiBool multiselection) {
819 args->multiselection = multiselection;
820 }
821
822 void ui_list_args_set_contextmenu(UiListArgs *args, UiMenuBuilder *menubuilder) {
823 args->contextmenu = menubuilder;
824 }
825
826 void ui_list_args_set_groups(UiListArgs *args, int *groups) {
827 // TODO
828 }
829
830 void ui_list_args_free(UiListArgs *args) {
831 free((void*)args->name);
832 free((void*)args->style_class);
833 free((void*)args->varname);
834 if(args->static_elements) {
835 for(int i=0;i<args->static_nelm;i++) {
836 free(args->static_elements[i]);
837 }
838 free(args->static_elements);
839 }
840 free(args);
841 }
842

mercurial