2022-05-03 11:23:32 +02:00
|
|
|
/**
|
|
|
|
* @brief Window manager
|
|
|
|
* @author Christian Burger (christian@krikkel.de)
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef C10F5DF3_1DB4_4714_A84D_115F492F5CDC
|
|
|
|
#define C10F5DF3_1DB4_4714_A84D_115F492F5CDC
|
|
|
|
|
2022-05-08 21:12:06 +02:00
|
|
|
#include "TilingWindowManager.hpp"
|
2022-05-03 11:23:32 +02:00
|
|
|
|
|
|
|
namespace krikkel::NCurses
|
|
|
|
{
|
|
|
|
class Window;
|
2022-05-06 14:02:18 +02:00
|
|
|
class SingleUserInput;
|
2022-05-03 11:23:32 +02:00
|
|
|
|
2022-05-08 20:57:48 +02:00
|
|
|
class VerticalTilingWindowManager : public TilingWindowManager
|
2022-05-03 11:23:32 +02:00
|
|
|
{
|
|
|
|
public:
|
2022-05-06 14:02:18 +02:00
|
|
|
VerticalTilingWindowManager(NCursesWindow *rootWindow, std::recursive_mutex *ncursesMutex);
|
2022-05-18 21:15:13 +02:00
|
|
|
|
|
|
|
void resizeAndMoveWindow(Window *window
|
|
|
|
, windowDimension dimension
|
|
|
|
, windowPosition position) override;
|
|
|
|
windowDimension getAvailableSpace() override;
|
|
|
|
void windowBorder() override;
|
|
|
|
void moveCursor(windowPosition position) override;
|
2022-05-03 11:23:32 +02:00
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#endif /* C10F5DF3_1DB4_4714_A84D_115F492F5CDC */
|