feat: stretch mode

This commit is contained in:
Virt 2024-07-02 15:35:37 +02:00
commit 5fee8c5545
18 changed files with 234 additions and 79 deletions

View file

@ -1,19 +1,14 @@
#pragma once
#include <hyprutils/math/Vector2D.hpp>
#include "utils.hpp"
using namespace Hyprutils::Math;
/* specifies when a mode wants to be updated */
enum EModeUpdate {
MOVE, // on mouse move
TICK // on tick (i.e. every frame)
};
class IMode {
public:
/* returns the desired updating strategy for the given mode */
virtual EModeUpdate strategy() = 0;
/* updates the calculations and returns the new angle */
virtual double update(Vector2D pos) = 0;
virtual SModeResult update(Vector2D pos) = 0;
};