class AppWidgetViewerMainForm
: public Tizen::Ui::Controls::Form
- , public Tizen::Ui::IActionEventListener
, public Tizen::Ui::Controls::IFormBackEventListener
, public Tizen::Ui::Scenes::ISceneEventListener
, public Tizen::Ui::Controls::IListViewItemEventListener
public:
virtual result OnInitializing(void);
virtual result OnTerminating(void);
- virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId);
virtual void OnFormBackRequested(Tizen::Ui::Controls::Form& source);
virtual void OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId,
const Tizen::Ui::Scenes::SceneId& currentSceneId, Tizen::Base::Collection::IList* pArgs);
const Tizen::Ui::Scenes::SceneId& nextSceneId);
private:
- //ListView
+ // ListView
virtual void OnListViewItemStateChanged(Tizen::Ui::Controls::ListView &listView, int index, int elementId, Tizen::Ui::Controls::ListItemStatus status);
virtual void OnListViewItemSwept(Tizen::Ui::Controls::ListView &listView, int index, Tizen::Ui::Controls::SweepDirection direction);
virtual void OnListViewContextItemStateChanged(Tizen::Ui::Controls::ListView &listView, int index, int elementId, Tizen::Ui::Controls::ListContextItemStatus state);
class ViewForm
: public Tizen::Ui::Controls::Form
, public Tizen::Ui::IActionEventListener
+ , public Tizen::Ui::Controls::IFormMenuEventListener
, public Tizen::Ui::Controls::IFormBackEventListener
, public Tizen::Ui::Scenes::ISceneEventListener
- , public Tizen::Shell::IAppWidgetViewEventListener
, public Tizen::Ui::IPropagatedTouchEventListener
+ , public Tizen::Shell::IAppWidgetViewEventListener
{
public:
ViewForm(void);
private:
void CreateAppWidgetView(const Tizen::Base::String& appId, const Tizen::Base::String& providerName, const Tizen::Base::String& userInfo);
virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId);
+ virtual void OnFormMenuRequested(Tizen::Ui::Controls::Form& source);
virtual void OnFormBackRequested(Tizen::Ui::Controls::Form& source);
virtual void OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId, const Tizen::Ui::Scenes::SceneId& currentSceneId, Tizen::Base::Collection::IList* pArgs);
virtual void OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId, const Tizen::Ui::Scenes::SceneId& nextSceneId);
private:
Tizen::Shell::AppWidgetView* __pAppWidgetView;
- Tizen::Ui::Controls::ContextMenu* __pContextMenu;
+ Tizen::Ui::Controls::OptionMenu* __pOptionMenu;
Tizen::Base::Collection::IList* __pSizeInfoList;
- static const int ID_FOOTER_ITEM1 = 1001;
static const int ID_FOOTER_BUTTON1 = 1002;
int __prevX;
int __prevY;
<LogicalCoordinate>720</LogicalCoordinate>
<Form id="IDF_FORM">
<property backgroundColor="" backgroundColorOpacity="100" notificationTrayOpenEnabled="false" orientation="Portrait" softKey0NormalIcon="" softKey0PressedIcon="" softKey0Text="" softKey1NormalIcon="" softKey1PressedIcon="" softKey1Text="" title="" titleAlign="ALIGN_CENTER" titleIcon="" translucentFooter="false" translucentHeader="false" translucentIndicator="false"/>
- <layout mode="Portrait" style="FORM_STYLE_INDICATOR|FORM_STYLE_HEADER|FORM_STYLE_FOOTER" type="LAYOUT_RELATIVE"/>
- <layout mode="Landscape" style="FORM_STYLE_INDICATOR|FORM_STYLE_HEADER|FORM_STYLE_FOOTER" type="LAYOUT_RELATIVE"/>
+ <layout mode="Portrait" style="FORM_STYLE_INDICATOR|FORM_STYLE_HEADER" type="LAYOUT_RELATIVE"/>
+ <layout mode="Landscape" style="FORM_STYLE_INDICATOR|FORM_STYLE_HEADER" type="LAYOUT_RELATIVE"/>
</Form>
<Footer>
<property backgroundBitmapPath="" color="" colorOpacity="0" disabledButtonColor="" disabledButtonColorOpacity="0" disabledButtonTextColor="" disabledItemColor="" disabledItemColorOpacity="0" disabledItemTextColor="" footerStyle="FOOTER_STYLE_BUTTON_TEXT" highlightedButtonColor="" highlightedButtonColorOpacity="0" highlightedButtonTextColor="" highlightedItemColor="" highlightedItemColorOpacity="0" highlightedItemTextColor="" normalButtonColor="" normalButtonColorOpacity="0" normalButtonTextColor="" normalItemColor="" normalItemColorOpacity="0" normalItemTextColor="" pressedButtonColor="" pressedButtonColorOpacity="0" pressedButtonTextColor="" pressedItemColor="" pressedItemColorOpacity="0" pressedItemTextColor="" selectedItemColor="" selectedItemColorOpacity="0" selectedItemTextColor="" showBackButton="true"/>
<itemSet/>
</Footer>
<Header>
- <property accessibilityHint="" backgroundBitmapPath="" color="" colorOpacity="0" descriptionText="" descriptionTextColor="" disabledButtonColor="" disabledButtonColorOpacity="0" disabledButtonTextColor="" disabledItemColor="" disabledItemColorOpacity="0" disabledItemTextColor="" headerStyle="HEADER_STYLE_TITLE" highlightedButtonColor="" highlightedButtonColorOpacity="0" highlightedButtonTextColor="" highlightedItemColor="" highlightedItemColorOpacity="0" highlightedItemTextColor="" normalButtonColor="" normalButtonColorOpacity="0" normalButtonTextColor="" normalItemColor="" normalItemColorOpacity="0" normalItemTextColor="" pressedButtonColor="" pressedButtonColorOpacity="0" pressedButtonTextColor="" pressedItemColor="" pressedItemColorOpacity="0" pressedItemTextColor="" selectedItemColor="" selectedItemColorOpacity="0" selectedItemTextColor="" showBackButton="false" titleIconPath="" titleText="DYNAMIC BOX VIEWER" titleTextColor=""/>
+ <property accessibilityHint="" backgroundBitmapPath="" color="" colorOpacity="0" descriptionText="" descriptionTextColor="" disabledButtonColor="" disabledButtonColorOpacity="0" disabledButtonTextColor="" disabledItemColor="" disabledItemColorOpacity="0" disabledItemTextColor="" headerStyle="HEADER_STYLE_TITLE" highlightedButtonColor="" highlightedButtonColorOpacity="0" highlightedButtonTextColor="" highlightedItemColor="" highlightedItemColorOpacity="0" highlightedItemTextColor="" normalButtonColor="" normalButtonColorOpacity="0" normalButtonTextColor="" normalItemColor="" normalItemColorOpacity="0" normalItemTextColor="" pressedButtonColor="" pressedButtonColorOpacity="0" pressedButtonTextColor="" pressedItemColor="" pressedItemColorOpacity="0" pressedItemTextColor="" selectedItemColor="" selectedItemColorOpacity="0" selectedItemTextColor="" showBackButton="false" titleIconPath="" titleText="Dynamic Box Viewer" titleTextColor=""/>
<itemSet/>
</Header>
</Scene>
</Form>
<Footer>
<property backgroundBitmapPath="" color="" colorOpacity="100" disabledButtonColor="" disabledButtonColorOpacity="100" disabledButtonTextColor="" disabledItemColor="" disabledItemColorOpacity="100" disabledItemTextColor="" footerStyle="FOOTER_STYLE_BUTTON_TEXT" highlightedButtonColor="" highlightedButtonColorOpacity="100" highlightedButtonTextColor="" highlightedItemColor="" highlightedItemColorOpacity="100" highlightedItemTextColor="" normalButtonColor="" normalButtonColorOpacity="100" normalButtonTextColor="" normalItemColor="" normalItemColorOpacity="100" normalItemTextColor="" pressedButtonColor="" pressedButtonColorOpacity="100" pressedButtonTextColor="" pressedItemColor="" pressedItemColorOpacity="100" pressedItemTextColor="" selectedItemColor="" selectedItemColorOpacity="100" selectedItemTextColor="" showBackButton="true"/>
- <itemSet>
- <footerItem actionId="1001" disabledIconPath="" highlightedIconPath="" normalIconPath="" pressedIconPath="" selectedIconPath="" text="Size list"/>
- </itemSet>
</Footer>
<Header>
<property backgroundBitmapPath="" color="" colorOpacity="100" descriptionText="" descriptionTextColor="" disabledButtonColor="" disabledButtonColorOpacity="100" disabledButtonTextColor="" disabledItemColor="" disabledItemColorOpacity="100" disabledItemTextColor="" headerStyle="HEADER_STYLE_TITLE" highlightedButtonColor="" highlightedButtonColorOpacity="100" highlightedButtonTextColor="" highlightedItemColor="" highlightedItemColorOpacity="100" highlightedItemTextColor="" normalButtonColor="" normalButtonColorOpacity="100" normalButtonTextColor="" normalItemColor="" normalItemColorOpacity="100" normalItemTextColor="" pressedButtonColor="" pressedButtonColorOpacity="100" pressedButtonTextColor="" pressedItemColor="" pressedItemColorOpacity="100" pressedItemTextColor="" selectedItemColor="" selectedItemColorOpacity="100" selectedItemTextColor="" titleIconPath="" titleText="DYNAMIC BOX VIEWER" titleTextColor=""/>
#include <FApp.h>
#include <FMedia.h>
#include <FShell.h>
-
#include "AppWidgetViewerMainForm.h"
#include "AppWidgetViewerFormFactory.h"
const int LIST_ITEM_MARGIN_LEFT = 26;
const int LIST_ITEM_MARGIN_TOP = 32;
const int LIST_ITEM_TEXT_HEIGHT = 50;
-
const wchar_t OPERATION_APPWIDGET_CONFIG[] = L"http://tizen.org/appcontrol/operation/appwidget/configuration";
const wchar_t EXTRA_KEY_USER_INFO[] = L"http://tizen.org/appcontrol/data/user_info";
const wchar_t EXTRA_KEY_PROVIDER_NAME[] = L"http://tizen.org/appcontrol/data/provider_name";
-
-
-
AppWidgetViewerMainForm::AppWidgetViewerMainForm(void)
: __pList(null)
, __pAppWidgetProviderList(null)
}
void
-AppWidgetViewerMainForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId)
-{
- SceneManager* pSceneManager = SceneManager::GetInstance();
- AppAssert(pSceneManager);
-
- switch(actionId)
- {
- default:
- break;
- }
-}
-
-void
AppWidgetViewerMainForm::OnFormBackRequested(Tizen::Ui::Controls::Form& source)
{
UiApp* pApp = UiApp::GetInstance();
return true;
}
-
void
AppWidgetViewerMainForm::OnAppControlCompleteResponseReceived(const AppId& appId, const Tizen::Base::String& operationId, AppCtrlResult appControlResult, const Tizen::Base::Collection::IMap* pExtraData)
{
ViewForm::ViewForm(void)
: __pAppWidgetView(null)
- , __pContextMenu(null)
+ , __pOptionMenu(null)
, __pSizeInfoList(null)
, __prevX(0)
, __prevY(0)
- , __FooterItemIndex(1)
+ , __FooterItemIndex(0)
, __isMoveMode(false)
, __pFooterItem(null)
{
result r = E_SUCCESS;
// TODO: Add your initialization code here
+ SetFormMenuEventListener(this);
SetFormBackEventListener(this);
+
Footer* pFooter = GetFooter();
pFooter->AddActionEventListener(*this);
SetPropagatedTouchEventListener(this);
__pFooterItem->Construct(ID_FOOTER_BUTTON1);
__pFooterItem->SetText(L"Move");
pFooter->AddItem(*__pFooterItem);
+
return r;
}
result r = E_SUCCESS;
// TODO: Add your termination code here
- delete __pContextMenu;
+ delete __pOptionMenu;
+
if (__pSizeInfoList)
{
__pSizeInfoList->RemoveAll(true);
}
__pAppWidgetView = pAppWidgetView.release();
-
__pAppWidgetView->AddAppWidgetViewEventListener(*this);
- __pContextMenu = new (std::nothrow) ContextMenu();
- __pContextMenu->Construct(Point(CONTEXT_MENU_X, CONTEXT_MENU_Y), CONTEXT_MENU_STYLE_LIST);
+ __pOptionMenu = new (std::nothrow) OptionMenu();
+ __pOptionMenu->Construct();
unique_ptr<AppWidgetProviderInfo> pProviderInfo(AppWidgetManager::GetInstance()->GetAppWidgetProviderInfoN(appId, providerName ));
TryReturnVoid(pProviderInfo.get(), "pProviderInfo is null!!");
result r = image.Construct();
TryReturnVoid(r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
-// Bitmap* pBmp = image.DecodeN(L"/opt/apps/yPpyL2WVNQ/shared/res/screen-density-xhigh/2x2.png", BITMAP_PIXEL_FORMAT_ARGB8888);
+ //Bitmap* pBmp = image.DecodeN(L"/opt/apps/yPpyL2WVNQ/shared/res/screen-density-xhigh/2x2.png", BITMAP_PIXEL_FORMAT_ARGB8888);
Bitmap* pBmp = image.DecodeN(pSizeInfo->GetPreviewImagePath(), BITMAP_PIXEL_FORMAT_ARGB8888);
-
-
if( pBmp)
{
-// __pContextMenu->AddItem(size, i, *pBmp );
- __pContextMenu->AddItem(size, i, *pBmp );
+ __pOptionMenu->AddItem(size, i, *pBmp);
}
else
{
- __pContextMenu->AddItem(size, i);
+ __pOptionMenu->AddItem(size, i);
}
}
}
- Rectangle formBounds = GetBounds();
- Footer* pFooter = GetFooter();
- Rectangle footerBounds = pFooter->GetBounds();
-
- Point anchor(formBounds.width / 3, formBounds.height - footerBounds.height);
-
- __pContextMenu->SetAnchorPosition(anchor);
- __pContextMenu->AddActionEventListener(*this);
+ __pOptionMenu->AddActionEventListener(*this);
}
void
{
Footer* pFooter = GetFooter();
String str = L"";
+
if (pFooter && __pFooterItem)
{
- pFooter->RemoveItemAt(__FooterItemIndex);
+ pFooter->RemoveAllItems();
}
+
if (__isMoveMode == false)
{
str = L"Done";
str = L"Move";
__isMoveMode = false;
}
- __pFooterItem = new FooterItem();
- __pFooterItem->Construct(ID_FOOTER_BUTTON1);
+
__pFooterItem->SetText(str);
pFooter->AddItem(*__pFooterItem);
+
Invalidate(true);
+
return;
}
- if (actionId == ID_FOOTER_ITEM1)
- {
- if (__pContextMenu && (__pContextMenu->GetItemCount() > 0))
- {
- __pContextMenu->SetShowState(true);
- __pContextMenu->Show();
- }
- }
else
{
AppWidgetSizeInfo* pSizeInfo = null;
Rectangle ClientRect = GetClientAreaBounds();
int newX = Rect.x;
int newY = Rect.y;
+
if(Rect.x + dim.width > ClientRect.width)
{
newX = ClientRect.width - dim.width;
}
+
if(Rect.y + dim.height > ClientRect.height)
{
newY = ClientRect.height - dim.height;
}
- __pAppWidgetView->SetBounds(Rectangle(newX,newY,dim.width,dim.height));
+ __pAppWidgetView->SetBounds(Rectangle(newX, newY, dim.width, dim.height));
}
}
}
void
+ViewForm::OnFormMenuRequested(Tizen::Ui::Controls::Form& source)
+{
+ if (__pOptionMenu && (__pOptionMenu->GetItemCount() > 0))
+ {
+ __pOptionMenu->SetShowState(true);
+ __pOptionMenu->Show();
+ }
+}
+
+void
ViewForm::OnFormBackRequested(Tizen::Ui::Controls::Form& source)
{
SceneManager* pSceneManager = SceneManager::GetInstance();
}
}
-
void
ViewForm::OnAppWidgetProviderRemoved(Tizen::Shell::AppWidgetView &appWidgetView)
{
}
return false;
- }
+}
bool
ViewForm::OnPreviewTouchReleased(Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo)