change to lists, titles etc
This commit is contained in:
parent
00098aef4f
commit
a1a8f3b6d5
8 changed files with 128 additions and 37 deletions
|
|
@ -3,6 +3,7 @@
|
|||
#include "../defines.hpp"
|
||||
#include <deque>
|
||||
#include "WLClasses.hpp"
|
||||
#include <list>
|
||||
|
||||
struct SMonitor {
|
||||
Vector2D vecPosition = Vector2D(0,0);
|
||||
|
|
@ -20,8 +21,16 @@ struct SMonitor {
|
|||
// WLR stuff
|
||||
wlr_output* output = nullptr;
|
||||
|
||||
std::deque<SLayerSurface> m_dLayerSurfaces;
|
||||
// Double-linked list because we need to have constant mem addresses for signals
|
||||
std::list<SLayerSurface> m_lLayerSurfaces;
|
||||
|
||||
DYNLISTENER(monitorFrame);
|
||||
DYNLISTENER(monitorDestroy);
|
||||
|
||||
|
||||
// For the list lookup
|
||||
|
||||
bool operator==(const SMonitor& rhs) {
|
||||
return vecPosition == rhs.vecPosition && vecSize == rhs.vecSize && szName == rhs.szName;
|
||||
}
|
||||
};
|
||||
|
|
@ -14,24 +14,24 @@ class Vector2D {
|
|||
// returns the scale
|
||||
double normalize();
|
||||
|
||||
Vector2D operator+(Vector2D a) {
|
||||
Vector2D operator+(const Vector2D a) {
|
||||
return Vector2D(this->x + a.x, this->y + a.y);
|
||||
}
|
||||
Vector2D operator-(Vector2D a) {
|
||||
Vector2D operator-(const Vector2D a) {
|
||||
return Vector2D(this->x - a.x, this->y - a.y);
|
||||
}
|
||||
Vector2D operator*(float a) {
|
||||
Vector2D operator*(const float a) {
|
||||
return Vector2D(this->x * a, this->y * a);
|
||||
}
|
||||
Vector2D operator/(float a) {
|
||||
Vector2D operator/(const float a) {
|
||||
return Vector2D(this->x / a, this->y / a);
|
||||
}
|
||||
|
||||
bool operator==(Vector2D& a) {
|
||||
bool operator==(const Vector2D& a) {
|
||||
return a.x == x && a.y == y;
|
||||
}
|
||||
|
||||
bool operator!=(Vector2D& a) {
|
||||
bool operator!=(const Vector2D& a) {
|
||||
return a.x != x || a.y != y;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -15,6 +15,14 @@ struct SLayerSurface {
|
|||
|
||||
wlr_box geometry;
|
||||
zwlr_layer_shell_v1_layer layer;
|
||||
|
||||
int monitorID = -1;
|
||||
|
||||
|
||||
// For the list lookup
|
||||
bool operator==(const SLayerSurface& rhs) {
|
||||
return layerSurface == rhs.layerSurface && monitorID == rhs.monitorID;
|
||||
}
|
||||
};
|
||||
|
||||
struct SRenderData {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue