StarredFilesTab::StarredFilesTab(QWidget *parent)
    : TabView(parent),
      in_refresh_(false)
{
    createStarredFilesListView();
    createLoadingView();
    createLoadingFailedView();

    //createLogoutView
    logout_view_ = new LogoutView;
    static_cast<LogoutView*>(logout_view_)->setQssStyleForTab();

    createEmptyView();

    mStack->insertWidget(INDEX_LOADING_VIEW, loading_view_);
    mStack->insertWidget(INDEX_LOADING_FAILED_VIEW, loading_failed_view_);
    mStack->insertWidget(INDEX_EMPTY_VIEW, empty_view_);
    mStack->insertWidget(INDEX_LOGOUT_VIEW, logout_view_);
    mStack->insertWidget(INDEX_FILES_VIEW, files_list_view_);

    refresh_timer_ = new QTimer(this);
    connect(refresh_timer_, SIGNAL(timeout()), this, SLOT(refresh()));

    get_starred_files_req_ = NULL;

    refresh();
}
StarredFilesTab::StarredFilesTab(QWidget *parent)
    : TabView(parent),
      in_refresh_(false)
{
    createStarredFilesListView();
    createLoadingView();
    createLoadingFailedView();
    createEmptyView();

    mStack->insertWidget(INDEX_LOADING_VIEW, loading_view_);
    mStack->insertWidget(INDEX_LOADING_FAILED_VIEW, loading_failed_view_);
    mStack->insertWidget(INDEX_EMPTY_VIEW, empty_view_);
    mStack->insertWidget(INDEX_FILES_VIEW, files_list_view_);

    refresh_timer_ = new QTimer(this);
    connect(refresh_timer_, SIGNAL(timeout()), this, SLOT(refresh()));
    refresh_timer_->start(kRefreshInterval);

    get_starred_files_req_ = NULL;

    refresh();
}