diff options
Diffstat (limited to 'src/widget/mf-ug-genlist.c')
-rw-r--r-- | src/widget/mf-ug-genlist.c | 103 |
1 files changed, 37 insertions, 66 deletions
diff --git a/src/widget/mf-ug-genlist.c b/src/widget/mf-ug-genlist.c index a774bcb..504e881 100644 --- a/src/widget/mf-ug-genlist.c +++ b/src/widget/mf-ug-genlist.c @@ -278,49 +278,10 @@ static void __mf_ug_genlist_checkbox_cb(void *data, Evas_Object *obj, void *even if (itemData->ug_pData->ug_UiGadget.ug_iMarkedMode == MARKED_ON) { __mf_ug_genlist_set_marked_path(&itemData->ug_pData->ug_UiGadget.ug_pMultiSelectFileList, itemData->ug_pItemName); } - - struct stat stFileInfo; if (itemData->ug_bChecked) { ugd->ug_Status.ug_iCheckedCount++; - stat(itemData->ug_pItemName->str, &stFileInfo); - if (ugd->limitsize > 0 && ugd->selsize + stFileInfo.st_size > ugd->limitsize) { - char *noti = NULL; - noti = g_strdup_printf(mf_ug_widget_get_text(MF_UG_LABEL_MAXIMUM_SIZE)); - mf_ug_popup_indicator_popup(noti); - if (itemData->ug_bChecked == 0) { - itemData->ug_bChecked = 1; - } else { - itemData->ug_bChecked = 0; - } - elm_check_state_set(itemData->ug_pCheckBox, itemData->ug_bChecked); - UG_SAFE_FREE_CHAR(noti); - return; - } - ugd->selsize += stFileInfo.st_size; } else { ugd->ug_Status.ug_iCheckedCount--; - stat(itemData->ug_pItemName->str, &stFileInfo); - ugd->selsize = ugd->selsize - stFileInfo.st_size; - } - if (ugd->ug_Status.ug_iCheckedCount > ugd->ug_UiGadget.ug_iMaxLength) { - char *reach_string = mf_ug_widget_get_text(MF_UG_LABEL_REACH_MAX_SHARE_COUNT); - char *max_string = g_strdup_printf(reach_string, ugd->ug_UiGadget.ug_iMaxLength); - ug_error("max_string is [%s]", max_string); - /*UG_SAFE_FREE_CHAR(reach_string);*/ - mf_ug_popup_indicator_popup(max_string); - UG_SAFE_FREE_CHAR(max_string); - if (itemData->ug_bChecked == 0) { - itemData->ug_bChecked = 1; - } else { - itemData->ug_bChecked = 0; - } - if (itemData->ug_bChecked) { - ugd->ug_Status.ug_iCheckedCount++; - } else { - ugd->ug_Status.ug_iCheckedCount--; - } - elm_check_state_set(itemData->ug_pCheckBox, itemData->ug_bChecked); - return; } ugd->ug_Status.ug_iTotalCount = eina_list_count(ugd->ug_UiGadget.ug_pFilterList); if (ugd->ug_Status.ug_iTotalCount == ugd->ug_Status.ug_iCheckedCount) { @@ -335,6 +296,25 @@ static void __mf_ug_genlist_checkbox_cb(void *data, Evas_Object *obj, void *even } ug_error("========= ugd->ug_Status.ug_iCheckedCount is [%d]", ugd->ug_Status.ug_iCheckedCount); + if (ugd->ug_Status.ug_iCheckedCount > ugd->ug_UiGadget.ug_iMaxLength) { + char *reach_string = mf_ug_widget_get_text(MF_UG_LABEL_REACH_MAX_SHARE_COUNT); + char *max_string = g_strdup_printf(reach_string, ugd->ug_UiGadget.ug_iMaxLength); + ug_error("max_string is [%s]", max_string); + /*UG_SAFE_FREE_CHAR(reach_string);*/ + mf_ug_popup_indicator_popup(max_string); + UG_SAFE_FREE_CHAR(max_string); + if (itemData->ug_bChecked == 0) { + itemData->ug_bChecked = 1; + } else { + itemData->ug_bChecked = 0; + } + if (itemData->ug_bChecked) { + ugd->ug_Status.ug_iCheckedCount++; + } else { + ugd->ug_Status.ug_iCheckedCount--; + } + elm_check_state_set(itemData->ug_pCheckBox, itemData->ug_bChecked); + } mf_ug_genlist_show_select_info(ugd); mf_ug_navi_bar_set_ctrl_item_disable(itemData->ug_pData); @@ -983,15 +963,19 @@ static Evas_Object *__mf_ug_genlist_get_gl_icon(void *data, Evas_Object *obj, co selected_box = __mf_ug_genlist_add_radio_box(listItemData, obj); } } else { +#if 1 + printf("============================== checkbox\n"); + selected_box = __mf_ug_genlist_add_checkbox(listItemData, obj); +#else if (mf_ug_util_is_multi_select_mode(ugd->ug_UiGadget.ug_iSelectMode)) { printf("============================== checkbox\n"); selected_box = __mf_ug_genlist_add_checkbox(listItemData, obj); - printf("==============================checkbox[%p] listItemData is [%s]\n", selected_box, listItemData->ug_pItemName->str); } else if (mf_ug_util_is_single_select_mode(ugd->ug_UiGadget.ug_iSelectMode)) { printf("==============================radiobox\n"); selected_box = __mf_ug_genlist_add_radio_box(listItemData, obj); - printf("==============================radiobox[%p] listItemData is [%s]\n", selected_box, listItemData->ug_pItemName->str); + printf("==============================checkbox[%p] listItemData is [%s]\n", selected_box, listItemData->ug_pItemName->str); } +#endif } evas_object_propagate_events_set(selected_box, EINA_FALSE); layout = elm_layout_add(obj); @@ -1237,6 +1221,7 @@ void mf_ug_genlist_sel(void *data) if (ugd->ug_UiGadget.ug_iSelectMode == EXPORT_MODE || ugd->ug_UiGadget.ug_iSelectMode == SAVE_MODE) { return; } +#if 0 if (mf_ug_util_is_single_select_mode(ugd->ug_UiGadget.ug_iSelectMode)) { if (elm_radio_value_get(ugd->ug_MainWindow.ug_pRadioGroup) != selected->ug_iGroupValue) { @@ -1279,42 +1264,21 @@ void mf_ug_genlist_sel(void *data) //mf_ug_cb_list_play_cb(selected, NULL, NULL); } */ +#endif if (selected->ug_bChecked == 0) { selected->ug_bChecked = 1; } else { selected->ug_bChecked = 0; } - struct stat stFileInfo; - stat(selected->ug_pItemName->str, &stFileInfo); if (selected->ug_bChecked) { ugd->ug_Status.ug_iCheckedCount++; - if (ugd->limitsize > 0 && ugd->selsize + stFileInfo.st_size > ugd->limitsize) { - char *noti = NULL; - noti = g_strdup_printf(mf_ug_widget_get_text(MF_UG_LABEL_MAXIMUM_SIZE)); - mf_ug_popup_indicator_popup(noti); - if (selected->ug_bChecked == 0) { - selected->ug_bChecked = 1; - } else { - selected->ug_bChecked = 0; - } - UG_SAFE_FREE_CHAR(noti); - return; - } - ugd->selsize += stFileInfo.st_size; } else { ugd->ug_Status.ug_iCheckedCount--; - ugd->selsize -= stFileInfo.st_size; } ug_error("========= ugd->ug_Status.ug_iCheckedCount is [%d]", ugd->ug_Status.ug_iCheckedCount); if (ugd->ug_Status.ug_iCheckedCount > ugd->ug_UiGadget.ug_iMaxLength) { ug_error(); - char *reach_string = mf_ug_widget_get_text(MF_UG_LABEL_REACH_MAX_SHARE_COUNT); - char *max_string = g_strdup_printf(reach_string, ugd->ug_UiGadget.ug_iMaxLength); - /*UG_SAFE_FREE_CHAR(reach_string);*/ - ug_error("max_string is [%s]", max_string); - mf_ug_popup_indicator_popup(max_string); - UG_SAFE_FREE_CHAR(max_string); if (selected->ug_bChecked == 0) { selected->ug_bChecked = 1; } else { @@ -1325,6 +1289,12 @@ void mf_ug_genlist_sel(void *data) } else { ugd->ug_Status.ug_iCheckedCount--; } + char *reach_string = mf_ug_widget_get_text(MF_UG_LABEL_REACH_MAX_SHARE_COUNT); + char *max_string = g_strdup_printf(reach_string, ugd->ug_UiGadget.ug_iMaxLength); + /*UG_SAFE_FREE_CHAR(reach_string);*/ + ug_error("max_string is [%s]", max_string); + mf_ug_popup_indicator_popup(max_string); + UG_SAFE_FREE_CHAR(max_string); return; } else { ug_error(); @@ -1342,7 +1312,7 @@ void mf_ug_genlist_sel(void *data) elm_check_state_set(ugd->ug_MainWindow.ug_pSelectAllCheckBox, 0); } mf_ug_genlist_show_select_info(ugd); - } +// } } else if (mf_is_dir(selected->ug_pItemName->str)) { if (ugd->ug_ListPlay.ug_iPlayState == PLAY_STATE_PLAYING || ugd->ug_ListPlay.ug_iPlayState == PLAY_STATE_PAUSED) { mf_ug_list_play_destory_playing_file(ugd); @@ -2018,7 +1988,6 @@ Evas_Object *mf_ug_genlist_create_content_list_view(void *data) ugd->ug_Status.ug_bNoContentFlag = false; GString *fullpath = g_string_new(ugd->ug_Status.ug_pPath->str); - if (ugd->ug_Status.ug_iViewType == mf_ug_view_root && ugd->ug_Status.ug_iMore != UG_MORE_SEARCH) { mf_ug_util_generate_root_view_file_list(&dir_list, ugd->ug_Status.ug_iMmcFlag); ugd->ug_UiGadget.ug_pDirList = dir_list; @@ -2109,14 +2078,16 @@ Evas_Object *mf_ug_genlist_create_content_list_view(void *data) continue; } count++; +#if 0 if (ugd->ug_UiGadget.ug_iSelectMode == SINGLE_ALL_MODE || ugd->ug_UiGadget.ug_iSelectMode == SINGLE_FILE_MODE) { mf_ug_genlist_item_append(genlist, real_name, ugd, groupValue, &ugd->ug_Status.ug_1text3icon_itc); groupValue++; } else if (ugd->ug_UiGadget.ug_iSelectMode == EXPORT_MODE || ugd->ug_UiGadget.ug_iSelectMode == SAVE_MODE) { mf_ug_genlist_item_append(genlist, real_name, ugd, 0, &ugd->ug_Status.ug_1text1icon_itc); } else { +#endif mf_ug_genlist_item_append(genlist, real_name, ugd, 0, &ugd->ug_Status.ug_1text3icon_itc); - } +// } UG_SAFE_FREE_CHAR(real_name); } |