Browse Source

Platform: deinline also all ScreenedApplication {con,de}structors.

pull/34/head
Vladimír Vondruš 13 years ago
parent
commit
3bc858777c
  1. 8
      src/Platform/ScreenedApplication.h
  2. 6
      src/Platform/ScreenedApplication.hpp

8
src/Platform/ScreenedApplication.h

@ -94,10 +94,10 @@ template<class Application> class BasicScreenedApplication: public Application,
public:
/** @copydoc Sdl2Application::Sdl2Application(const Arguments, const Configuration&) */
explicit BasicScreenedApplication(const typename Application::Arguments& arguments, const typename Application::Configuration& configuration = Application::Configuration()): Application(arguments, configuration) {}
explicit BasicScreenedApplication(const typename Application::Arguments& arguments, const typename Application::Configuration& configuration = Application::Configuration());
/** @copydoc Sdl2Application::Sdl2Application(const Arguments&, std::nullptr_t) */
explicit BasicScreenedApplication(const typename Application::Arguments& arguments, std::nullptr_t): Application(arguments, nullptr) {}
explicit BasicScreenedApplication(const typename Application::Arguments& arguments, std::nullptr_t);
/**
* @brief Add screen to application
@ -157,6 +157,10 @@ template<class Application> class BasicScreenedApplication: public Application,
}
protected:
/* Nobody will need to have (and delete) ScreenedApplication*, thus
this is faster than public pure virtual destructor */
~BasicScreenedApplication();
/**
* @brief Global viewport event
*

6
src/Platform/ScreenedApplication.hpp

@ -41,6 +41,12 @@ template<class Application> void BasicScreen<Application>::mousePressEvent(Mouse
template<class Application> void BasicScreen<Application>::mouseReleaseEvent(MouseEvent&) {}
template<class Application> void BasicScreen<Application>::mouseMoveEvent(MouseMoveEvent&) {}
template<class Application> BasicScreenedApplication<Application>::BasicScreenedApplication(const typename Application::Arguments& arguments, const typename Application::Configuration& configuration): Application(arguments, configuration) {}
template<class Application> BasicScreenedApplication<Application>::BasicScreenedApplication(const typename Application::Arguments& arguments, std::nullptr_t): Application(arguments, nullptr) {}
template<class Application> BasicScreenedApplication<Application>::~BasicScreenedApplication() = default;
template<class Application> BasicScreenedApplication<Application>& BasicScreenedApplication<Application>::addScreen(BasicScreen<Application>& screen) {
Containers::LinkedList<BasicScreen<Application>>::insert(&screen);
if(frontScreen() == &screen) screen.focusEvent();

Loading…
Cancel
Save