diff options
Diffstat (limited to 'main/src/view/ivug-crop-view.cpp')
-rwxr-xr-x | main/src/view/ivug-crop-view.cpp | 57 |
1 files changed, 38 insertions, 19 deletions
diff --git a/main/src/view/ivug-crop-view.cpp b/main/src/view/ivug-crop-view.cpp index 49411d0..7e18817 100755 --- a/main/src/view/ivug-crop-view.cpp +++ b/main/src/view/ivug-crop-view.cpp @@ -32,7 +32,13 @@ #undef LOG_CAT #define LOG_CAT "IV-CROP" -#define EDJ_PATH PREFIX"/res/edje/"PACKAGE +#define EDJ_PATH PREFIX"/res/edje/"PACKAGE
+
+#define CROP_EDJ_FILE EDJ_PATH"/ivug-crop-view.edj"
+
+#define CONTROL_ICON_DIRECTORY_PATH IMAGE_PATH"/01_Control icon"
+#define ICON_PATH_SAVE CONTROL_ICON_DIRECTORY_PATH"/T01_controlbar_icon_save.png"
+#define ICON_PATH_PREV CONTROL_ICON_DIRECTORY_PATH"/00_winset_btn_prev.png"
static void _on_layout_resized(void *data, Evas *e, Evas_Object *obj, void *event_info) { @@ -123,7 +129,7 @@ static Eina_Bool _on_crop_timer_expired(void *data) pCropView->timer = NULL;
- elm_object_disabled_set(pCropView->btn_ok, EINA_FALSE);
+ elm_object_item_disabled_set(pCropView->btn_ok, EINA_FALSE);
MSG_HIGH("Image preloaded");
@@ -362,13 +368,12 @@ IvugCropView *ivug_crop_view_create(Evas_Object *parent) Evas_Object *layout; - layout = EFL::create_layout(parent, EDJ_PATH"/ivug-crop-view.edj", "crop_view"); + layout = EFL::create_layout(parent, CROP_EDJ_FILE, "crop_view");
if ( layout == NULL ) { MSG_ERROR("Cannot create crop view"); - delete pCropView; - + free(pCropView);
return NULL; } @@ -391,24 +396,35 @@ IvugCropView *ivug_crop_view_create(Evas_Object *parent) elm_object_part_content_set(layout, "scissorbox", pCropView->cropbox); -// Create button - Evas_Object *btn = NULL; - - btn = EFL::create_button(layout, "btn_style1", NULL, IDS_SAVE); - evas_object_smart_callback_add(btn, "clicked", _on_btn_save, (void *)pCropView); - elm_object_part_content_set(layout, "btn.save", btn);
+ Evas_Object *controlbar = ivug_controlbar_add(pCropView->layout, "default");
+ Elm_Object_Item *item[4];
- pCropView->btn_ok = btn;
- - btn = EFL::create_button(layout, "btn_style1", NULL, IDS_CANCEL); - evas_object_smart_callback_add(btn, "clicked", _on_btn_cancel, (void *)pCropView); - elm_object_part_content_set(layout, "btn.cancel", btn); + item[0] = elm_toolbar_item_append(controlbar, ICON_PATH_SAVE, NULL, _on_btn_save, (void *)pCropView);
+ item[1] = elm_toolbar_item_append(controlbar, NULL, NULL, NULL, NULL);
+ item[2] = elm_toolbar_item_append(controlbar, NULL, NULL, NULL, NULL);
+ item[3] = elm_toolbar_item_append(controlbar, ICON_PATH_PREV, NULL, _on_btn_cancel, (void *)pCropView);
+
+ pCropView->btn_layout = ivug_layout_add(pCropView->layout , CROP_EDJ_FILE, "crop_view_btn");
+ if ( pCropView->btn_layout == NULL )
+ {
+ MSG_SETAS_ERROR("Cannot create btn_layout.");
+ evas_object_del(pCropView->layout);
+ free(pCropView);
+ return NULL;
+ }
+
+ pCropView->btn_ok = item[0];
+ elm_object_item_disabled_set(pCropView->btn_ok, EINA_TRUE);
+
+ elm_object_part_content_set(pCropView->btn_layout, "controlbar", controlbar);
+
+ evas_object_smart_member_add(pCropView->btn_layout, pCropView->layout);
+
+ evas_object_show(pCropView->btn_layout);
MSG_HIGH("Create CropView"); evas_object_smart_callback_add(layout, "test", _on_test, NULL);
-
- elm_object_disabled_set(pCropView->btn_ok, EINA_TRUE);
elm_win_resize_object_add(gGetCurrentWindow(), layout); @@ -475,7 +491,10 @@ void ivug_crop_view_destroy(IvugCropView *pCropView) free(pCropView->file_path); if ( pCropView->result_path) - free(pCropView->result_path); + free(pCropView->result_path);
+
+ if ( pCropView->btn_layout )
+ evas_object_del(pCropView->btn_layout);
if ( pCropView->layout ) evas_object_del(pCropView->layout); |