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.
18 * @file MpUserPlaylistContentListForm.cpp
19 * @brief This is the implementation file for UserPlaylistContentListForm class.
22 #include "MpAllListPresentationModel.h"
23 #include "MpPlaylistListPresentationModel.h"
24 #include "MpPlaylistPickerPopup.h"
25 #include "MpSharePopup.h"
26 #include "MpThumbnailInfo.h"
27 #include "MpUserPlaylistContentListForm.h"
29 using namespace Tizen::App;
30 using namespace Tizen::Base;
31 using namespace Tizen::Base::Collection;
32 using namespace Tizen::Content;
33 using namespace Tizen::Graphics;
34 using namespace Tizen::Io;
35 using namespace Tizen::Ui;
36 using namespace Tizen::Ui::Controls;
37 using namespace Tizen::Ui::Scenes;
39 UserPlaylistContentListForm::UserPlaylistContentListForm(void)
40 : ContentListForm::ContentListForm()
41 , ThumbnailBase::ThumbnailBase()
42 , __pContentListTableView(null)
44 , __pPresentationModel(null)
45 , __checkedItemCount(0)
46 , __activatedStateContextItem(-1)
52 UserPlaylistContentListForm::~UserPlaylistContentListForm(void)
59 UserPlaylistContentListForm::Initialize(void)
62 if (IsFailed(Form::Construct(IDL_CONTENT_LIST_FORM)))
64 AppLogDebug("Construct(IDL_CONTENT_LIST_FORM) failed(%s)", GetErrorMessage(GetLastResult()));
73 UserPlaylistContentListForm::Construct(void)
76 __pContentListTableView = static_cast<TableView*>(GetControl(IDC_TABLEVIEW_CONTENT_LIST));
77 __pContentListTableView->AddTableViewItemEventListener(*this);
78 __pContentListTableView->SetItemProvider(this);
80 SetContentList(__pContentListTableView);
82 return ContentListForm::Construct();
86 UserPlaylistContentListForm::OnInitializing(void)
89 __fontSizeValue = CommonUtil::GetFontSizeValue();
90 __itemHeight = CommonUtil::GetItemHeight(__fontSizeValue);
92 return ThumbnailBase::Construct();
96 UserPlaylistContentListForm::OnTerminating(void)
99 ThumbnailBase::Stop();
100 __pPresentationModel = null;
102 return ContentListForm::OnTerminating();
106 UserPlaylistContentListForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId)
108 AppLogDebug("ENTER");
109 SceneManager* pSceneManager = SceneManager::GetInstance();
110 AppAssert(pSceneManager);
114 case IDA_HEADER_BUTTON_SELECTE_ALL:
116 bool isChecked = true;
117 if (__checkedItemCount == __pContentListTableView->GetItemCount())
121 SetItemCheckedAll(isChecked);
125 case IDA_FOOTER_BUTTON_SHARE:
127 LanucherPicker(PICKER_TYPE_SHARE_PICKER);
131 case IDA_FOOTER_BUTTON_ADD_TO_PLAYLIST:
133 LanucherPicker(PICKER_TYPE_PLAY_LIST_PICKER);
137 case IDA_CONTEXT_MENU_ITEM_SEARCH:
139 pSceneManager->GoForward(ForwardSceneTransition(IDSCN_SEARCH, SCENE_TRANSITION_ANIMATION_TYPE_NONE, SCENE_HISTORY_OPTION_NO_HISTORY));
143 case IDA_CONTEXT_MENU_ITEM_EDIT:
145 ToggleScreenState(SCREEN_STATE_EDITOR);
149 case IDA_CONTEXT_MENU_ITEM_SHARE_VIA:
151 ToggleScreenState(SCREEN_STATE_SHARE_VIA);
155 case IDA_FOOTER_BUTTON_MORE:
157 CreateOptionMenuN(source);
158 if (IsEmptyContentList())
160 SetOptionMenuItem(CONTEXT_MENU_ITEM_STYLE_ADD);
164 SetOptionMenuItem(CONTEXT_MENU_ITEM_STYLE_ADD | CONTEXT_MENU_ITEM_STYLE_SHARE_VIA | CONTEXT_MENU_ITEM_STYLE_EDIT);
169 case IDA_FOOTER_BUTTON_DELETE:
171 int totalCount = __pPresentationModel->GetContentCount();
172 for (int iCount = 0; iCount < totalCount; iCount++)
174 if (__pContentListTableView->IsItemChecked(iCount) == true)
176 ContentInformation* pContentInfoStruct = __pPresentationModel->GetContentInfoN(iCount);
177 __pContentListTableView->SetItemChecked(iCount, false);
178 if (pContentInfoStruct == null)
182 __pPresentationModel->DeleteContent(USER_CONTENT, *pContentInfoStruct);
184 delete pContentInfoStruct;
187 RemoveCheckedTableviewItem(false);
188 __pPresentationModel->UpdatePlaylistContentList(USER_CONTENT, __headerTitle);
192 if(__pPresentationModel->GetContentCount() == 0)
194 ToggleScreenState(SCREEN_STATE_NORMAL);
199 case IDA_CONTEXT_MENU_ITEM_STYLE_ADD:
201 AllListPresentationModel* pPresentationModel = AllListPresentationModel::GetInstance();
202 if (pPresentationModel->GetTotalCount() == 0)
204 MessageBox messageBox;
205 messageBox.Construct(L"", ResourceManager::GetString(L"IDS_MUSIC_HEADER_NO_SONGS"), MSGBOX_STYLE_NONE, 500);
208 messageBox.ShowAndWait(modalResult);
212 CommonUtil::SetAddtoPlaylistState(true);
213 CommonUtil::SetAddtoPlaylistName(__headerTitle);
214 pSceneManager->GoForward(ForwardSceneTransition(IDSCN_ALL_CONTENT_PICKER));
223 TryRemoveContextMenu(actionId);
228 UserPlaylistContentListForm::OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId,
229 const Tizen::Ui::Scenes::SceneId& currentSceneId,
230 Tizen::Base::Collection::IList* pArgs)
232 AppLogDebug("ENTER");
233 if (pArgs != null && previousSceneId.Equals(IDSCN_PLAYLIST_LIST, true) == true)
235 __prevSceneId.Clear();
236 __headerTitle.Clear();
237 __prevSceneId.Append(*static_cast<String*>(pArgs->GetAt(DATA_ITEM_SCENE_NAME)));
238 __headerTitle.Append(*static_cast<String*>(pArgs->GetAt(DATA_ITEM_CONTENT_NAME)));
240 __pPresentationModel = PlaylistListPresentationModel::GetInstance();
241 __pPresentationModel->UpdatePlaylistContentList(USER_CONTENT, __headerTitle);
247 pArgs->RemoveAll(true);
250 else if (pArgs != null && previousSceneId.Equals(IDSCN_PLAYLIST_CREATOR, false))
252 SetItemCheckedAll(false);
253 pArgs->RemoveAll(true);
256 else if (!(__headerTitle.Equals(L"", false)))
258 __pPresentationModel->UpdatePlaylistContentList(USER_CONTENT, __headerTitle);
260 if (!previousSceneId.Equals(IDSCN_PLAYER,true))
269 UserPlaylistContentListForm::OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId,
270 const Tizen::Ui::Scenes::SceneId& nextSceneId)
272 AppLogDebug("ENTER");
273 CancelAllThumbnailRequest();
278 UserPlaylistContentListForm::GetItemCount(void)
280 AppLogDebug("ENTER");
281 if (__pPresentationModel == null)
287 return __pPresentationModel->GetContentCount();
290 Tizen::Ui::Controls::TableViewItem*
291 UserPlaylistContentListForm::CreateItem(const int itemIndex, int itemWidth)
293 AppLogDebug("ENTER");
294 RelativeLayout layout;
297 TableViewAnnexStyle tableViewAnnexStyle = TABLE_VIEW_ANNEX_STYLE_NORMAL;
298 if (GetScreenState() != SCREEN_STATE_NORMAL)
300 tableViewAnnexStyle = TABLE_VIEW_ANNEX_STYLE_MARK;
303 TableViewItem* pItem = new (std::nothrow) TableViewItem();
304 ContentInformation* pContentInfo = __pPresentationModel->GetContentInfoN(itemIndex);
306 result r = pItem->Construct(layout, Dimension(itemWidth, __itemHeight), tableViewAnnexStyle);
307 TryCatch(r == E_SUCCESS, delete pItem, "pItem->Construct(%s)", GetErrorMessage(r));
308 TryCatch(pContentInfo != null, delete pItem, "pContentInfo is null", GetErrorMessage(GetLastResult()));
310 r = CreateTableViewItem(*pItem, *pContentInfo);
311 TryCatch(r == E_SUCCESS, delete pItem, "CreateTableViewItem failed(%s)", GetErrorMessage(r));
313 RequestThumbnail(pContentInfo->contentId, (new (std::nothrow) Integer(itemIndex)));
320 AppLogDebug("EXIT(%ls)", GetErrorMessage(GetLastResult()));
326 UserPlaylistContentListForm::OnTableViewItemStateChanged(Tizen::Ui::Controls::TableView& tableView,
328 Tizen::Ui::Controls::TableViewItem* pItem,
329 Tizen::Ui::Controls::TableViewItemStatus status)
331 AppLogDebug("ENTER");
332 if (GetScreenState() != SCREEN_STATE_NORMAL)
334 SetItemCheckedStateChanged(status);
339 if (status == TABLE_VIEW_ITEM_STATUS_SELECTED)
341 SceneManager* pSceneManager = SceneManager::GetInstance();
342 AppAssert(pSceneManager);
344 ArrayList* pSceneArg = MakePlayerSceneParam(itemIndex);
345 if (pSceneArg != null)
347 pSceneManager->GoForward(ForwardSceneTransition(IDSCN_PLAYER), pSceneArg);
354 UserPlaylistContentListForm::OnTableViewContextItemActivationStateChanged(Tizen::Ui::Controls::TableView& tableView, int itemIndex,
355 Tizen::Ui::Controls::TableViewContextItem* pContextItem,
358 AppLogDebug("ENTER");
361 __activatedStateContextItem = itemIndex;
367 UserPlaylistContentListForm::GetDefaultItemHeight(void)
369 AppLogDebug("ENTER");
375 UserPlaylistContentListForm::DeleteItem(const int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem)
377 AppLogDebug("ENTER");
383 UserPlaylistContentListForm::OnTableViewItemReordered(Tizen::Ui::Controls::TableView& tableView,
387 AppLogDebug("ENTER");
392 UserPlaylistContentListForm::CreateTableViewItem(Tizen::Ui::Container& parent, const ContentInformation& contentInfo)
394 AppLogDebug("ENTER");
395 Panel* pTableViewItem = new (std::nothrow) Panel();
397 if (GetScreenState() != SCREEN_STATE_NORMAL)
399 if (__fontSizeValue.Equals(STRING_FONT_SIZE_GIANT, false))
401 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_EDITOR_ITEM_PANEL_FONT_SIZE_GIANT)))
403 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
407 else if (__fontSizeValue.Equals(STRING_FONT_SIZE_HUGE, false))
409 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_EDITOR_ITEM_PANEL_FONT_SIZE_HUGE)))
411 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
415 else if (__fontSizeValue.Equals(STRING_FONT_SIZE_LARGE, false))
417 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_EDITOR_ITEM_PANEL_FONT_SIZE_LARGE)))
419 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
423 else if (__fontSizeValue.Equals(STRING_FONT_SIZE_SMALL, false))
425 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_EDITOR_ITEM_PANEL_FONT_SIZE_SMALL)))
427 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
433 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_EDITOR_ITEM_PANEL_DEFAULT)))
435 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
442 if (__fontSizeValue.Equals(STRING_FONT_SIZE_GIANT, false))
444 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL_FONT_SIZE_GIANT)))
446 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
450 else if (__fontSizeValue.Equals(STRING_FONT_SIZE_HUGE, false))
452 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL_FONT_SIZE_HUGE)))
454 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
458 else if (__fontSizeValue.Equals(STRING_FONT_SIZE_LARGE, false))
460 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL_FONT_SIZE_LARGE)))
462 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
466 else if (__fontSizeValue.Equals(STRING_FONT_SIZE_SMALL, false))
468 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL_FONT_SIZE_SMALL)))
470 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
476 if (IsFailed(pTableViewItem->Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL_DEFAULT)))
478 AppLogDebug("Construct(IDL_CONTENTS_LIBARY_ITEM_PANEL) failed(%s)", GetErrorMessage(GetLastResult()));
484 static_cast<Label*>(pTableViewItem->GetControl(IDC_CONTENTS_TITLE_NAME))->SetText(contentInfo.TitleName);
485 static_cast<Label*>(pTableViewItem->GetControl(IDC_CONTENTS_ARTIST_NAME))->SetText(contentInfo.ArtistName);
486 static_cast<Label*>(pTableViewItem->GetControl(IDC_CONTENTS_THUMBNAIL))->SetBackgroundBitmap(*GetDefaultThumbnail());
488 parent.AddControl(pTableViewItem);
489 CommonUtil::SetLayoutFitToContainer(parent, *pTableViewItem);
496 UserPlaylistContentListForm::SetHeader(void)
498 AppLogDebug("ENTER");
499 CommonUtil::SetSimpleTitleStyle(*GetHeader(), __headerTitle);
505 UserPlaylistContentListForm::IsEmptyContentList(void)
507 AppLogDebug("ENTER");
508 if (__pPresentationModel->GetContentCount() != INIT_VALUE)
516 Tizen::Base::Collection::ArrayList*
517 UserPlaylistContentListForm::MakePlayerSceneParam(int startIndex)
519 AppLogDebug("ENTER");
520 ArrayList* pArgs = new (std::nothrow) ArrayList();
521 result r = pArgs->Construct();
524 AppLogDebug("pArgs->Construct failed(%s)", GetErrorMessage(r));
528 pArgs->Add(*(new (std::nothrow) String(MUSIC)));
529 pArgs->Add(*(new (std::nothrow) Integer(startIndex)));
530 pArgs->Add(*(__pPresentationModel->GetContentPathListN(USER_CONTENT)));
537 UserPlaylistContentListForm::OnThumbnailInfoReveivedN(ThumbnailInfo* pThumbnailInfo)
539 AppLogDebug("ENTER");
540 __pThumbnail = pThumbnailInfo->GetBitmapN();
541 Object* pParam = pThumbnailInfo->GetUserParamN();
544 __pContentListTableView->RefreshItem((static_cast<Integer*>(pParam))->ToInt(), TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY);
548 delete pThumbnailInfo;
553 UserPlaylistContentListForm::OnUserEventReceivedN(RequestId requestId, Tizen::Base::Collection::IList* pArgs)
555 AppLogDebug("ENTER");
556 ContentListForm::OnUserEventReceivedN(requestId, pArgs);
557 if (requestId == ID_DESTORY_PLAY_LIST_PICKER_POPUP)
559 __pPresentationModel->UpdatePlaylistContentList(USER_CONTENT, __headerTitle);
560 __pContentListTableView->UpdateTableView();
566 UserPlaylistContentListForm::UpdateItem(int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem)
568 AppLogDebug("ENTER");
572 AppLogDebug("pItem is null");
578 Label* pThumbnailLabel = static_cast<Label*>(pItem->GetControl(IDC_CONTENTS_THUMBNAIL, true));
579 if (__pThumbnail == null || pThumbnailLabel == null)
581 AppLogDebug("__pThumbnail or pThumbnailLabel is null");
587 pThumbnailLabel->SetBackgroundBitmap(*__pThumbnail);
590 pThumbnailLabel->Invalidate(true);
595 UserPlaylistContentListForm::GetCheckedItemCount(void)
597 AppLogDebug("ENTER");
599 return __checkedItemCount;
603 UserPlaylistContentListForm::UpdateTableView(void)
605 AppLogDebug("ENTER");
606 __pContentListTableView->UpdateTableView();
611 UserPlaylistContentListForm::UpdateContentList(void)
613 AppLogDebug("ENTER");
614 __pPresentationModel->UpdatePlaylistContentList(USER_CONTENT, __headerTitle);
616 if(__pPresentationModel->GetContentCount() == 0)
618 // __headerTitle.Clear();
619 CommonUtil::SetAddtoPlaylistState(false);
620 // CommonUtil::SetAddtoPlaylistName(__headerTitle);
621 ToggleScreenState(SCREEN_STATE_NORMAL);
632 UserPlaylistContentListForm::SetItemCheckedAll(bool isChecked)
634 AppLogDebug("ENTER");
635 if (isChecked == true)
637 __checkedItemCount = __pContentListTableView->GetItemCount();
641 __checkedItemCount = INIT_VALUE;
643 CommonUtil::SetItemCheckedAll(isChecked, *__pContentListTableView);
644 if (GetFooter() != null)
646 CommonUtil::SetFooterItemEnabled(*GetFooter(), isChecked);
649 SetCheckedCountBallonTooltip(GetCheckedItemCount());
654 UserPlaylistContentListForm::RemoveCheckedTableviewItem(bool itemRemove)
656 AppLogDebug("ENTER");
659 int totalCount = __pContentListTableView->GetItemCount();
660 for (int iCount = 0; iCount < totalCount; iCount++)
662 if (__pContentListTableView->IsItemChecked(iCount) == true)
664 __pContentListTableView->SetItemChecked(iCount, false);
665 ContentInformation* pContentInfo = __pPresentationModel->GetContentInfoN(iCount);
666 if (pContentInfo != null)
668 RemoveContentAt(pContentInfo->contentId);
675 __checkedItemCount = INIT_VALUE;
676 SetCheckedCountBallonTooltip(GetCheckedItemCount());
677 if (GetFooter() != null)
679 CommonUtil::SetFooterItemEnabled(*GetFooter(), false);
685 UserPlaylistContentListForm::SetItemCheckedStateChanged(Tizen::Ui::Controls::TableViewItemStatus status)
687 AppLogDebug("ENTER");
688 if (status == TABLE_VIEW_ITEM_STATUS_UNCHECKED)
690 __checkedItemCount--;
691 if (__checkedItemCount == INIT_VALUE)
693 if (GetFooter() != null)
695 CommonUtil::SetFooterItemEnabled(*GetFooter(), false);
699 else if (status == TABLE_VIEW_ITEM_STATUS_CHECKED)
701 if (__checkedItemCount == INIT_VALUE)
703 if (GetFooter() != null)
705 CommonUtil::SetFooterItemEnabled(*GetFooter(), true);
709 __checkedItemCount++;
712 SetCheckedCountBallonTooltip(GetCheckedItemCount());
716 Tizen::Base::Collection::IList*
717 UserPlaylistContentListForm::GetPickerArgumentListN(PickerType pickerType, PickerArgumentType argumentType)
719 AppLogDebug("ENTER");
720 Tizen::Base::Collection::ArrayList* pContentFilePathList = new (std::nothrow) ArrayList(SingleObjectDeleter);
721 if (IsFailed(pContentFilePathList->Construct()))
723 AppLogDebug("pContentList->Construct failed(%s)", GetErrorMessage(GetLastResult()));
724 delete pContentFilePathList;
728 if (argumentType == PICKER_ARGUMENT_TYPE_ACTIVATED_STATE_CONTEXT_ITEM)
730 ContentInformation* pContentInfo = __pPresentationModel->GetContentInfoN(__activatedStateContextItem);
731 if (pContentInfo == null)
733 delete pContentFilePathList;
734 AppLogDebug("GetContentInfoN(%d) is null", __activatedStateContextItem);
738 pContentFilePathList->Add(*(new (std::nothrow) String(pContentInfo->ContentFilePath)));
741 else if (argumentType == PICKER_ARGUMENT_TYPE_CHECKED_ITEM_ALL)
743 int totalCount = __pContentListTableView->GetItemCount();
744 for (int iCount = 0; iCount < totalCount; iCount++)
746 if (__pContentListTableView->IsItemChecked(iCount) == true)
748 ContentInformation* pContentInfo = __pPresentationModel->GetContentInfoN(iCount);
749 if (pContentInfo == null)
751 AppLogDebug("GetContentInfoN(%d) is null", iCount);
752 delete pContentFilePathList;
756 if (pickerType == PICKER_TYPE_PLAY_LIST_PICKER)
758 pContentFilePathList->Add(*(new (std::nothrow) String(pContentInfo->ContentFilePath)));
760 else if (pickerType == PICKER_TYPE_SHARE_PICKER)
762 pContentFilePathList->Add(*(new (std::nothrow) String(pContentInfo->ContentFilePath)));
769 return pContentFilePathList;
773 UserPlaylistContentListForm::OnFormBackRequested(Tizen::Ui::Controls::Form& source)
775 AppLogDebug("ENTER");
776 if (GetScreenState() != SCREEN_STATE_NORMAL)
778 ToggleScreenState(SCREEN_STATE_NORMAL);
783 SceneManager* pSceneManager = SceneManager::GetInstance();
784 AppAssert(pSceneManager);
785 pSceneManager->GoBackward(BackwardSceneTransition(), null);
790 UserPlaylistContentListForm::OnFormMenuRequested(Tizen::Ui::Controls::Form& source)
792 if (GetScreenState() == SCREEN_STATE_NORMAL)
794 CreateOptionMenuN(source);
795 if (IsEmptyContentList())
797 SetOptionMenuItem(CONTEXT_MENU_ITEM_STYLE_ADD);
801 SetOptionMenuItem(CONTEXT_MENU_ITEM_STYLE_ADD | CONTEXT_MENU_ITEM_STYLE_SHARE_VIA | CONTEXT_MENU_ITEM_STYLE_EDIT);
807 UserPlaylistContentListForm::OnFontSizeChanged(void)
809 __fontSizeValue = CommonUtil::GetFontSizeValue();
810 __itemHeight = CommonUtil::GetItemHeight(__fontSizeValue);
811 __pContentListTableView->UpdateTableView();