class ImportForm
: public Tizen::Ui::Controls::Form
+ , public virtual Tizen::Base::Runtime::IRunnable
, public virtual Tizen::Ui::IActionEventListener
, public virtual Tizen::Ui::Controls::IFormBackEventListener
, public virtual Tizen::Ui::Controls::IListViewItemEventListener
virtual result OnTerminating(void);
virtual void OnUserEventReceivedN(RequestId requestId, Tizen::Base::Collection::IList* pArgs);
+ virtual Tizen::Base::Object* Run(void);
+
virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId);
virtual void OnFormBackRequested(Tizen::Ui::Controls::Form& source);
Tizen::Locales::DateTimeFormatter* __pTimeFormatter;
Tizen::Social::Calendarbook* __pCalendarbook;
CalendarSelectorPopup* __pCalendarSelectorPopup;
+ Tizen::Base::Runtime::Thread* __pThread;
+ Tizen::Ui::Controls::ProgressPopup* __pProgressPopup;
+ Tizen::Social::RecordId __calendarId;
}; // ImportForm
#endif // _CL_IMPORT_FORM_H_
Tizen::Ui::Controls::Label* __pLabelFirstDayOfWeek;
Tizen::Ui::Controls::Label* __pLabelFirstDayOfWeekExpandIcon;
CalendarSelectorPopup* __pCalendarSelectorPopup;
+ Tizen::Base::Runtime::Thread* __pThread;
+ Tizen::Ui::Controls::ProgressPopup* __pProgressPopup;
Tizen::Social::RecordId __exportCalendarId;
int __descriptionItemHeight;
bool __isLockTimeZoneSet;
</Popup>
<EditDate id="IDC_EDITDATE" parent="IDL_GO_TO_DATE_POPUP">
<property maxYearRange="9999" minYearRange="1" titleText=""/>
- <layout bottomRelation="" bottomRelationType="" centerHorizontal="false" centerVertical="false" height="144" horizontalFitPolicy="FIT_POLICY_FIXED" leftRelation="" leftRelationType="" marginBottom="" marginLeft="" marginRight="" marginTop="40" mode="Portrait" rightRelation="" rightRelationType="" topRelation="IDL_GO_TO_DATE_POPUP" topRelationType="RECT_EDGE_RELATION_TOP_TO_TOP" verticalFitPolicy="FIT_POLICY_FIXED" width="720" x="100" y="0"/>
- <layout bottomRelation="" bottomRelationType="" centerHorizontal="false" centerVertical="false" height="144" horizontalFitPolicy="FIT_POLICY_FIXED" leftRelation="" leftRelationType="" marginBottom="" marginLeft="" marginRight="" marginTop="40" mode="Landscape" rightRelation="" rightRelationType="" topRelation="IDL_GO_TO_DATE_POPUP" topRelationType="RECT_EDGE_RELATION_TOP_TO_TOP" verticalFitPolicy="FIT_POLICY_FIXED" width="720" x="100" y="0"/>
+ <layout bottomRelation="" bottomRelationType="" centerHorizontal="false" centerVertical="false" height="144" horizontalFitPolicy="FIT_POLICY_FIXED" leftRelation="" leftRelationType="" marginBottom="" marginLeft="" marginRight="" marginTop="40" mode="Portrait" rightRelation="" rightRelationType="" topRelation="IDL_GO_TO_DATE_POPUP" topRelationType="RECT_EDGE_RELATION_TOP_TO_TOP" verticalFitPolicy="FIT_POLICY_FIXED" width="720" x="175" y="0"/>
+ <layout bottomRelation="" bottomRelationType="" centerHorizontal="false" centerVertical="false" height="144" horizontalFitPolicy="FIT_POLICY_FIXED" leftRelation="" leftRelationType="" marginBottom="" marginLeft="" marginRight="" marginTop="40" mode="Landscape" rightRelation="" rightRelationType="" topRelation="IDL_GO_TO_DATE_POPUP" topRelationType="RECT_EDGE_RELATION_TOP_TO_TOP" verticalFitPolicy="FIT_POLICY_FIXED" width="720" x="175" y="0"/>
</EditDate>
<Button id="IDC_BUTTON_DONE" parent="IDL_GO_TO_DATE_POPUP">
<property disableTextColor="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="::IDS_CLD_SK3_DONE" textSize="33" verticalAlign="ALIGN_MIDDLE"/>
if (date > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- date.SetValue(minDate.GetYear(), minDate.GetMonth(), minDate.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(minDate.GetYear() + 1, minDate.GetMonth(), minDate.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->Initialize(Rectangle(0, 0, GetWidth(), GetHeight()), date, *__pPm);
break;
if (date < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- date.SetValue(maxDate.GetYear(), maxDate.GetMonth(), maxDate.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(maxDate.GetYear() - 1, maxDate.GetMonth(), maxDate.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->Initialize(Rectangle(0, 0, GetWidth(), GetHeight()), date, *__pPm);
break;
if (date < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- date.SetValue(maxDate.GetYear(), maxDate.GetMonth(), maxDate.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(maxDate.GetYear() - 1, maxDate.GetMonth(), maxDate.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->SetDate(date);
pPanel->RequestRedraw(false);
if (date > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- date.SetValue(minDate.GetYear(), minDate.GetMonth(), minDate.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(minDate.GetYear() + 1, minDate.GetMonth(), minDate.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->SetDate(date);
pPanel->RequestRedraw(false);
if (nextDate > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- nextDate.SetValue(minDate.GetYear(), minDate.GetMonth(), minDate.GetDay(), nextDate.GetHour(), nextDate.GetMinute());
+ nextDate.SetValue(minDate.GetYear() + 1, minDate.GetMonth(), minDate.GetDay(), nextDate.GetHour(), nextDate.GetMinute());
}
pNextPanel->SetDate(nextDate);
}
if (prevDate < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- prevDate.SetValue(maxDate.GetYear(), maxDate.GetMonth(), maxDate.GetDay(), prevDate.GetHour(), prevDate.GetMinute());
+ prevDate.SetValue(maxDate.GetYear() - 1, maxDate.GetMonth(), maxDate.GetDay(), prevDate.GetHour(), prevDate.GetMinute());
}
pPrevPanel->SetDate(prevDate);
}
result
EventDeleterForm::OnTerminating(void)
{
- delete __pCalendarbook;
- delete __pDateFormatter;
- delete __pTimeFormatter;
- delete __pTwoButtonPopup;
if (__pThread != null)
{
__pThread->Join();
delete __pThread;
}
- delete __pProgressPopup;
+
+ delete __pCalendarbook;
+ delete __pDateFormatter;
+ delete __pTimeFormatter;
+ if (__pTwoButtonPopup != null)
+ {
+ __pTwoButtonPopup->Destroy();
+ }
+ if (__pProgressPopup != null)
+ {
+ __pProgressPopup->Destroy();
+ }
__pPm->RemoveCalendarEventChangedEventListener(*this);
return E_SUCCESS;
break;
}
case IDA_EVENT_DELETER_FORM_DELETE_COMPLETE:
+ __pThread->Join();
delete __pThread;
__pThread = null;
__pProgressPopup->SetShowState(false);
EventDetailsForm::OnTerminating(void)
{
delete __pPm;
- delete __pCalendarSelectorPopup;
- delete __pSharePopup;
- delete __pThreeButtonPopup;
- delete __pTwoButtonPopup;
+ if (__pCalendarSelectorPopup != null)
+ {
+ __pCalendarSelectorPopup->Destroy();
+ }
+ if (__pSharePopup != null)
+ {
+ __pSharePopup->Destroy();
+ }
+ if (__pThreeButtonPopup != null)
+ {
+ __pThreeButtonPopup->Destroy();
+ }
+ if (__pTwoButtonPopup != null)
+ {
+ __pTwoButtonPopup->Destroy();
+ }
return E_SUCCESS;
}
EventEditorForm::OnTerminating(void)
{
delete __pPm;
- delete __pCalendarSelectorPopup;
+ if (__pCalendarSelectorPopup != null)
+ {
+ __pCalendarSelectorPopup->Destroy();
+ }
return E_SUCCESS;
}
pItem->AddControl(pStartDate);
- pStartDate->SetYearRange(Calendarbook::GetMinDateTime().GetYear(), Calendarbook::GetMaxDateTime().GetYear());
+ pStartDate->SetYearRange(Calendarbook::GetMinDateTime().GetYear() + 1, Calendarbook::GetMaxDateTime().GetYear() - 1);
pStartDate->SetDate(start);
pStartDate->AddDateChangeEventListener(*this);
pItem->SetIndividualSelectionEnabled(pStartDate, true);
pItem->AddControl(pEndDate);
- pEndDate->SetYearRange(Calendarbook::GetMinDateTime().GetYear(), Calendarbook::GetMaxDateTime().GetYear());
+ pEndDate->SetYearRange(Calendarbook::GetMinDateTime().GetYear() + 1, Calendarbook::GetMaxDateTime().GetYear() - 1);
pEndDate->SetDate(end);
pEndDate->AddDateChangeEventListener(*this);
pItem->SetIndividualSelectionEnabled(pEndDate, true);
delete __pPm;
delete __pContextItem;
delete __pContextItemNoEdit;
- delete __pSharePopup;
- delete __pThreeButtonPopup;
- delete __pTwoButtonPopup;
+ if (__pSharePopup != null)
+ {
+ __pSharePopup->Destroy();
+ }
+ if (__pThreeButtonPopup != null)
+ {
+ __pThreeButtonPopup->Destroy();
+ }
+ if (__pTwoButtonPopup != null)
+ {
+ __pTwoButtonPopup->Destroy();
+ }
return E_SUCCESS;
}
{
__pEditDate = dynamic_cast<EditDate*>(GetControl(L"IDC_EDITDATE"));
AppAssertf(__pEditDate != null, "[E_FAILURE] Unable to get button.");
- __pEditDate->SetYearRange(Calendarbook::GetMinDateTime().GetYear(), Calendarbook::GetMaxDateTime().GetYear());
+ __pEditDate->SetYearRange(Calendarbook::GetMinDateTime().GetYear() + 1, Calendarbook::GetMaxDateTime().GetYear() - 1);
__pEditDate->SetDate(__date);
Locales::DateTimeFormatter* pDateFormatter = ResourceManager::CreateDateFormatterN(Locales::DATE_TIME_STYLE_DEFAULT);
using namespace Tizen;
using namespace Tizen::Base;
using namespace Tizen::Base::Collection;
+using namespace Tizen::Base::Runtime;
using namespace Tizen::Graphics;
using namespace Tizen::Social;
using namespace Tizen::Ui;
static const int IDA_IMPORT_FORM_SELECT_ALL = 90001;
static const int IDA_IMPORT_FORM_ADD_TO_CALENDAR = 90010;
+static const int IDA_IMPORT_FORM_ADD_COMPLETE = 90020;
ImportForm::ImportForm(void)
, __pTimeFormatter(null)
, __pCalendarbook(null)
, __pCalendarSelectorPopup(null)
+ , __pThread(null)
+ , __pProgressPopup(null)
+ , __calendarId(INVALID_RECORD_ID)
{
}
result
ImportForm::OnTerminating(void)
{
+ if (__pThread != null)
+ {
+ __pThread->Join();
+ delete __pThread;
+ }
+
delete __pList;
delete __pDateTimeFormatter;
delete __pDateFormatter;
delete __pTimeFormatter;
delete __pCalendarbook;
- delete __pCalendarSelectorPopup;
+ if (__pCalendarSelectorPopup != null)
+ {
+ __pCalendarSelectorPopup->Destroy();
+ }
+ if (__pProgressPopup != null)
+ {
+ __pProgressPopup->Destroy();
+ }
return E_SUCCESS;
}
case IDA_CALENDAR_SELECTOR_POPUP_DONE:
if (pArgs != null)
{
- RecordId calendarId = static_cast<Integer*>(pArgs->GetAt(0))->value;
- Calendar* pCalendar = __pCalendarbook->GetCalendarN(calendarId);
- if (pCalendar != null)
+ __calendarId = static_cast<Integer*>(pArgs->GetAt(0))->value;
+
+ if (__pThread != null)
{
- IEnumerator* pEnum = __pList->GetEnumeratorN();
- int index = 0;
- if ((pCalendar->GetItemType() & CALENDAR_ITEM_TYPE_EVENT_ONLY) != 0)
- {
- while (pEnum->MoveNext() == E_SUCCESS)
- {
- if (__pListViewContents->IsItemChecked(index) == true)
- {
- CalEvent* pEvent = dynamic_cast<CalEvent*>(pEnum->GetCurrent());
- if (pEvent != null)
- {
- if (pEvent->GetRecordId() == INVALID_RECORD_ID)
- {
- __pCalendarbook->AddEvent(*pEvent, calendarId);
- }
- __pListViewContents->SetItemChecked(index, false);
- }
- }
- ++index;
- }
- }
- pEnum->Reset();
- index = 0;
- if ((pCalendar->GetItemType() & CALENDAR_ITEM_TYPE_TODO_ONLY) != 0)
- {
- while (pEnum->MoveNext() == E_SUCCESS)
- {
- if (__pListViewContents->IsItemChecked(index) == true)
- {
- CalTodo* pTodo = dynamic_cast<CalTodo*>(pEnum->GetCurrent());
- if (pTodo != null)
- {
- if (pTodo->GetRecordId() == INVALID_RECORD_ID)
- {
- __pCalendarbook->AddTodo(*pTodo, calendarId);
- }
- __pListViewContents->SetItemChecked(index, false);
- }
- }
- ++index;
- }
- }
- delete pEnum;
+ __pThread->Join();
+ delete __pThread;
}
- if (IsTodoItemChecked() == true)
+ if (__pProgressPopup == null)
{
- __pCalendarSelectorPopup->RequestCalendar(CALENDAR_SELECTOR_POPUP_STYLE_TODO, this);
+ __pProgressPopup = new (std::nothrow) ProgressPopup();
+ __pProgressPopup->Construct(false, false);
}
+ __pProgressPopup->SetShowState(true);
+ __pProgressPopup->Show();
- __pListViewContents->UpdateList();
+ __pThread = new (std::nothrow) Thread();
+ __pThread->Construct(*this, Thread::DEFAULT_STACK_SIZE, THREAD_PRIORITY_LOW);
+ __pThread->Start();
+ }
+ break;
+ case IDA_IMPORT_FORM_ADD_COMPLETE:
+ __pThread->Join();
+ delete __pThread;
+ __pThread = null;
+ __pProgressPopup->SetShowState(false);
- if (IsNoItemChecked() == true)
- {
- GetFooter()->SetItemEnabled(0, false);
- GetFooter()->Invalidate(true);
- }
+ if (IsTodoItemChecked() == true)
+ {
+ __pCalendarSelectorPopup->RequestCalendar(CALENDAR_SELECTOR_POPUP_STYLE_TODO, this);
+ }
- if (IsAllItemAdded() == true)
- {
- GetHeader()->RemoveAllButtons();
- GetHeader()->Invalidate(true);
- GetFooter()->RemoveAllItems();
- GetFooter()->Invalidate(true);
- }
+ __pListViewContents->UpdateList();
+
+ if (IsNoItemChecked() == true)
+ {
+ GetFooter()->SetItemEnabled(0, false);
+ GetFooter()->Invalidate(true);
+ }
+
+ if (IsAllItemAdded() == true)
+ {
+ GetHeader()->RemoveAllButtons();
+ GetHeader()->Invalidate(true);
+ GetFooter()->RemoveAllItems();
+ GetFooter()->Invalidate(true);
}
break;
}
}
}
+Object*
+ImportForm::Run(void)
+{
+ Calendar* pCalendar = __pCalendarbook->GetCalendarN(__calendarId);
+ if (pCalendar != null)
+ {
+ ArrayList* pList = new (std::nothrow) ArrayList();
+ pList->Construct();
+
+ IEnumerator* pEnum = __pList->GetEnumeratorN();
+ int index = 0;
+ if ((pCalendar->GetItemType() & CALENDAR_ITEM_TYPE_EVENT_ONLY) != 0)
+ {
+ while (pEnum->MoveNext() == E_SUCCESS)
+ {
+ if (__pListViewContents->IsItemChecked(index) == true)
+ {
+ CalEvent* pEvent = dynamic_cast<CalEvent*>(pEnum->GetCurrent());
+ if (pEvent != null)
+ {
+ if (pEvent->GetRecordId() == INVALID_RECORD_ID)
+ {
+ __pCalendarbook->AddEvent(*pEvent, __calendarId);
+ }
+ __pListViewContents->SetItemChecked(index, false);
+ }
+ }
+ ++index;
+ }
+ }
+ pEnum->Reset();
+ index = 0;
+ if ((pCalendar->GetItemType() & CALENDAR_ITEM_TYPE_TODO_ONLY) != 0)
+ {
+ while (pEnum->MoveNext() == E_SUCCESS)
+ {
+ if (__pListViewContents->IsItemChecked(index) == true)
+ {
+ CalTodo* pTodo = dynamic_cast<CalTodo*>(pEnum->GetCurrent());
+ if (pTodo != null)
+ {
+ if (pTodo->GetRecordId() == INVALID_RECORD_ID)
+ {
+ __pCalendarbook->AddTodo(*pTodo, __calendarId);
+ }
+ __pListViewContents->SetItemChecked(index, false);
+ }
+ }
+ ++index;
+ }
+ }
+ delete pEnum;
+ }
+ SendUserEvent(IDA_IMPORT_FORM_ADD_COMPLETE, null);
+ return null;
+}
+
void
ImportForm::OnActionPerformed(const Control& source, int actionId)
{
if (date > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- date.SetValue(minDate.GetYear(), minDate.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(minDate.GetYear() + 1, minDate.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->Initialize(Rectangle(0, Y_CALENDAR, GetWidth(), GetHeight()), date, *__pPm);
break;
if (date < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- date.SetValue(maxDate.GetYear(), maxDate.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(maxDate.GetYear() - 1, maxDate.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->Initialize(Rectangle(0, Y_CALENDAR, GetWidth(), GetHeight()), date, *__pPm);
break;
if (date < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- date.SetValue(maxDate.GetYear(), maxDate.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(maxDate.GetYear() - 1, maxDate.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->SetDate(date);
pPanel->RequestRedraw(false);
if (date > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- date.SetValue(minDate.GetYear(), minDate.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(minDate.GetYear() + 1, minDate.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->SetDate(date);
pPanel->RequestRedraw(false);
if (nextDate > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- nextDate.SetValue(minDate.GetYear(), minDate.GetMonth(), nextDate.GetDay(), nextDate.GetHour(), nextDate.GetMinute());
+ nextDate.SetValue(minDate.GetYear() + 1, minDate.GetMonth(), nextDate.GetDay(), nextDate.GetHour(), nextDate.GetMinute());
}
pNextPanel->SetDate(nextDate);
pNextPanel->SetSize(pNextPanel->GetWidth(), pCurrent->GetHeight());
if (prevDate < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- prevDate.SetValue(maxDate.GetYear(), maxDate.GetMonth(), prevDate.GetDay(), prevDate.GetHour(), prevDate.GetMinute());
+ prevDate.SetValue(maxDate.GetYear() - 1, maxDate.GetMonth(), prevDate.GetDay(), prevDate.GetHour(), prevDate.GetMinute());
}
pPrevPanel->SetDate(prevDate);
pPrevPanel->SetSize(pPrevPanel->GetWidth(), pCurrent->GetHeight());
{
static_cast<EventInstanceNode*>(__pAllDayEvents->GetAt(i))->RemoveRef();
}
- __pAllDayEvents->RemoveAll(false);
delete __pAllDayEvents;
}
if (__pEvents != null)
{
static_cast<EventInstanceNode*>(__pEvents->GetAt(i))->RemoveRef();
}
- __pEvents->RemoveAll(false);
delete __pEvents;
}
}
__pAllDayEvents = new (std::nothrow) ArrayList();
__pAllDayEvents->Construct();
}
- __pAllDayEvents->Add(eventNode);
+ __pAllDayEvents->Add(&eventNode);
}
else
{
__pEvents = new (std::nothrow) ArrayList();
__pEvents->Construct();
}
- __pEvents->Add(eventNode);
+ __pEvents->Add(&eventNode);
}
}
__pEditDateUntilDate = new (std::nothrow) EditDate();
__pEditDateUntilDate->Construct(Point(X_REPEAT_UNTIL_TYPE_EDIT_DATE, Y_REPEAT_UNTIL_TYPE_EDIT_DATE));
pItem->AddControl(__pEditDateUntilDate);
- __pEditDateUntilDate->SetYearRange(Calendarbook::GetMinDateTime().GetYear(), Calendarbook::GetMaxDateTime().GetYear());
+ __pEditDateUntilDate->SetYearRange(Calendarbook::GetMinDateTime().GetYear() + 1, Calendarbook::GetMaxDateTime().GetYear() - 1);
__pEditDateUntilDate->SetDate(__untilDate);
__pEditDateUntilDate->SetEnabled(__repeatUntilType == REPEAT_UNTIL_TYPE_UNTIL_DATE);
__pEditDateUntilDate->AddDateChangeEventListener(*this);
using namespace Tizen::App;
using namespace Tizen::Base;
using namespace Tizen::Base::Collection;
+using namespace Tizen::Base::Runtime;
using namespace Tizen::Graphics;
using namespace Tizen::Io;
using namespace Tizen::Social;
static const int FONT_SIZE_DETAIL03 = 32;
static const unsigned int COLOR_DETAIL03 = Color32<128, 128, 128>::Value;
+static const int IDA_SETTING_FORM_PARSE_VCS_FILE_COMPLETE = 90001;
+
+
+class AsyncVcsParser
+ : public Thread
+{
+public:
+ result Initialize(const String& vcsFilePath, Control* pTarget);
+
+ virtual Object* Run(void);
+private:
+ String __path;
+ Control* __pTarget;
+};
+
+result
+AsyncVcsParser::Initialize(const String& vcsFilePath, Control* pTarget)
+{
+ __path = vcsFilePath;
+ __pTarget = pTarget;
+ return Construct(DEFAULT_STACK_SIZE, THREAD_PRIORITY_LOW);
+}
+
+Object*
+AsyncVcsParser::Run(void)
+{
+ if (__pTarget != null)
+ {
+ __pTarget->SendUserEvent(IDA_SETTING_FORM_PARSE_VCS_FILE_COMPLETE, ResourceManager::ParseVcsFileN(__path));
+ }
+ return null;
+}
+
SettingForm::SettingForm(void)
: __pTableView(null)
, __pLabelFirstDayOfWeek(null)
, __pLabelFirstDayOfWeekExpandIcon(null)
, __pCalendarSelectorPopup(null)
+ , __pThread(null)
+ , __pProgressPopup(null)
, __exportCalendarId(INVALID_RECORD_ID)
, __descriptionItemHeight(-1)
, __isLockTimeZoneSet(false)
result
SettingForm::OnTerminating(void)
{
- delete __pCalendarSelectorPopup;
+ if (__pThread != null)
+ {
+ __pThread->Join();
+ delete __pThread;
+ }
+
+ if (__pCalendarSelectorPopup != null)
+ {
+ __pCalendarSelectorPopup->Destroy();
+ }
+ if (__pProgressPopup != null)
+ {
+ __pProgressPopup->Destroy();
+ }
return E_SUCCESS;
}
}
}
break;
+ case IDA_SETTING_FORM_PARSE_VCS_FILE_COMPLETE:
+ __pThread->Join();
+ delete __pThread;
+ __pThread = null;
+ __pProgressPopup->SetShowState(false);
+
+ if (pArgs != null && pArgs->GetCount() > 0)
+ {
+ SceneManager::GetInstance()->GoForward(ForwardSceneTransition(IDSCN_IMPORT, SCENE_TRANSITION_ANIMATION_TYPE_LEFT), pArgs);
+ pArgs = null;
+ }
+ else
+ {
+ MessageBox msgBox;
+ msgBox.Construct(L"", ResourceManager::GetString(IDS_RSSR_BODY_FAILED_TO_IMPORT_FILE), MSGBOX_STYLE_NONE, MESSAGE_BOX_TIME_OUT);
+ int modalResult;
+ msgBox.ShowAndWait(modalResult);
+ }
+ break;
}
if (pArgs != null)
}
else
{
- // Import File
- IList* pList = ResourceManager::ParseVcsFileN(static_cast<const String&>(*pPaths->GetAt(0)));
- if (pList != null)
+ if (__pThread != null)
{
- SceneManager::GetInstance()->GoForward(ForwardSceneTransition(IDSCN_IMPORT, SCENE_TRANSITION_ANIMATION_TYPE_LEFT), pList);
- }
- else
- {
- MessageBox msgBox;
- msgBox.Construct(L"", ResourceManager::GetString(IDS_RSSR_BODY_FAILED_TO_IMPORT_FILE), MSGBOX_STYLE_NONE, MESSAGE_BOX_TIME_OUT);
- int modalResult;
- msgBox.ShowAndWait(modalResult);
+ __pThread->Join();
+ delete __pThread;
}
+
+ // Import File
+ AsyncVcsParser* pAsyncVcsParser = new (std::nothrow) AsyncVcsParser();
+ pAsyncVcsParser->Initialize(static_cast<const String&>(*pPaths->GetAt(0)), this);
+ __pThread = pAsyncVcsParser;
+ __pThread->Start();
}
}
}
{
case IMPORT_EXPORT_ITEM_IMPORT:
{
+ if (__pProgressPopup == null)
+ {
+ __pProgressPopup = new (std::nothrow) ProgressPopup();
+ __pProgressPopup->Construct(false, false);
+ }
+ __pProgressPopup->SetShowState(true);
+ __pProgressPopup->Show();
+
String mimeType = MIME_TYPE_VCALENDAR;
AppControl* pApp = AppManager::FindAppControlN(AppId(L"tizen.filemanager"), ID_OPERATION_PICK);
if (pApp != null)
TaskDetailsForm::OnTerminating(void)
{
delete __pTask;
- delete __pCalendarSelectorPopup;
+ if (__pCalendarSelectorPopup != null)
+ {
+ __pCalendarSelectorPopup->Destroy();
+ }
return E_SUCCESS;
}
if (date > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- date.SetValue(minDate.GetYear(), date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(minDate.GetYear() + 1, date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pCalendarPanel->Initialize(Rectangle(0, 0, GetWidth(), GetHeight()), date,
__pBitmapWeekText, __pBitmapWeekdayText, __pBitmapHolidayText, __pBitmapTodayText, __pBitmapFocus);
if (date < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- date.SetValue(maxDate.GetYear(), date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(maxDate.GetYear() - 1, date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pCalendarPanel->Initialize(Rectangle(0, 0, GetWidth(), GetHeight()), date,
__pBitmapWeekText, __pBitmapWeekdayText, __pBitmapHolidayText, __pBitmapTodayText, __pBitmapFocus);
if (date < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- date.SetValue(maxDate.GetYear(), date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(maxDate.GetYear() - 1, date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->SetDate(date);
pPanel->RequestRedraw(false);
if (date > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- date.SetValue(minDate.GetYear(), date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(minDate.GetYear() + 1, date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pPanel->SetDate(date);
pPanel->RequestRedraw(false);
if (date > Calendarbook::GetMaxDateTime())
{
DateTime minDate = Calendarbook::GetMinDateTime();
- date.SetValue(minDate.GetYear(), date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(minDate.GetYear() + 1, date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pNext->SetDate(date);
}
if (date < Calendarbook::GetMinDateTime())
{
DateTime maxDate = Calendarbook::GetMaxDateTime();
- date.SetValue(maxDate.GetYear(), date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
+ date.SetValue(maxDate.GetYear() - 1, date.GetMonth(), date.GetDay(), date.GetHour(), date.GetMinute());
}
pPreview->SetDate(date);
}