2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
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
8 // http://floralicense.org/license/
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.
17 //!Internet HistoryListForm class
18 /*@file: HistoryListForm.cpp
19 *@brief: This class defines HistoryListForm used define history
25 #include "IntBookmarkData.h"
26 #include "IntBookmarkPresentationModel.h"
27 #include "IntCommonLib.h"
28 #include "IntFaviconManager.h"
29 #include "IntHistoryListForm.h"
30 #include "IntHistoryPresentationModel.h"
31 #include "IntMultipleWindowPresentationModel.h"
32 #include "IntSceneRegister.h"
35 using namespace Tizen::App;
36 using namespace Tizen::Base;
37 using namespace Tizen::Base::Collection;
38 using namespace Tizen::Base::Runtime;
39 using namespace Tizen::Graphics;
40 using namespace Tizen::Locales;
41 using namespace Tizen::Media;
42 using namespace Tizen::Ui;
43 using namespace Tizen::Ui::Controls;
44 using namespace Tizen::Ui::Scenes;
45 using namespace Tizen::System;
47 static const wchar_t* IDB_TAB_ICON_BOOKMARKS = L"I01_search_list_icon_favorite.png";
48 static const wchar_t* IDB_TAB_ICON_HISTORY =L"I01_search_list_icon_history.png";
49 static const wchar_t* IDB_ICON_BOOKMARK_ON_TEMP = L"00_icon_favorite_on_74x74.png";
50 static const wchar_t* IDB_ICON_BOOKMARK_OFF_TEMP = L"00_icon_favorite_off_74x74.png";
53 const int HistoryListForm::IDA_TABBAR_ITEM_1 = 101;
54 const int HistoryListForm::IDA_TABBAR_ITEM_2 = 102;
55 const int HistoryListForm::IDA_EDIT_HISTORY_LIST_FORM = 103;
56 const int HistoryListForm::IDA_FORMAT_ICON = 104;
57 const int HistoryListForm::IDA_FORMAT_TITLE = 105;
58 const int HistoryListForm::IDA_FORMAT_URL = 106;
59 const int HistoryListForm::IDA_FORMAT_BOOKMARK = 107;
62 HistoryListForm::HistoryListForm(void)
64 __pBookmarkList = null;
65 __pGroupedListView =null;
66 __pSearchListView = null;
69 __pSearchedData = null ;
70 __searchHistory = false;
71 __isNoHistoryPresent = true;
73 __previousSceneId = L"";
76 HistoryListForm::~HistoryListForm(void)
78 if (__pGroupData != null)
80 __pGroupData->RemoveAll(false);
83 if(__pBookmarkList != null)
85 __pBookmarkList->RemoveAll(false);
86 delete __pBookmarkList;
88 if (__pSearchListView)
90 delete __pSearchListView;
91 __pSearchListView = null;
96 HistoryListForm::Initialize(void)
98 Construct(L"IDL_HISTORY_LIST");
104 HistoryListForm::OnInitializing(void)
106 AppLog("HistoryListForm::OnInitializing");
107 result r = E_SUCCESS;
108 SceneManager* pSceneManager = null;
111 Header *pHeader = GetHeader();
112 Bitmap *pIconBitmap = null;
113 AppResource* pAppResource = UiApp::GetInstance()->GetAppResource();
114 const Color brown = Color(32, 32, 32, 0xFF);
115 // bool isHwBackButtonExist = false;
116 // Tizen::System::SystemInfo::GetValue(L"http:://tizen.org/feature/input.back.key",isHwBackButtonExist);
118 // SetFormStyle(FORM_STYLE_INDICATOR | FORM_STYLE_HEADER | FORM_STYLE_FOOTER);
119 // Setup back event listener
120 SetFormBackEventListener(this);
122 GetHeader()->AddActionEventListener(*this);
123 GetFooter()->AddActionEventListener(*this);
125 // if(isHwBackButtonExist)
127 // GetFooter()->SetBackButtonEnabled(false);
129 AddOrientationEventListener(*this);
130 SettingInfo::AddSettingEventListener(*this);
132 pSceneManager = SceneManager::GetInstance();
133 if (pSceneManager != null)
135 pSceneManager->AddSceneEventListener(IDSCN_HISTORY_LIST, *this);
138 __fontSize = CommonUtil::GetFontSize();
139 if (pAppResource == null)
144 __pGroupedListView = static_cast< GroupedListView* >(GetControl(L"IDC_GROUPEDLISTVIEW1"));
145 if (__pGroupedListView == null)
150 r = __pGroupedListView->SetItemProvider(*this);
157 __pSearchBar = static_cast< SearchBar* >(GetControl(L"IDC_SEARCHBAR1"));
158 if (__pSearchBar == null)
162 __pSearchBar->AddFocusEventListener(*this);
163 __pSearchListView = new(std::nothrow) GroupedListView();
164 if (__pSearchListView == null)
169 __pGroupedListView->AddGroupedListViewItemEventListener(*this);
170 r = __pGroupedListView->SetBounds(Rectangle(0,__pGroupedListView->GetY(),GetClientAreaBounds().width,GetClientAreaBounds().height - __pSearchBar->GetHeight() - __pSearchBar->GetY()));
175 r = __pSearchListView->Construct(Rectangle(0,0, GetClientAreaBounds().width, GetClientAreaBounds().height -__pSearchBar->GetHeight() - __pSearchBar->GetY()), GROUPED_LIST_VIEW_STYLE_INDEXED, true, false);
180 r = __pSearchListView->SetItemProvider(*this);
185 r = __pSearchListView->SetTextOfEmptyList(CommonUtil::GetString(L"IDS_BR_BODY_NO_RESULTS_FOUND"));
192 __pSearchListView->SetBackgroundColor(GetBackgroundColor());
193 __pSearchListView->SetTextColorOfEmptyList(Color::GetColor(COLOR_ID_BLACK));
194 __pSearchListView->AddGroupedListViewItemEventListener(*this);
195 r = __pSearchListView->SetShowState(false);
202 __pSearchBar->AddSearchBarEventListener(*this);
203 __pSearchBar->AddKeypadEventListener(*this);
204 r = __pSearchBar->SetContent(__pSearchListView);
208 pHeader->SetStyle(HEADER_STYLE_TAB);
209 bookmark.Construct(IDA_TABBAR_ITEM_1);
211 pAppResource->GetString(L"IDS_BR_TAB_BOOKMARKS", strbookmark);
212 bookmark.SetText(strbookmark);
213 pIconBitmap = pAppResource->GetBitmapN(IDB_TAB_ICON_BOOKMARKS);
214 bookmark.SetIcon(HEADER_ITEM_STATUS_NORMAL, pIconBitmap);
215 bookmark.SetIcon(HEADER_ITEM_STATUS_PRESSED, pIconBitmap);
216 pHeader->AddItem(bookmark);
224 history.Construct(IDA_TABBAR_ITEM_2);
226 pAppResource->GetString(L"IDS_BR_TAB_HISTORY", strhistory);
227 history.SetText(strhistory);
228 pIconBitmap = pAppResource->GetBitmapN(IDB_TAB_ICON_HISTORY);
229 history.SetIcon(HEADER_ITEM_STATUS_NORMAL, pIconBitmap);
230 history.SetIcon(HEADER_ITEM_STATUS_PRESSED, pIconBitmap);
231 pHeader->AddItem(history);
232 pHeader->SetItemSelected(1);
233 pHeader->SetTabEditModeEnabled(false);
235 if (pIconBitmap != NULL)
241 __pBookmarkList = new(std::nothrow) Collection::ArrayList();
242 __pBookmarkList->Construct();
243 BookmarkPresentationModel::GetInstance()->GetBookmarkForHistory(0,*__pBookmarkList);
248 HistoryListForm::OnTerminating(void)
250 result r = E_SUCCESS;
252 SettingInfo::RemoveSettingEventListener(*this);
257 HistoryListForm::OnActionPerformed(const Control& source, int actionId)
259 AppLog("HistoryListForm::OnActionPerformed");
260 result r = E_FAILURE;
261 SceneManager* pSceneManager = SceneManager::GetInstance();
262 if (pSceneManager == null)
268 case IDA_EDIT_HISTORY_LIST_FORM:
270 AppLog("ID_EDIT_HISTORY_LIST_FORM entered");
271 r = pSceneManager->GoForward(ForwardSceneTransition(IDSCN_EDIT_HISTORY_LIST, SCENE_TRANSITION_ANIMATION_TYPE_LEFT));
278 case IDA_TABBAR_ITEM_1:
280 // result r = GetHeader()->SetItemSelected(1);
281 // AppLog("SetItemSelected result %s",GetErrorMessage(r));
282 // GetHeader()->Invalidate(true);
284 if (pSceneManager != null)
286 if(__previousSceneId.CompareTo(IDSCN_BOOKMARK_VIEW) != 0)
288 if(pSceneManager->GoForward(ForwardSceneTransition(IDSCN_BOOKMARK_VIEW, SCENE_TRANSITION_ANIMATION_TYPE_LEFT)) != E_SUCCESS)
290 AppLogDebug("BookmarkListForm::OnActionPerformed GoForward failed");
296 if(pSceneManager->GoBackward(BackwardSceneTransition(SCENE_TRANSITION_ANIMATION_TYPE_RIGHT))!= E_SUCCESS)
298 AppLogDebug("BookmarkListForm::OnActionPerformed GoBackward failed");
312 HistoryListForm::OnFocusGained(const Tizen::Ui::Control& source)
314 __pSearchListView->SetEnabled(false);
318 HistoryListForm::OnFocusLost(const Tizen::Ui::Control& source)
320 __pSearchListView->SetEnabled(true);
321 __searchHistory = false;
324 HistoryListForm::OnFormBackRequested(Form& source)
326 SceneManager* pSceneManager = SceneManager::GetInstance();
327 if (pSceneManager == null)
331 result r = E_FAILURE;
332 if(__previousSceneId.CompareTo(IDSCN_BOOKMARK_VIEW) != 0)
334 r = pSceneManager->GoBackward(BackwardSceneTransition());
338 r = pSceneManager->GoBackward(BackwardSceneTransition(SCENE_TRANSITION_ANIMATION_TYPE_RIGHT));
342 AppLogDebug("HistoryListForm::OnFormBackRequested GoForward failed %s",GetErrorMessage(r));
347 HistoryListForm::CreateGroupItem(int groupIndex, int itemWidth)
349 result r = E_FAILURE;
355 GroupItem* pItem = null;
356 GroupItemClass* pGroupItemClass = null;
358 String weeksAgo2 = L"";
359 weeksAgo2.Format(25,CommonUtil::GetString(L"IDS_EMAIL_BODY_PD_WEEKS_AGO").GetPointer(),2);
361 String weeksAgo3 = L"";
362 weeksAgo3.Format(25,CommonUtil::GetString(L"IDS_EMAIL_BODY_PD_WEEKS_AGO").GetPointer(),3);
364 String weeksAgo4 = L"";
365 weeksAgo4.Format(25,CommonUtil::GetString(L"IDS_EMAIL_BODY_PD_WEEKS_AGO").GetPointer(),4);
367 pItem = new(std::nothrow) GroupItem();
372 pGroupItemClass = dynamic_cast< GroupItemClass* >(__pGroupData->GetAt(groupIndex));
374 if (pGroupItemClass == null || pGroupItemClass->GetHistoryData() == null || pGroupItemClass->GetHistoryData()->GetCount() == 0)
376 AppLog("CreateGroupItem :: if history is null");
377 r = pItem->Construct(Dimension(itemWidth, 0));
378 __pGroupedListView->SetItemEnabled(groupIndex, -1, false);
383 r = pItem->Construct(Dimension(itemWidth, 48));
385 text = pGroupItemClass->GetTitleText();
387 if (__searchHistory == false)
391 if (pGroupItemClass->GetTitleText() == CommonUtil::GetString(L"IDS_COM_BODY_TODAY") || pGroupItemClass->GetTitleText() == CommonUtil::GetString(L"IDS_COM_BODY_YESTERDAY"))
394 Calendar* pGregorianCalendar = Calendar::CreateInstanceN(CALENDAR_GREGORIAN);
395 if ( pGregorianCalendar != NULL)
397 r = pGregorianCalendar->SetTimeField(TIME_FIELD_YEAR, pGroupItemClass->GetStartTime().GetYear());
404 delete pGregorianCalendar;
407 r = pGregorianCalendar->SetTimeField(TIME_FIELD_MONTH, pGroupItemClass->GetStartTime().GetMonth());
414 delete pGregorianCalendar;
417 r = pGregorianCalendar->SetTimeField(TIME_FIELD_DAY_OF_MONTH, pGroupItemClass->GetStartTime().GetDay());
424 delete pGregorianCalendar;
427 dayOfWeek = pGregorianCalendar->GetTimeField(TIME_FIELD_DAY_OF_WEEK);
428 if (pGregorianCalendar != NULL)
430 delete pGregorianCalendar;
437 text.Append(CommonUtil::GetString(L"IDS_COM_BODY_SUN"));
440 text.Append(CommonUtil::GetString(L"IDS_COM_BODY_MON"));
443 text.Append(CommonUtil::GetString(L"IDS_COM_BODY_TUE"));
446 text.Append(CommonUtil::GetString(L"IDS_COM_BODY_WED"));
449 text.Append(CommonUtil::GetString(L"IDS_COM_BODY_THU"));
452 text.Append(CommonUtil::GetString(L"IDS_COM_BODY_FRI"));
455 text.Append(CommonUtil::GetString(L"IDS_COM_BODY_SAT"));
463 if (pGroupItemClass->GetTitleText() != CommonUtil::GetString(L"IDS_BR_BODY_OLDER"))
465 text.Append(pGroupItemClass->GetStartTime().GetDay());
467 strMonth = pGroupItemClass->GetStartTime().GetMonth();
468 month = GetMonth(strMonth);
478 if (pGroupItemClass->GetTitleText() == CommonUtil::GetString(L"IDS_BR_BODY_LAST_WEEK") || pGroupItemClass->GetTitleText() == weeksAgo2
479 || pGroupItemClass->GetTitleText() == weeksAgo3 || pGroupItemClass->GetTitleText() == weeksAgo4 || pGroupItemClass->GetTitleText() == CommonUtil::GetString(L"IDS_BR_EARLIER_THIS_MONTH") || pGroupItemClass->GetTitleText() == CommonUtil::GetString(L"IDS_BR_BODY_LAST_MONTH") || pGroupItemClass->GetTitleText() == CommonUtil::GetString(L"IDS_BR_BODY_OLDER"))
482 text.Append(pGroupItemClass->GetEndTime().GetDay());
484 strMonth = pGroupItemClass->GetEndTime().GetMonth();
485 month = GetMonth(strMonth);
491 r = pItem->SetElement(text, null);
495 AppLogDebug("Failed with %s", GetErrorMessage(r));
498 r = pItem->SetTextSize(32);
504 __pGroupedListView->SetItemEnabled(groupIndex, -1, false);
510 HistoryListForm::CreateItem(int groupIndex, int itemIndex, int itemWidth)
512 AppLog("HistoryListForm::CreateItem");
513 result r = E_FAILURE;
514 History* pHistory = null;
515 Bitmap* pBitmap = null;
516 Bitmap* pBookmarkBitmap = null;
517 GroupItemClass* pGroupItemClass = null;
518 CustomItem* pItem = new(std::nothrow) CustomItem();
519 int bookmarkBtnWidth = 0;
522 Image* pImage = null;
523 pImage = new Image();
526 if(__pGroupData == null)
538 pGroupItemClass = dynamic_cast< GroupItemClass* >(__pGroupData->GetAt(groupIndex));
539 if (pGroupItemClass == null)
545 if (pGroupItemClass->GetHistoryData() == null)
551 pHistory = dynamic_cast< History* >(pGroupItemClass->GetHistoryData()->GetAt(itemIndex));
552 if (pHistory == null)
558 r = pItem->Construct(Dimension(itemWidth, 128 - 44 + __fontSize), LIST_ANNEX_STYLE_NORMAL);
566 ByteBuffer* pFavIconBuffer = null;
567 pFavIconBuffer = pHistory->GetFavIconBuffer();
569 AppLog("BookmarkListForm::CreateItem check 0");
571 if (pFavIconBuffer != null)
573 AppLog("BookmarkListForm::CreateItem pFavIconBuffer is not null");
577 AppLog("BookmarkListForm::CreateItem pFavIconBuffer is null");
580 pBitmap = pImage->DecodeN(*pFavIconBuffer, IMG_FORMAT_PNG, BITMAP_PIXEL_FORMAT_ARGB8888);
582 AppLog("BookmarkListForm::CreateItem check 1");
584 //bitmapId = pHistory->GetFaviconId() ;
585 //pBitmap = pHistory->GetFavIconBitmap();
589 pBitmap = FaviconManager::GetInstance()->GetDefaultFaviconN();
593 AppLog("rrrr:: width %d height %d of the faviconbitmap",pBitmap->GetWidth(),pBitmap->GetHeight());
594 r = pItem->AddElement(Rectangle(16, 28 + (__fontSize - 44)/2,72, 72), IDA_FORMAT_ICON, *pBitmap, null);
600 AppLogException("CreateItem failed with %s", GetErrorMessage(r));
604 bool urlFoundInBookmark = false;
606 // if(__pBookmarkList != null)
608 // for (int i = 0; i < __pBookmarkList->GetCount();i++)
610 // BookmarkData* pBookMark = dynamic_cast< BookmarkData* >(__pBookmarkList->GetAt(i));
611 // if(pBookMark != null && pHistory->GetHistoryUrl().CompareTo(pBookMark->GetUrl()) == 0)
613 // urlFoundInBookmark = true;
618 BookmarkPresentationModel::GetInstance()->DoesBookmarkExist(pHistory->GetHistoryUrl(),urlFoundInBookmark);
619 if (urlFoundInBookmark == true)
621 pBookmarkBitmap = AppResource::GetInstance()->GetBitmapN(IDB_ICON_BOOKMARK_ON_TEMP);
625 pBookmarkBitmap = AppResource::GetInstance()->GetBitmapN(IDB_ICON_BOOKMARK_OFF_TEMP);
627 bookmarkBtnWidth = 74;
630 r = pItem->AddElement(Rectangle(104, 10, GetClientAreaBounds().width - 108 - 32 - bookmarkBtnWidth - 32, 60 - 44 + __fontSize), IDA_FORMAT_TITLE, pHistory->GetHistoryTitle(), __fontSize,CUSTOM_COLOR_TRANSPARENT,CUSTOM_COLOR_TRANSPARENT,CUSTOM_COLOR_TRANSPARENT,true);
631 TryCatch(!IsFailed(r), "CreateItem failed with %s",GetErrorMessage(r));
633 // if(__pSearchBar->GetMode() == SEARCH_BAR_MODE_INPUT)
634 // r = pItem->AddElement(Rectangle(104, 70, GetClientAreaBounds().width - 108 - 32 - bookmarkBtnWidth - 32, 48), IDA_FORMAT_URL, pHistory->GetHistoryUrl(),32,CUSTOM_COLOR_TRANSPARENT,CUSTOM_COLOR_TRANSPARENT,CUSTOM_COLOR_TRANSPARENT,true);
636 r = pItem->AddElement(Rectangle(104, 70 - 44 +__fontSize, GetClientAreaBounds().width - 108 - 32 - bookmarkBtnWidth - 32, 48), IDA_FORMAT_URL, pHistory->GetHistoryUrl(),32,CUSTOM_COLOR_GREY,CUSTOM_COLOR_LISTVIEW_TEXT,CUSTOM_COLOR_LISTVIEW_TEXT,true);
637 TryCatch(!IsFailed(r), "CreateItem failed with %s",GetErrorMessage(r));
638 if ( pBookmarkBitmap != null)
640 r = pItem->AddElement(Rectangle(GetClientAreaBounds().width - bookmarkBtnWidth - 16, (128 - pBookmarkBitmap->GetHeight())/2 +(__fontSize - 44)/2, bookmarkBtnWidth, bookmarkBtnWidth), IDA_FORMAT_BOOKMARK, *pBookmarkBitmap);
641 TryCatch(!IsFailed(r), "CreateItem failed with %s",GetErrorMessage(r));
642 delete pBookmarkBitmap;
654 HistoryListForm::DeleteGroupItem(int groupIndex, GroupItem* pItem, int itemWidth)
663 HistoryListForm::DeleteItem(int groupIndex, int itemIndex, ListItemBase* pItem, int itemWidth)
665 AppLog("HistoryListForm::DeleteItem");
666 result r = E_FAILURE;
667 GroupItemClass* pGroupItemClass = dynamic_cast< GroupItemClass* >(__pGroupData->GetAt(groupIndex));
668 if (pGroupItemClass == null)
673 // if (pGroupItemClass->__pData != null)
675 // r = pGroupItemClass->__pData->RemoveAt(itemIndex);
688 HistoryListForm::GetGroupCount(void)
690 __isNoHistoryPresent = true;
692 if (__pGroupData != null)
694 if (__searchHistory == false)
699 HistoryPresentationModel::GetCurrentDateTime(endTime);
701 startTime.SetValue(0,0,0);
703 HistoryPresentationModel::GetInstance()->GetHistoryCountWithTimeRange(startTime,endTime,count);
708 return __pGroupData->GetCount();
713 if (__searchText.GetLength() > 0)
715 __searchText.Replace(L"%", L"/%");
716 __searchText.Replace(L"_", L"/_");
718 // String searchText = __pSearchBar->GetText();
719 result r = HistoryPresentationModel::GetInstance()->GetSearchHistoryCount(count, __searchText);
733 HistoryListForm::GetItemCount(int groupIndex)
735 result r = E_FAILURE;
741 GroupItemClass* pGroupItemClass = dynamic_cast< GroupItemClass* >(__pGroupData->GetAt(groupIndex));
742 if (pGroupItemClass == null)
746 if (__searchHistory == false)
748 startTime = pGroupItemClass->GetStartTime();
749 endTime = pGroupItemClass->GetEndTime();
750 r = HistoryPresentationModel::GetInstance()->GetHistoryCountWithTimeRange(startTime,endTime,count);
754 //text = __pSearchBar->GetText();
755 r = HistoryPresentationModel::GetInstance()->GetSearchHistoryCount(count,__searchText);
766 ArrayList* pData = new(std::nothrow) ArrayList();
771 r = pData->Construct();
779 if (__searchHistory == false)
781 startTime = pGroupItemClass->GetStartTime();
782 endTime = pGroupItemClass->GetEndTime();
783 AppLog("Starttime %ls endtime %ls",startTime.ToString().GetPointer(),endTime.ToString().GetPointer());
784 r = HistoryPresentationModel::GetInstance()->GetHistoryWithTimeRange(startTime,endTime, 0, count, *pData);
788 //text = __pSearchBar->GetText() ;
789 r = HistoryPresentationModel::GetInstance()->GetSearchHistory(0, count, *pData,__searchText );
796 pGroupItemClass->SetHistoryData(pData);
799 if (__isNoHistoryPresent == true && count == 0)
801 __isNoHistoryPresent = true;
802 GetFooter()->SetItemEnabled(0, false);
806 __isNoHistoryPresent = false;
807 GetFooter()->SetItemEnabled(0, true);
809 // pGroupItemClass = dynamic_cast< GroupItemClass* >(__pGroupData->GetAt(groupIndex));
810 if (pGroupItemClass == null || pGroupItemClass->GetHistoryData() == null)
817 AppLogDebug("HistoryListForm::GetItemCount returning %d for %d title %ls",pGroupItemClass->GetHistoryData()->GetCount(),groupIndex,pGroupItemClass->GetTitleText().GetPointer());
818 return pGroupItemClass->GetHistoryData()->GetCount();
823 HistoryListForm::OnSceneActivatedN(const SceneId& previousSceneId, const SceneId& currentSceneId, IList* pArgs)
825 AppLog("HistoryListForm::OnSceneActivatedN called");
827 GetHeader()->SetItemSelected(1);
828 // __previousSceneId = previousSceneId;
829 ArrayListT<String> * pList = dynamic_cast<ArrayListT<String>* >(SceneManager::GetInstance()->GetSceneHistoryN());
832 pList->GetAt(pList->GetCount()-1,__previousSceneId);
835 if(__pBookmarkList != null)
837 __pBookmarkList->RemoveAll(false);
840 BookmarkPresentationModel::GetInstance()->GetBookmarkForHistory(0,*__pBookmarkList);
842 AppLog("HistoryListForm::OnSceneActivatedN called");
843 //GetHeader()->Invalidate(true);
844 if (__pGroupData == null)
846 __pGroupData = new(std::nothrow) ArrayList();
847 __pGroupData->Construct();
849 if (__pGroupedListView != null)
851 __pGroupedListView->UpdateList();
853 if (__isNoHistoryPresent == true)
855 GetFooter()->SetItemEnabled(0, false);
859 GetFooter()->SetItemEnabled(0, true);
865 HistoryPresentationModel::GetCurrentDateTime(endTime);;
867 startTime.SetValue(0,0,0);
868 HistoryPresentationModel::GetInstance()->GetHistoryCountWithTimeRange(startTime,endTime,count);
871 __pSearchBar->SetShowState(false);
872 __pSearchBar->Invalidate(true);
876 __pSearchBar->SetShowState(true);
877 __pSearchBar->Invalidate(true);
880 // if (__isNoHistoryPresent == true)
882 // // __pGroupedListView->SetBitmapOfEmptyList(AppResource::GetInstance()->GetBitmapN(L"I01_Nocontents_Bookmarks.png"));
883 // __pGroupedListView->UpdateList();
886 result r = GetHeader()->SetItemSelected(1);
889 AppLog("HistoryListForm::OnSceneActivatedN header failed %s", GetErrorMessage(r));
900 HistoryListForm::OnSceneDeactivated(const SceneId& currentSceneId, const SceneId& nextSceneId)
902 AppLog("HistoryListForm::OnSceneDeactivated");
903 __pSearchBar->SetMode(SEARCH_BAR_MODE_NORMAL);
907 HistoryListForm::OnGroupedListViewContextItemStateChanged(GroupedListView& listView, int groupIndex, int itemIndex, int elementId, ListContextItemStatus status)
913 HistoryListForm::OnGroupedListViewItemStateChanged(GroupedListView& listView, int groupIndex, int itemIndex, int elementId, ListItemStatus status)
915 GroupItemClass* pGroupItemClass = null;
916 History* pHistory = null;
917 AppLog("int groupIndex %d, int itemIndex %d, int elementId %d, ListItemStatus status %d",groupIndex,itemIndex,elementId,status);
918 if (elementId == IDA_FORMAT_BOOKMARK)
920 String toggledUrl = L"";
921 AppLog("BookMarkStatusChanged ID_FORMAT_BOOKMARK");
922 pGroupItemClass = dynamic_cast< GroupItemClass* >(__pGroupData->GetAt(groupIndex));
923 if (pGroupItemClass == null)
927 pHistory = dynamic_cast< History* >(pGroupItemClass->GetHistoryData()->GetAt(itemIndex));
928 if (pHistory == null)
932 toggledUrl = pHistory->GetHistoryUrl();
934 AppLog("History's Bookmark ID %ls ToggledUrl %ls",pHistory->GetBookmarkId().GetPointer(),toggledUrl.GetPointer());
936 bool bookmarkFound = false;
937 BookmarkData* pBookMark = null;
938 // if(__pBookmarkList != null)
940 // for (int i = 0; i < __pBookmarkList->GetCount(); i++)
942 // pBookMark = dynamic_cast< BookmarkData* >(__pBookmarkList->GetAt(i));
943 // if (pBookMark != null && toggledUrl.CompareTo(pBookMark->GetUrl()) == 0)
945 // bookmarkFound = true;
950 BookmarkPresentationModel::GetInstance()->DoesBookmarkExist(toggledUrl,bookmarkFound);
951 if(bookmarkFound == false)
953 // Add the history in bookmark database
954 result r = E_FAILURE;
955 BookmarkData bookmark;
957 String bookmarkTitle = pHistory->GetHistoryTitle();
959 bookmark.SetBookmarkTitle(bookmarkTitle);
960 bookmark.SetUrl(pHistory->GetHistoryUrl());
961 bookmark.SetFaviconId(pHistory->GetFaviconId());
962 if(pHistory->GetFavIconBuffer())
964 ByteBuffer *pBuffer = new ByteBuffer();
966 pBuffer->Construct(*pHistory->GetFavIconBuffer());
967 bookmark.SetFavIconBuffer(*pBuffer);
969 //r = BookmarkPresentationModel::GetInstance()->SaveBookmark(pBookmark);
970 r = BookmarkPresentationModel::GetInstance()->SaveTempBookmark(bookmark);
974 // remove the history from bookmark database
975 BookmarkPresentationModel::GetInstance()->DeleteBookmark(toggledUrl);
978 if(__pBookmarkList != null)
980 __pBookmarkList->RemoveAll(false);
981 BookmarkPresentationModel::GetInstance()->GetBookmarkForHistory(0,*__pBookmarkList);
983 listView.RefreshList(groupIndex,itemIndex,LIST_REFRESH_TYPE_ITEM_MODIFY);
984 listView.UpdateList();
988 AppLog("vinay :: __pGroupData->getcount %d",__pGroupData->GetCount());
989 pGroupItemClass = dynamic_cast< GroupItemClass* >(__pGroupData->GetAt(groupIndex));
990 if (pGroupItemClass == null)
995 AppLog("vinay :: __pGroupData->getcount %d",pGroupItemClass->GetHistoryData()->GetCount());
996 History* pHistory1 = dynamic_cast< History* >(pGroupItemClass->GetHistoryData()->GetAt(itemIndex));
997 if (pHistory1 == null)
1001 SceneManager* pSceneManager = SceneManager::GetInstance();
1002 ArrayList *pArgList = null;
1003 result r = E_SUCCESS;
1004 pArgList = new(std::nothrow) ArrayList();
1005 if (pArgList != null)
1007 r = pArgList->Construct();
1014 r = pArgList->Add(*MultipleWindowPresentationModel::GetInstance()->GetActiveWindowInfo());
1015 r = pArgList->Add(*new(std::nothrow) String(pHistory1->GetHistoryUrl()));
1025 String scneId = L"";
1026 MultipleWindowPresentationModel::GetInstance()->GetCurrentSceneId(scneId);
1028 if (pSceneManager != null)
1030 AppLog("pSceneManager exists");
1031 r = SceneManager::GetInstance()->GoForward(ForwardSceneTransition(scneId), pArgList);
1034 pArgList->RemoveAll(false);
1047 HistoryListForm::OnGroupedListViewItemSwept(GroupedListView& listView, int groupIndex, int itemIndex, SweepDirection direction)
1053 HistoryListForm::OnSearchBarModeChanged(SearchBar& source, SearchBarMode mode)
1055 result r = E_FAILURE;
1057 __pSearchListView->SetBounds(__pSearchListView->GetX(), __pSearchListView->GetY(), __pSearchListView->GetWidth(), GetClientAreaBounds().height - __pSearchBar->GetHeight());
1058 __pSearchListView->Invalidate(false);
1060 if (mode == SEARCH_BAR_MODE_NORMAL)
1062 if ( Clipboard::GetInstance()->IsPopupVisible() == false && __searchHistory == false)
1064 __pSearchListView->SetEnabled(true);
1067 r = __pSearchListView->SetShowState(false);
1072 r = __pGroupedListView->SetShowState(true);
1078 __pSearchListView->SetEnabled(true);
1079 if(__pSearchBar != null)
1080 __pGroupedListView->SetBounds(0, __pSearchBar->GetY() + __pSearchBar->GetHeight(), GetClientAreaBounds().width, GetClientAreaBounds().height - __pSearchBar->GetHeight());
1082 __searchHistory = false;
1083 r = __pGroupedListView->UpdateList();//needed to update the value of __pGroupData
1084 if (__isNoHistoryPresent == true)
1086 GetFooter()->SetItemEnabled(0, false);
1090 GetFooter()->SetItemEnabled(0, true);
1092 if(__pSearchBar != null)
1094 __pSearchBar->SetContentAreaSize(Dimension(__pSearchListView->GetWidth(), __pSearchListView->GetHeight()));
1104 // __pSearchListView->SetEnabled(false);
1105 r = __pSearchListView->SetShowState(true);
1110 __pSearchListView->SetEnabled(false);
1111 r = __pSearchListView->UpdateList();
1116 r = __pGroupedListView->SetShowState(false);
1121 if(__pSearchBar != null)
1123 __pSearchBar->SetContentAreaSize(Dimension(__pSearchListView->GetWidth(), __pSearchListView->GetHeight()));
1129 HistoryListForm::GetMonth(int month)
1131 String monthValue = L"";
1135 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_JAN"));
1138 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_FEB"));
1141 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_MAR"));
1144 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_APRIL"));
1147 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_MAY"));
1150 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_JUNE"));
1153 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_JUL"));
1156 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_AUG"));
1159 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_SEP"));
1162 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_OCT"));
1165 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_NOV"));
1168 monthValue.Append(CommonUtil::GetString(L"IDS_COM_BODY_DEC"));
1179 HistoryListForm::OnKeypadActionPerformed(Control &source, KeypadAction keypadAction)
1181 result r = E_FAILURE;
1182 if (__pSearchBar != null)
1184 __pSearchBar->HideKeypad();
1187 if (__pSearchBar != null && keypadAction == KEYPAD_ACTION_SEARCH)
1189 __pSearchListView->SetEnabled(true);
1190 __searchHistory = true;
1191 __searchText =__pSearchBar->GetText();
1192 AppLog("SearchTextHistory %S errormsg %s",__searchText.GetPointer(),GetErrorMessage(GetLastResult()));
1194 r = __pGroupedListView->SetShowState(false);
1199 r = __pSearchListView->SetShowState(true);
1204 r= __pSearchListView->UpdateList();
1205 if (__isNoHistoryPresent == true)
1207 GetFooter()->SetItemEnabled(0, false);
1211 GetFooter()->SetItemEnabled(0, true);
1213 __pSearchBar->SetContentAreaSize(Dimension(__pSearchListView->GetWidth(), __pSearchListView->GetHeight()));
1222 __searchHistory = false;
1228 HistoryListForm::OnKeypadBoundsChanged(Tizen::Ui::Control& source)
1230 FloatRectangle clientRect;
1231 clientRect = GetClientAreaBoundsF();
1232 AppLogDebug("SearchBarForm::OnKeypadBoundsChanged ClientBounds(%f, %f, %f, %f)",clientRect.x, clientRect.y, clientRect.width, clientRect.height);
1233 __pSearchBar->SetContentAreaSize(FloatDimension(clientRect.width, clientRect.height - __pSearchBar->GetHeightF()));
1234 __pSearchListView->SetSize(FloatDimension(clientRect.width, clientRect.height - __pSearchBar->GetHeightF()));
1235 __pGroupedListView->SetSize(FloatDimension(clientRect.width, clientRect.height - __pSearchBar->GetHeightF()));
1236 // __pGroupedListView->SetEnabled(false);
1241 HistoryListForm::OnOrientationChanged(const Control& source, OrientationStatus orientationStatus)
1243 result r = E_FAILURE;
1244 if (__pGroupedListView != null)
1246 if(__pSearchBar != null &&__pSearchBar->GetShowState())
1247 r = __pGroupedListView->SetBounds(Rectangle(0,__pSearchBar->GetY() + __pSearchBar->GetHeight()/*72 + 30*/,GetClientAreaBounds().width,GetClientAreaBounds().height - __pSearchBar->GetHeight() - __pSearchBar->GetY()));
1248 else if(__pSearchBar != null)
1249 r = __pGroupedListView->SetBounds(Rectangle(0,0,GetClientAreaBounds().width,GetClientAreaBounds().height - __pSearchBar->GetHeight() - __pSearchBar->GetY()));
1254 //__pGroupedListView->UpdateList();
1255 if (__pSearchListView != null)
1257 r = __pSearchListView->SetBounds(Rectangle(0, 0, GetClientAreaBounds().width, __pGroupedListView->GetHeight()));
1263 __pSearchListView->UpdateList();
1265 if(__pSearchBar != null)
1266 __pSearchBar->SetContentAreaSize(Dimension(__pSearchListView->GetWidth(), __pSearchListView->GetHeight()));
1269 __pGroupedListView->UpdateList();//this change is as suggested by platform team for issue N_SE-52111
1270 // if(__pGroupData != NULL)
1272 // for (int groupIndex = 0; groupIndex < __pGroupData->GetCount(); groupIndex++)
1274 // for (int itemIndex = 0; itemIndex < __pGroupedListView->GetItemCountAt(groupIndex); itemIndex++)
1276 // __pGroupedListView->RefreshList(groupIndex, itemIndex,LIST_REFRESH_TYPE_ITEM_MODIFY);
1282 if (__isNoHistoryPresent == true)
1284 GetFooter()->SetItemEnabled(0, false);
1288 GetFooter()->SetItemEnabled(0, true);
1293 HistoryListForm::OnKeypadWillOpen(Control& source)
1295 GetFooter()->SetShowState(false);
1296 __pSearchListView->SetBounds(__pSearchListView->GetX(), __pSearchListView->GetY(), GetClientAreaBounds().width, GetClientAreaBounds().height - __pSearchBar->GetHeight());
1297 __pSearchListView->SetEnabled(false);
1298 __pSearchBar->SetContentAreaSize(Dimension(__pSearchListView->GetWidth(), __pSearchListView->GetHeight()));
1304 HistoryListForm::OnKeypadOpened(Control& source)
1306 // this is added because some time footer is shown when key pad is opened, do not remove
1307 GetFooter()->SetShowState(false);
1308 GetFooter()->Invalidate(true);
1309 __pSearchListView->SetBounds(__pSearchListView->GetX(), __pSearchListView->GetY(), __pSearchListView->GetWidth(), GetClientAreaBounds().height - __pSearchBar->GetHeight());
1313 HistoryListForm::OnKeypadClosed(Control& source)
1315 // if(Clipboard::GetInstance()->IsPopupVisible() == true)
1319 GetFooter()->SetShowState(true);
1320 __pSearchListView->SetBounds(__pSearchListView->GetX(), __pSearchListView->GetY(), __pSearchListView->GetWidth(), GetClientAreaBounds().height - __pSearchBar->GetHeight());
1321 __pSearchListView->Invalidate(false);
1322 __pSearchBar->SetContentAreaSize(Dimension(__pSearchListView->GetWidth(), GetClientAreaBounds().height - __pSearchBar->GetHeight()));
1323 __pGroupedListView->SetBounds(0, __pSearchBar->GetY() + __pSearchBar->GetHeight(), GetClientAreaBounds().width, GetClientAreaBounds().height - __pSearchBar->GetHeight());
1328 HistoryListForm::CreateGroupItems()
1330 result r = E_FAILURE;
1331 DateTime currentTime;
1333 GroupItemClass* pGroupItemClass = null;
1336 String weeksAgo2 = L"";
1337 weeksAgo2.Format(25,CommonUtil::GetString(L"IDS_EMAIL_BODY_PD_WEEKS_AGO").GetPointer(),2);
1339 String weeksAgo3 = L"";
1340 weeksAgo3.Format(25,CommonUtil::GetString(L"IDS_EMAIL_BODY_PD_WEEKS_AGO").GetPointer(),3);
1342 if (__pGroupData != null)
1344 __pGroupData->RemoveAll(false);
1345 delete __pGroupData;
1346 __pGroupData = null;
1348 __pGroupData = new(std::nothrow) ArrayList();
1349 if (__pGroupData == null)
1353 r = __pGroupData->Construct();
1356 delete __pGroupData;
1357 __pGroupData = null;
1360 if (__searchHistory == true)
1362 pGroupItemClass = new(std::nothrow) GroupItemClass();
1363 if (pGroupItemClass == null)
1367 titleText = CommonUtil::GetString(L"IDS_BR_BODY_SEARCH");
1368 pGroupItemClass->SetTitleText(titleText);
1369 r = __pGroupData->Add(*pGroupItemClass);
1377 Calendar* pGregorianCalendar = null;
1380 HistoryPresentationModel::GetCurrentDateTime(currentTime);
1381 pGroupItemClass = new(std::nothrow) GroupItemClass();
1382 if (pGroupItemClass == null)
1386 titleText = CommonUtil::GetString(L"IDS_COM_BODY_TODAY");
1387 pGroupItemClass->SetTitleText(titleText);
1388 pGroupItemClass->SetEndTime(currentTime);
1389 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), currentTime.GetDay());
1390 pGroupItemClass->SetStartTime(dateTime);
1391 __pGroupData->Add(*pGroupItemClass);
1394 pGregorianCalendar = Calendar::CreateInstanceN(CALENDAR_GREGORIAN);
1395 if ( pGregorianCalendar != NULL )
1397 pGregorianCalendar->SetTimeField(TIME_FIELD_YEAR, currentTime.GetYear());
1398 pGregorianCalendar->SetTimeField(TIME_FIELD_MONTH, currentTime.GetMonth());
1399 pGregorianCalendar->SetTimeField(TIME_FIELD_DAY_OF_MONTH, currentTime.GetDay());
1400 dayOfWeek = pGregorianCalendar->GetTimeField(TIME_FIELD_DAY_OF_WEEK);
1401 delete pGregorianCalendar;
1406 pGroupItemClass = new(std::nothrow) GroupItemClass();
1407 if (pGroupItemClass == null)
1411 titleText = CommonUtil::GetString(L"IDS_BR_BODY_LAST_WEEK");
1412 pGroupItemClass->SetTitleText(titleText);
1413 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), currentTime.GetDay());
1414 pGroupItemClass->SetEndTime(dateTime);
1415 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1416 dateTime.AddDays(currentTime.GetDay() - 6 - 1);
1417 pGroupItemClass->SetStartTime(dateTime);
1418 __pGroupData->Add(*pGroupItemClass);
1421 pGroupItemClass = new(std::nothrow) GroupItemClass();
1422 if (pGroupItemClass == null)
1426 titleText = CommonUtil::GetString(L"IDS_BR_BODY_LAST_WEEK");
1427 pGroupItemClass->SetTitleText(titleText);
1428 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), currentTime.GetDay());
1429 pGroupItemClass->SetEndTime(dateTime);
1430 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1431 dateTime.AddDays(currentTime.GetDay() - 7 - 1);
1432 pGroupItemClass->SetStartTime(dateTime);
1433 __pGroupData->Add(*pGroupItemClass);
1436 pGroupItemClass = new(std::nothrow) GroupItemClass();
1437 if (pGroupItemClass == null)
1441 titleText = CommonUtil::GetString(L"IDS_COM_BODY_YESTERDAY");
1442 pGroupItemClass->SetTitleText(titleText);
1443 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), currentTime.GetDay());
1444 pGroupItemClass->SetEndTime(dateTime);
1445 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1446 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1447 pGroupItemClass->SetStartTime(dateTime);
1448 __pGroupData->Add(*pGroupItemClass);
1450 pGroupItemClass = new(std::nothrow) GroupItemClass();
1451 if (pGroupItemClass == null)
1455 titleText = CommonUtil::GetString(L"IDS_BR_BODY_LAST_WEEK");
1456 pGroupItemClass->SetTitleText(titleText);
1457 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1458 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1459 pGroupItemClass->SetEndTime(dateTime);
1460 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1461 dateTime.AddDays(currentTime.GetDay() - 8 - 1);
1462 pGroupItemClass->SetStartTime(dateTime);
1463 __pGroupData->Add(*pGroupItemClass);
1466 pGroupItemClass = new(std::nothrow) GroupItemClass();
1467 if (pGroupItemClass == null)
1471 titleText = CommonUtil::GetString(L"IDS_COM_BODY_YESTERDAY");
1472 pGroupItemClass->SetTitleText(titleText);
1473 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), currentTime.GetDay());
1474 pGroupItemClass->SetEndTime(dateTime);
1475 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1476 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1477 pGroupItemClass->SetStartTime(dateTime);
1478 __pGroupData->Add(*pGroupItemClass);
1480 pGroupItemClass = new(std::nothrow) GroupItemClass();
1481 if (pGroupItemClass == null)
1485 titleText = CommonUtil::GetString(L"IDS_COM_BODY_MON");
1486 pGroupItemClass->SetTitleText(titleText);
1487 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1488 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1489 pGroupItemClass->SetEndTime(dateTime);
1490 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1491 dateTime.AddDays(currentTime.GetDay() - 2 - 1);
1492 pGroupItemClass->SetStartTime(dateTime);
1493 __pGroupData->Add(*pGroupItemClass);
1495 pGroupItemClass = new(std::nothrow) GroupItemClass();
1496 if (pGroupItemClass == null)
1500 titleText = CommonUtil::GetString(L"IDS_BR_BODY_LAST_WEEK");
1501 pGroupItemClass->SetTitleText(titleText);
1502 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1503 dateTime.AddDays(currentTime.GetDay() - 2 - 1);
1504 pGroupItemClass->SetEndTime(dateTime);
1505 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1506 dateTime.AddDays(currentTime.GetDay() - 9 - 1);
1507 pGroupItemClass->SetStartTime(dateTime);
1508 __pGroupData->Add(*pGroupItemClass);
1511 pGroupItemClass = new(std::nothrow) GroupItemClass();
1512 if (pGroupItemClass == null)
1516 titleText = CommonUtil::GetString(L"IDS_COM_BODY_YESTERDAY");
1517 pGroupItemClass->SetTitleText(titleText);
1518 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), currentTime.GetDay());
1519 pGroupItemClass->SetEndTime(dateTime);
1520 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1521 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1522 pGroupItemClass->SetStartTime(dateTime);
1523 __pGroupData->Add(*pGroupItemClass);
1525 pGroupItemClass = new(std::nothrow) GroupItemClass();
1526 if (pGroupItemClass == null)
1530 titleText = CommonUtil::GetString(L"IDS_COM_BODY_TUE");
1531 pGroupItemClass->SetTitleText(titleText);
1532 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1533 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1534 pGroupItemClass->SetEndTime(dateTime);
1535 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1536 dateTime.AddDays(currentTime.GetDay() - 2 - 1);
1537 pGroupItemClass->SetStartTime(dateTime);
1538 __pGroupData->Add(*pGroupItemClass);
1540 pGroupItemClass = new(std::nothrow) GroupItemClass();
1541 if (pGroupItemClass == null)
1545 titleText = CommonUtil::GetString(L"IDS_COM_BODY_MON");
1546 pGroupItemClass->SetTitleText(titleText);
1547 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1548 dateTime.AddDays(currentTime.GetDay() - 2 - 1);
1549 pGroupItemClass->SetEndTime(dateTime);
1550 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1551 dateTime.AddDays(currentTime.GetDay() - 3 - 1);
1552 pGroupItemClass->SetStartTime(dateTime);
1553 __pGroupData->Add(*pGroupItemClass);
1555 pGroupItemClass = new(std::nothrow) GroupItemClass();
1556 if (pGroupItemClass == null)
1560 titleText = CommonUtil::GetString(L"IDS_BR_BODY_LAST_WEEK");
1561 pGroupItemClass->SetTitleText(titleText);
1562 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1563 dateTime.AddDays(currentTime.GetDay() - 3 - 1);
1564 pGroupItemClass->SetEndTime(dateTime);
1565 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1566 dateTime.AddDays(currentTime.GetDay() - 10 - 1);
1567 pGroupItemClass->SetStartTime(dateTime);
1568 __pGroupData->Add(*pGroupItemClass);
1571 pGroupItemClass = new(std::nothrow) GroupItemClass();
1572 if (pGroupItemClass == null)
1576 titleText = CommonUtil::GetString(L"IDS_COM_BODY_YESTERDAY");
1577 pGroupItemClass->SetTitleText(titleText);
1578 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), currentTime.GetDay());
1579 pGroupItemClass->SetEndTime(dateTime);
1580 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1581 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1582 pGroupItemClass->SetStartTime(dateTime);
1583 __pGroupData->Add(*pGroupItemClass);
1585 pGroupItemClass = new(std::nothrow) GroupItemClass();
1586 if (pGroupItemClass == null)
1590 titleText = CommonUtil::GetString(L"IDS_COM_BODY_WED");
1591 pGroupItemClass->SetTitleText(titleText);
1592 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1593 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1594 pGroupItemClass->SetEndTime(dateTime);
1595 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1596 dateTime.AddDays(currentTime.GetDay() - 2 - 1);
1597 pGroupItemClass->SetStartTime(dateTime);
1598 __pGroupData->Add(*pGroupItemClass);
1600 pGroupItemClass = new(std::nothrow) GroupItemClass();
1601 if (pGroupItemClass == null)
1605 titleText = CommonUtil::GetString(L"IDS_COM_BODY_TUE");
1606 pGroupItemClass->SetTitleText(titleText);
1607 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1608 dateTime.AddDays(currentTime.GetDay() - 2 - 1);
1609 pGroupItemClass->SetEndTime(dateTime);
1610 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1611 dateTime.AddDays(currentTime.GetDay() - 3 - 1);
1612 pGroupItemClass->SetStartTime(dateTime);
1613 __pGroupData->Add(*pGroupItemClass);
1615 pGroupItemClass = new(std::nothrow) GroupItemClass();
1616 if (pGroupItemClass == null)
1620 titleText = CommonUtil::GetString(L"IDS_COM_BODY_MON");
1621 pGroupItemClass->SetTitleText(titleText);
1622 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1623 dateTime.AddDays(currentTime.GetDay() - 3 - 1);
1624 pGroupItemClass->SetEndTime(dateTime);
1625 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1626 dateTime.AddDays(currentTime.GetDay() - 4 - 1);
1627 pGroupItemClass->SetStartTime(dateTime);
1628 __pGroupData->Add(*pGroupItemClass);
1630 pGroupItemClass = new(std::nothrow) GroupItemClass();
1631 if (pGroupItemClass == null)
1635 titleText = CommonUtil::GetString(L"IDS_BR_BODY_LAST_WEEK");
1636 pGroupItemClass->SetTitleText(titleText);
1637 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1638 dateTime.AddDays(currentTime.GetDay() - 4 - 1);
1639 pGroupItemClass->SetEndTime(dateTime);
1640 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1641 dateTime.AddDays(currentTime.GetDay() - 11 - 1);
1642 pGroupItemClass->SetStartTime(dateTime);
1643 __pGroupData->Add(*pGroupItemClass);
1646 pGroupItemClass = new(std::nothrow) GroupItemClass();
1647 if (pGroupItemClass == null)
1651 titleText = CommonUtil::GetString(L"IDS_COM_BODY_YESTERDAY");
1652 pGroupItemClass->SetTitleText(titleText);
1653 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), currentTime.GetDay());
1654 pGroupItemClass->SetEndTime(dateTime);
1655 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1656 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1657 pGroupItemClass->SetStartTime(dateTime);
1658 __pGroupData->Add(*pGroupItemClass);
1660 pGroupItemClass = new(std::nothrow) GroupItemClass();
1661 if (pGroupItemClass == null)
1665 titleText = CommonUtil::GetString(L"IDS_COM_BODY_THU");
1666 pGroupItemClass->SetTitleText(titleText);
1667 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1668 dateTime.AddDays(currentTime.GetDay() - 1 - 1);
1669 pGroupItemClass->SetEndTime(dateTime);
1670 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1671 dateTime.AddDays(currentTime.GetDay() - 2 - 1);
1672 pGroupItemClass->SetStartTime(dateTime);
1673 __pGroupData->Add(*pGroupItemClass);
1675 pGroupItemClass = new(std::nothrow) GroupItemClass();
1676 if (pGroupItemClass == null)
1680 titleText = CommonUtil::GetString(L"IDS_COM_BODY_WED");
1681 pGroupItemClass->SetTitleText(titleText);
1682 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1683 dateTime.AddDays(currentTime.GetDay() - 2 - 1);
1684 pGroupItemClass->SetEndTime(dateTime);
1685 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1686 dateTime.AddDays(currentTime.GetDay() - 3 - 1);
1687 pGroupItemClass->SetStartTime(dateTime);
1688 __pGroupData->Add(*pGroupItemClass);
1690 pGroupItemClass = new(std::nothrow) GroupItemClass();
1691 if (pGroupItemClass == null)
1695 titleText = CommonUtil::GetString(L"IDS_COM_BODY_TUE");
1696 pGroupItemClass->SetTitleText(titleText);
1697 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1698 dateTime.AddDays(currentTime.GetDay() - 3 - 1);
1699 pGroupItemClass->SetEndTime(dateTime);
1700 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1701 dateTime.AddDays(currentTime.GetDay() - 4 - 1);
1702 pGroupItemClass->SetStartTime(dateTime);
1703 __pGroupData->Add(*pGroupItemClass);
1705 pGroupItemClass = new(std::nothrow) GroupItemClass();
1706 if (pGroupItemClass == null)
1710 titleText = CommonUtil::GetString(L"IDS_COM_BODY_MON");
1711 pGroupItemClass->SetTitleText(titleText);
1712 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1713 dateTime.AddDays(currentTime.GetDay() - 4 - 1);
1714 pGroupItemClass->SetEndTime(dateTime);
1715 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1716 dateTime.AddDays(currentTime.GetDay() - 5 - 1);
1717 pGroupItemClass->SetStartTime(dateTime);
1718 __pGroupData->Add(*pGroupItemClass);
1720 pGroupItemClass = new(std::nothrow) GroupItemClass();
1721 if (pGroupItemClass == null)
1725 titleText = CommonUtil::GetString(L"IDS_BR_BODY_LAST_WEEK");
1726 pGroupItemClass->SetTitleText(titleText);
1727 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1728 dateTime.AddDays(currentTime.GetDay() - 5 - 1);
1729 pGroupItemClass->SetEndTime(dateTime);
1730 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1731 dateTime.AddDays(currentTime.GetDay() - 12 - 1);
1732 pGroupItemClass->SetStartTime(dateTime);
1733 __pGroupData->Add(*pGroupItemClass);
1739 day = currentTime.GetDay();
1743 pGroupItemClass = new(std::nothrow) GroupItemClass();
1744 if (pGroupItemClass == null)
1749 pGroupItemClass->SetTitleText(weeksAgo2);
1750 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1751 dateTime.AddDays(currentTime.GetDay() - 7 - dayOfWeek + 2 - 1);
1752 pGroupItemClass->SetEndTime(dateTime);
1753 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1754 dateTime.AddDays(currentTime.GetDay() - 14 - dayOfWeek + 2 - 1);
1755 pGroupItemClass->SetStartTime(dateTime);
1756 __pGroupData->Add(*pGroupItemClass);
1758 if (pGroupItemClass->GetStartTime().GetDay() > 1 && pGroupItemClass->GetStartTime().GetDay() < 8)
1760 pGroupItemClass = new(std::nothrow) GroupItemClass();
1761 if (pGroupItemClass == null)
1765 String weeksAgo3 = L"";
1766 weeksAgo3.Format(25,CommonUtil::GetString(L"IDS_EMAIL_BODY_PD_WEEKS_AGO").GetPointer(),3);
1767 pGroupItemClass->SetTitleText(weeksAgo3);
1768 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1769 dateTime.AddDays(currentTime.GetDay() - 14 - dayOfWeek + 2 - 1);
1770 pGroupItemClass->SetEndTime(dateTime);
1771 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1772 dateTime.AddDays(currentTime.GetDay() - 21 - dayOfWeek + 2 - 1);
1773 pGroupItemClass->SetStartTime(dateTime);
1774 __pGroupData->Add(*pGroupItemClass);
1778 pGroupItemClass = new(std::nothrow) GroupItemClass();
1779 if (pGroupItemClass == null)
1783 pGroupItemClass->SetTitleText(weeksAgo2);
1784 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1785 dateTime.AddDays(currentTime.GetDay() - 7 - dayOfWeek + 2 - 1);
1786 pGroupItemClass->SetEndTime(dateTime);
1787 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1788 dateTime.AddDays(currentTime.GetDay() - 14 - dayOfWeek + 2 - 1);
1789 pGroupItemClass->SetStartTime(dateTime);
1790 __pGroupData->Add(*pGroupItemClass);
1792 pGroupItemClass = new(std::nothrow) GroupItemClass();
1793 if (pGroupItemClass == null)
1798 pGroupItemClass->SetTitleText(weeksAgo3);
1799 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1800 dateTime.AddDays(currentTime.GetDay() - 14 - dayOfWeek + 2 - 1);
1801 pGroupItemClass->SetEndTime(dateTime);
1802 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1803 dateTime.AddDays(currentTime.GetDay() - 21 - dayOfWeek + 2 - 1);
1804 pGroupItemClass->SetStartTime(dateTime);
1805 __pGroupData->Add(*pGroupItemClass);
1807 if (pGroupItemClass->GetStartTime().GetDay() > 1 && pGroupItemClass->GetStartTime().GetDay() < 8)
1809 pGroupItemClass = new(std::nothrow) GroupItemClass();
1810 if (pGroupItemClass == null)
1814 titleText = CommonUtil::GetString(L"IDS_BR_EARLIER_THIS_MONTH");
1815 pGroupItemClass->SetTitleText(titleText);
1816 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1817 dateTime.AddDays(currentTime.GetDay() - 21 - dayOfWeek + 2 - 1);
1818 pGroupItemClass->SetEndTime(dateTime);
1819 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1820 //dateTime.AddDays(currentTime.GetDay() - 28 - dayOfWeek + 2 - 1);
1821 pGroupItemClass->SetStartTime(dateTime);
1822 __pGroupData->Add(*pGroupItemClass);
1826 pGroupItemClass = new(std::nothrow) GroupItemClass();
1827 if (pGroupItemClass == null)
1831 pGroupItemClass->SetTitleText(weeksAgo2);
1832 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1833 dateTime.AddDays(currentTime.GetDay() - 7 - dayOfWeek + 2 - 1);
1834 pGroupItemClass->SetEndTime(dateTime);
1835 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1836 dateTime.AddDays(currentTime.GetDay() - 14 - dayOfWeek + 2 - 1);
1837 pGroupItemClass->SetStartTime(dateTime);
1838 __pGroupData->Add(*pGroupItemClass);
1840 pGroupItemClass = new(std::nothrow) GroupItemClass();
1841 if (pGroupItemClass == null)
1845 pGroupItemClass->SetTitleText(weeksAgo3);
1846 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1847 dateTime.AddDays(currentTime.GetDay() - 14 - dayOfWeek + 2 - 1);
1848 pGroupItemClass->SetEndTime(dateTime);
1849 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1850 dateTime.AddDays(currentTime.GetDay() - 21 - dayOfWeek + 2 - 1);
1851 pGroupItemClass->SetStartTime(dateTime);
1852 __pGroupData->Add(*pGroupItemClass);
1854 if (pGroupItemClass->GetStartTime().GetDay() > 1 && pGroupItemClass->GetStartTime().GetDay() < 8)
1856 pGroupItemClass = new(std::nothrow) GroupItemClass();
1857 if (pGroupItemClass == null)
1861 titleText = CommonUtil::GetString(L"IDS_BR_EARLIER_THIS_MONTH");
1862 pGroupItemClass->SetTitleText(titleText);
1863 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1864 dateTime.AddDays(currentTime.GetDay() - 21 - dayOfWeek + 2 - 1);
1865 pGroupItemClass->SetEndTime(dateTime);
1866 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1867 //dateTime.AddDays(currentTime.GetDay() - 28 - dayOfWeek + 2 - 1);
1868 pGroupItemClass->SetStartTime(dateTime);
1869 __pGroupData->Add(*pGroupItemClass);
1875 pGroupItemClass = new(std::nothrow) GroupItemClass();
1876 if (pGroupItemClass == null)
1880 titleText = CommonUtil::GetString(L"IDS_BR_BODY_LAST_MONTH");
1881 pGroupItemClass->SetTitleText(titleText);
1882 dateTime.SetValue(currentTime.GetYear(),currentTime.GetMonth(), 1);
1883 dateTime.AddDays(-1);
1884 pGroupItemClass->SetEndTime(dateTime);
1885 dateTime.SetValue(currentTime.GetYear(), 1, 1);
1886 dateTime.AddMonths(currentTime.GetMonth() - 1 - 1);
1887 pGroupItemClass->SetStartTime(dateTime);
1888 __pGroupData->Add(*pGroupItemClass);
1890 pGroupItemClass = new(std::nothrow) GroupItemClass();
1891 if (pGroupItemClass == null)
1895 titleText = CommonUtil::GetString(L"IDS_BR_BODY_OLDER");
1896 pGroupItemClass->SetTitleText(titleText);
1897 dateTime.SetValue(currentTime.GetYear(),1, 1);
1898 dateTime.AddMonths(currentTime.GetMonth() - 2);
1899 dateTime.AddDays(-1);
1900 pGroupItemClass->SetEndTime(dateTime);
1902 dateTime2.SetValue(0, 0, 0);
1903 pGroupItemClass->SetStartTime(dateTime2);
1904 __pGroupData->Add(*pGroupItemClass);
1908 GroupItemClass::GroupItemClass()
1914 GroupItemClass::operator =(const GroupItemClass& rhs)
1918 __pData = rhs.__pData;
1923 GroupItemClass::GroupItemClass(const GroupItemClass& groupItem)
1925 __pData = groupItem.__pData;
1928 GroupItemClass::~GroupItemClass()
1932 __pData->RemoveAll(true);
1938 GroupItemClass::SetStartTime(DateTime& startTime)
1940 __startTime = startTime;
1944 GroupItemClass::SetEndTime(DateTime& endTime)
1946 __endTime = endTime;
1950 GroupItemClass::SetTitleText(String& titleText)
1952 __titleText = titleText;
1956 GroupItemClass::SetHistoryData(ArrayList* pData)
1962 GroupItemClass::GetStartTime(void)
1968 GroupItemClass::GetEndTime(void)
1974 GroupItemClass::GetTitleText(void)
1980 GroupItemClass::GetHistoryData(void)
1986 HistoryListForm::OnSettingChanged(Tizen::Base::String& key)
1988 if (__pGroupedListView)
1990 __pGroupedListView->UpdateList();
1992 if (__isNoHistoryPresent == true )
1995 __pSearchBar->SetShowState(false);
1996 GetFooter()->SetItemEnabled(0, false);
2001 __pSearchBar->SetShowState(true);
2002 GetFooter()->SetItemEnabled(0, true);
2004 GetFooter()->Invalidate(true);