tizen beta release
[framework/web/wrt-plugins-common.git] / src / modules / API / DEPRACATED / Gallery / IViewProperties.h
1 /*
2  * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  *    Licensed under the Apache License, Version 2.0 (the "License");
5  *    you may not use this file except in compliance with the License.
6  *    You may obtain a copy of the License at
7  *
8  *        http://www.apache.org/licenses/LICENSE-2.0
9  *
10  *    Unless required by applicable law or agreed to in writing, software
11  *    distributed under the License is distributed on an "AS IS" BASIS,
12  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  *    See the License for the specific language governing permissions and
14  *    limitations under the License.
15  */
16 #ifndef WRTPLUGINS_GALLERY_IVIEWPROPERTIES_H_
17 #define WRTPLUGINS_GALLERY_IVIEWPROPERTIES_H_
18
19 #include <string>
20
21 namespace WrtPlugins {
22 namespace Api {
23 namespace Gallery {
24 class IViewProperties
25 {
26   public:
27     typedef enum
28     {
29         NONE,
30         BY_FILENAME,
31         BY_FILEDATE,
32         BY_TYPE,
33         //Not supported:
34         //        BY_TITLE,
35         //        BY_AUTHOR,
36         //        BY_ALBUM,
37         BY_DATE
38     } SortOrder;
39
40     typedef enum
41     {
42         ASCENDING,
43         DESCENDING
44     } SortType;
45
46   private:
47     SortType m_order;
48     SortOrder m_primarySortOrder;
49     SortOrder m_secondarySortOrder;
50     long m_startDate;
51     long m_endDate;
52     std::string m_metaTag;
53
54   public:
55     SortType    getSortOrder() const;
56     std::string getMetaTag() const;
57     SortOrder   getPrimarySortOrder() const;
58     SortOrder   getSecondarySortOrder() const;
59     unsigned long        getStartDate() const;
60     unsigned long        getEndDate() const;
61
62     void        setSortOrder(SortType order);
63     void        setMetaTag(const std::string &metaTag);
64     void        setPrimarySortOrder(SortOrder primarySortOrder);
65     void        setSecondarySortOrder(SortOrder secondarySortOrder);
66     void        setStartDate(long startDate);
67     void        setEndDate(long endDate);
68
69     IViewProperties();
70 };
71 } // Gallery
72 } // Api
73 } // WrtPlugins
74
75 #endif //WRTPLUGINS_GALLERY_IVIEWPROPERTIES_H_