summaryrefslogtreecommitdiff
path: root/main/src/view/ivug-main-view.h
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/view/ivug-main-view.h')
-rwxr-xr-xmain/src/view/ivug-main-view.h133
1 files changed, 133 insertions, 0 deletions
diff --git a/main/src/view/ivug-main-view.h b/main/src/view/ivug-main-view.h
new file mode 100755
index 0000000..7d1a648
--- /dev/null
+++ b/main/src/view/ivug-main-view.h
@@ -0,0 +1,133 @@
+/*
+ * Copyright 2012 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.tizenopensource.org/license
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+#ifndef __IVUG_MAIN_VIEWER_H__
+#define __IVUG_MAIN_VIEWER_H__
+
+#include "ivug-common.h"
+#include "ivug-details-view.h"
+#include "ivug-setas-view.h"
+
+#define MAX_CTRL_ITEM_CNT 5
+#define MAX_NAVI_ITEM_CNT 3
+
+//navigation bar type
+typedef enum NAVI_BAR_TYPE {
+ NAVI_BAR_TYPE_NONE = 0x00,
+ NAVI_BAR_TYPE_EMPTY, // no control bar
+ NAVI_BAR_TYPE_IMAGE, // no control bar
+ NAVI_BAR_TYPE_VIDEO, // no control bar
+ NAVI_BAR_TYPE_SELECT, // [Ok, Cancel] from take photo
+} _navi_bar_type;
+
+//control bar type
+typedef enum CTRL_BAR_TYPE{
+ CTRL_BAR_TYPE_NONE = 0x00,
+ CTRL_BAR_TYPE_EMPTY, // not exist ctrl bar
+ CTRL_BAR_TYPE_FILE, // [Delete,Info] file manager, video at gallery
+ CTRL_BAR_TYPE_CAMERA_IMAGE, // [Delete,Info] camera image file
+ CTRL_BAR_TYPE_CAMERA_VIDEO, // [Delete,Info] camera video file
+ CTRL_BAR_TYPE_IMAGE, // [Delete,Slide show, Info] from gallery
+ CTRL_BAR_TYPE_VIDEO, // [Delete,Slide show, Info] from gallery
+} _ctrl_bar_type;
+
+
+typedef struct {
+ Evas_Object *parent;
+
+ Evas_Object *layout; /*Layout widget based on EDJ*/
+
+ Evas_Object *navi_bar;
+ Elm_Object_Item *navi_it;
+ Evas_Object* empty_layout; //navigation bar contents layout
+ Evas_Object* slider; //image viewer slider
+ Evas_Object* event_blocker;
+
+ Evas_Object* selectioninfo;
+
+ Evas_Object *back_btn;
+
+/*
+ |-------------------|
+ |naviframe(tool_bar)|
+ |-------------------|
+ | |
+ | |
+ | |
+ | |
+ |-------------------|
+ | ctrl_bar |
+ |-------------------|
+*/
+
+// Tool Bar
+ enum NAVI_BAR_TYPE tool_bar_type;
+ Evas_Object* tool_bar_item[MAX_NAVI_ITEM_CNT]; // Control bar item in navigation header. ex) SetAs, Info
+
+// Control Bar
+ Evas_Object *ctrl_bar;
+ enum CTRL_BAR_TYPE ctrl_bar_type;
+ Elm_Object_Item *ctrl_bar_item[MAX_CTRL_ITEM_CNT]; // Bottom control bar item. ex) Delete, etc...
+
+ Evas_Object* popup; //popup
+ Evas_Object* copy_popup; //copy popup
+ Eina_List* popup_list;
+
+ Ivug_SetAsView *pSetAsView;
+
+ Ivug_DetailsView *pDetailsView;
+
+ Evas_Object *btn_detail;
+ Evas_Object *btn_detail_data;
+
+//flag
+ bool bShowMenu;
+
+ ivug_mode mode;
+ ivug_view_by view_by;
+
+ struct ui_gadget *ext_ug;
+
+ struct ui_gadget *ugHandle;
+
+ Ecore_Event_Handler *keydown_handler;
+
+ Ecore_Timer *exit_timer;
+
+ Eina_Bool option_show;
+} Ivug_MainView;
+
+
+/*
+ Create MainView layout
+*/
+Ivug_MainView *
+ivug_main_view_create(Evas_Object* parent, ivug_mode mode, ivug_view_by view_by);
+
+Evas_Object *
+ivug_main_view_object_get(Ivug_MainView *pMainView);
+
+/*
+ Load media list from parameter.
+*/
+bool ivug_main_view_load_list(Ivug_MainView *pMainView, ivug_parameter* ivug_param);
+
+void ivug_main_view_update(Ivug_MainView *pMainView);
+
+void ivug_main_view_destroy(Ivug_MainView *pMainView);
+
+#endif //__IVUG_MAIN_VIEWER_H__