Fixed Nabi Issues
[apps/osp/Internet.git] / inc / IntInternetApp.h
1 //
2
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Flora License, Version 1.1 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://floralicense.org/license/
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 //!Internet
19 /*@file:        Internet.h
20  *@brief:       provides basic features necessary to define an UiApp.
21  */
22
23 #ifndef _INT_INTERNET_APP_H_
24 #define _INT_INTERNET_APP_H_
25
26 #include <FApp.h>
27 #include <FBase.h>
28 #include <FSystem.h>
29 #include <FUi.h>
30
31 #include "IntMainFrame.h"
32 #include "IntMultipleWindowPresentationModel.h"
33
34 class InternetApp
35         : public Tizen::App::UiApp
36         , public Tizen::App::IAppControlProviderEventListener
37         , public Tizen::System::IScreenEventListener
38         , public Tizen::System::ISettingEventListener
39 {
40 public:
41         /**
42          * UiApp must have a factory method that creates an instance of itself.
43          */
44         static Tizen::App::UiApp* CreateInstance(void);
45         void ShowPopup(Tizen::Base::String& pTitle, Tizen::Base::String& pText);
46
47 public:
48    /**
49         *@brief                 Default constructor
50         */
51         InternetApp(void);
52    /**
53         *@brief                 Default destructor
54         */
55         virtual ~InternetApp(void);
56
57 public:
58         bool OnAppInitializing(Tizen::App::AppRegistry& appRegistry);
59
60         bool OnAppInitialized(void);
61
62         bool OnAppWillTerminate(void);
63
64         bool OnAppTerminating(Tizen::App::AppRegistry& appRegistry, bool forcedTermination = false);
65
66         void OnBackground(void);
67
68         void OnBatteryLevelChanged(Tizen::System::BatteryLevel batteryLevel);
69
70         void OnForeground(void);
71
72         void OnLowMemory(void);
73
74         void OnScreenOff(void);
75
76         void OnScreenOn(void);
77
78         //ISettingEventListener
79         void OnSettingChanged(Tizen::Base::String& key);
80
81         //IAppControlProviderEventListener
82         void OnAppControlRequestReceived(RequestId reqId, const Tizen::Base::String &operationId, const Tizen::Base::String *pDataType, const Tizen::Base::String *pUriScheme, const Tizen::Base::Collection::IMap *pArgs);
83
84         long long GetAvailableMemory(void);
85 private:
86         MultipleWindowPresentationModel* __pMultiWindowManager;
87         WindowInfo* __pNewWindowInfo;//the new window object to be created either by the normal launch of application or as an appcontrol launch
88         MainFrame* pSceneManagementFrame;
89 };
90
91 #endif // _INT_INTERNET_APP_H_