#pragma once

#include <eedb/widgets/HomePage.hpp>

#include <memory>

namespace Wt {
class WContainerWidget;
class WTreeView;
class WNavigationBar;
}

namespace eedb {
class Session;
class NavigationBar;

class DefaultHomePage final : public HomePage {
  public:
    DefaultHomePage(Session & session, std::unique_ptr< NavigationBar > navigationBar);
    ~DefaultHomePage();

    void attachTo(Wt::WContainerWidget * parent) override;

    Wt::WNavigationBar * createNavigationBar(Wt::WContainerWidget * container);

  private:
    Session & _session;
    std::unique_ptr< NavigationBar > _navigationBar;
    Wt::WTreeView * _categoryTree;
};
}
