#include "singletons.h" std::unique_ptr Singleton::Config::source_=std::unique_ptr(new Source::Config()); std::unique_ptr Singleton::Config::terminal_=std::unique_ptr(new Terminal::Config()); std::unique_ptr Singleton::Config::directories_=std::unique_ptr(new Directories::Config()); std::unique_ptr Singleton::terminal_=std::unique_ptr(); std::unique_ptr Singleton::notebook_=std::unique_ptr(); std::unique_ptr Singleton::menu_=std::unique_ptr(); Terminal::Controller *Singleton::terminal() { if(!terminal_) terminal_=std::unique_ptr(new Terminal::Controller()); return terminal_.get(); } Notebook::Controller *Singleton::notebook() { if(!notebook_) notebook_=std::unique_ptr(new Notebook::Controller()); return notebook_.get(); } Menu *Singleton::menu() { if(!menu_) menu_=std::unique_ptr(new Menu()); return menu_.get(); }