summaryrefslogtreecommitdiff
path: root/include/grid/grid.h
blob: e1fb94eb1c7fb557ff86ad315c099339472a295a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
/*
 * Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved
 *
 * Licensed under the Apache License, Version 2.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.apache.org/licenses/LICENSE-2.0
 *
 * 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 __AIR_MEDIAHUB_GRID_H__
#define __AIR_MEDIAHUB_GRID_H__

enum movie_grid_type {
	E_MOVIE_NAME = 0,
	E_MOVIE_GENRE,
	E_MOVIE_DATE,
	E_MOVIE_FOLDER,
	E_MOVIE_MAX
};

enum gallery_grid_type {
	E_GALLERY_EVENT,
	E_GALLERY_PLACE,
	E_GALLERY_VIDEO,
	E_GALLERY_FOLDER,
	E_GALLERY_MAX
};

enum music_grid_type {
	E_MUSIC_SONG,
	E_MUSIC_ALBUM,
	E_MUSIC_ARTIST,
	E_MUSIC_GENRE,
	E_MUSIC_FOLDER,
	E_MUSIC_MAX
};

struct grid_data {
	int item_x;
	int item_y;
	int item_num;
	int grid_padding;
	struct grid_class *gclass;
	void *data;
	Eina_List *(*get_item_list)(struct datamgr *dmgr);
	void (*free_item_list)(struct datamgr *dmgr, Eina_List *list);
	void (*key_down_cb)(void *data, Elm_Object_Item *it,
				Evas_Event_Key_Down *ev);
	void (*selected_cb)(void *data, Elm_Object_Item *it);
};

struct grid_data *get_movie_grid_data(int type);
struct grid_data *get_gallery_grid_data(int type);
struct grid_data *get_music_grid_data(int type);

#define STYLE_MOVIE_NAME "movie_item"
#define MOVIE_NAME_ITEM_PADDING 26
#define MOVIE_NAME_ITEM_X (378 + MOVIE_NAME_ITEM_PADDING)
#define MOVIE_NAME_ITEM_Y (294 + MOVIE_NAME_ITEM_PADDING)
#define MOVIE_NAME_ITEM_NUM 2
#define MOVIE_NAME_GRID_PADDING (62 - MOVIE_NAME_ITEM_PADDING)

/* Padding is modified as 7 to fit height with play info */
#define STYLE_GALLERY_EVENT "gallery_item"
#define GALLERY_EVENT_ITEM_PADDING 7
#define GALLERY_EVENT_ITEM_X (200 + GALLERY_EVENT_ITEM_PADDING)
#define GALLERY_EVENT_ITEM_Y (200 + GALLERY_EVENT_ITEM_PADDING)
#define GALLERY_EVENT_ITEM_NUM 3
#define GALLERY_EVENT_GRID_PADDING (62 - GALLERY_EVENT_ITEM_PADDING)

#define STYLE_MUSIC_SONG "song_item"
#define MUSIC_SONG_ITEM_PADDING 26
#define MUSIC_SONG_ITEM_X (488 + MUSIC_SONG_ITEM_PADDING)
#define MUSIC_SONG_ITEM_Y (134 + MUSIC_SONG_ITEM_PADDING)
#define MUSIC_SONG_ITEM_NUM 4
#define MUSIC_SONG_GRID_PADDING (62 - MUSIC_SONG_ITEM_PADDING)

#define STYLE_MOVIE_GENRE "genre_item"
#define MOVIE_GENRE_ITEM_PADDING GALLERY_EVENT_ITEM_PADDING
#define MOVIE_GENRE_ITEM_X GALLERY_EVENT_ITEM_X
#define MOVIE_GENRE_ITEM_Y GALLERY_EVENT_ITEM_Y
#define MOVIE_GENRE_ITEM_NUM GALLERY_EVENT_ITEM_NUM
#define MOVIE_GENRE_GRID_PADDING GALLERY_EVENT_GRID_PADDING

#define STYLE_MUSIC_ALBUM "album_item"
#define MUSIC_ALBUM_ITEM_PADDING 26
#define MUSIC_ALBUM_ITEM_X (212 + MUSIC_ALBUM_ITEM_PADDING)
#define MUSIC_ALBUM_ITEM_Y (294 + MUSIC_ALBUM_ITEM_PADDING)
#define MUSIC_ALBUM_ITEM_NUM 2
#define MUSIC_ALBUM_GRID_PADDING (62 - MUSIC_ALBUM_ITEM_PADDING)

#define STYLE_MUSIC_ARTIST "album_item"
#define MUSIC_ARTIST_ITEM_PADDING MUSIC_ALBUM_ITEM_PADDING
#define MUSIC_ARTIST_ITEM_X MUSIC_ALBUM_ITEM_X
#define MUSIC_ARTIST_ITEM_Y MUSIC_ALBUM_ITEM_Y
#define MUSIC_ARTIST_ITEM_NUM MUSIC_ALBUM_ITEM_NUM
#define MUSIC_ARTIST_GRID_PADDING MUSIC_ALBUM_GRID_PADDING

#endif /* __AIR_MEDIAHUB_GRID_H__ */