Applied latest source code
[apps/native/preloaded/MusicPlayer.git] / inc / MpArtistListEditorPanel.h
1 //
2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
3 //
4 // Licensed under the Flora License, Version 1.1 (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://floralicense.org/license/
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
17 /**
18  * @file                MpArtistListEditorPanel.h
19  * @brief               This is the header file for ArtistListEditorPanel class.
20  */
21
22 #ifndef _MP_ARTIST_LIST_EDITOR_PANEL_H_
23 #define _MP_ARTIST_LIST_EDITOR_PANEL_H_
24
25 #include <new>
26 #include <FApp.h>
27 #include <FSocial.h>
28 #include <FUi.h>
29 #include <FUiScenes.h>
30 #include "MpArtistListPresentationModel.h"
31 #include "MpContentEditPanel.h"
32 #include "MpSceneRegister.h"
33 #include "MpThumbnailBase.h"
34 #include "MpTypes.h"
35
36 class ArtistListEditorPanel
37         : public ContentEditPanel
38         , public ThumbnailBase
39 {
40 public:
41         ArtistListEditorPanel(void);
42         virtual ~ArtistListEditorPanel(void);
43
44         virtual result OnInitializing(void);
45         virtual result OnTerminating(void);
46         virtual void OnActionPerformed(const Tizen::Ui::Control& source,
47                                                 int actionId);
48
49         virtual void OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId,
50                                                 const Tizen::Ui::Scenes::SceneId& currentSceneId,
51                                                 Tizen::Base::Collection::IList* pArgs);
52         virtual void OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId,
53                                                 const Tizen::Ui::Scenes::SceneId& nextSceneId);
54
55         virtual int GetItemCount(void);
56         
57         virtual Tizen::Ui::Controls::TableViewItem* CreateItem(const int itemIndex, int itemWidth);
58         virtual void UpdateItem(int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem);
59
60         virtual void OnTableViewItemStateChanged(Tizen::Ui::Controls::TableView& tableView,
61                                                         int itemIndex,
62                                                         Tizen::Ui::Controls::TableViewItem* pItem,
63                                                         Tizen::Ui::Controls::TableViewItemStatus status);
64
65         virtual void OnThumbnailInfoReveivedN(ThumbnailInfo* pThumbnailInfo);
66         virtual void OnFormBackRequested(Tizen::Ui::Controls::Form& source);
67         virtual void OnFontSizeChanged(void);
68 protected:
69         virtual bool IsEmptyContentList(void);
70         virtual Tizen::Base::Collection::IList* GetPickerArgumentListN(PickerType pickerType, PickerArgumentType argumentType);
71         virtual void UpdateContentList(void);
72
73 private:
74         result CreateTableViewItem(Tizen::Ui::Container& parent, const ContentInformation& contentInfoStruct);
75         void SetEditHeaderStyle(void);
76
77 protected:
78         Tizen::Graphics::Bitmap* __pThumbnail;
79         ArtistListPresentationModel* __pPresentationModel;
80 };
81
82 #endif // _MP_ARTIST_LIST_EDITOR_PANEL_H_