Files
Upsilon/apps/shared/tab_table_controller.cpp
Émilie Feral 5c7d763291 [apps/shared] Make tab table controller dynamic view controller
Change-Id: Id3a383e72173779eb295dc998f780041f62f8bf0
2017-04-21 10:08:09 +02:00

44 lines
1.3 KiB
C++

#include "tab_table_controller.h"
namespace Shared {
TabTableController::TabTableController(Responder * parentResponder, TableViewDataSource * dataSource, KDCoordinate topMargin,
KDCoordinate rightMargin, KDCoordinate bottomMargin, KDCoordinate leftMargin, SelectableTableViewDelegate * delegate, bool showIndicators) :
DynamicViewController(parentResponder),
m_dataSource(dataSource),
m_topMargin(topMargin),
m_rightMargin(rightMargin),
m_bottomMargin(bottomMargin),
m_leftMargin(leftMargin),
m_delegate(delegate),
m_showIndicators(showIndicators)
{
}
void TabTableController::didBecomeFirstResponder() {
app()->setFirstResponder(selectableTableView());
}
void TabTableController::viewWillAppear() {
selectableTableView()->reloadData();
}
void TabTableController::willExitResponderChain(Responder * nextFirstResponder) {
if (nextFirstResponder == tabController()) {
selectableTableView()->deselectTable();
selectableTableView()->scrollToCell(0,0);
}
}
SelectableTableView * TabTableController::selectableTableView() {
return (SelectableTableView *)view();
}
View * TabTableController::createView() {
return new SelectableTableView(this, m_dataSource, 0, 0, m_topMargin, m_rightMargin, m_bottomMargin, m_leftMargin, m_delegate, m_showIndicators, true, Palette::WallScreenDark);
}
}