2024-10-30 14:55:24 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
2024-10-31 01:43:00 +01:00
|
|
|
#include "raylib.h"
|
2024-10-30 14:55:24 +01:00
|
|
|
#include "datatypes.h"
|
2024-10-31 01:43:00 +01:00
|
|
|
#include <memory>
|
2024-10-30 14:55:24 +01:00
|
|
|
#include <vector>
|
|
|
|
|
|
2024-11-03 03:48:49 +01:00
|
|
|
namespace VISEQ::GRAPH {
|
|
|
|
|
class GraphItem{
|
2024-10-30 14:55:24 +01:00
|
|
|
|
2024-11-03 03:48:49 +01:00
|
|
|
public:
|
|
|
|
|
GraphItem() {static int _id; id=_id++;}
|
|
|
|
|
std::vector<std::shared_ptr<GraphItem>> neighbors;
|
|
|
|
|
int id = 0;
|
|
|
|
|
GraphItemType graphItemType;
|
2024-11-01 02:38:47 +01:00
|
|
|
|
2024-11-03 03:48:49 +01:00
|
|
|
virtual void draw(Vec2Df mouse, Camera2D cam) {};
|
|
|
|
|
virtual GraphItemType getType() {return graphItemType;}
|
|
|
|
|
virtual ~GraphItem() = default;
|
2024-11-02 15:52:16 +01:00
|
|
|
|
2024-11-03 03:48:49 +01:00
|
|
|
};
|
2024-11-02 15:52:16 +01:00
|
|
|
|
2024-11-03 03:48:49 +01:00
|
|
|
}
|
2024-11-02 15:52:16 +01:00
|
|
|
|