Files
WickedEngine/Editor/Translator.h
T
2018-09-14 22:36:17 +01:00

51 lines
856 B
C++

#pragma once
#include "CommonInclude.h"
#include "wiECS.h"
class Translator
{
private:
XMFLOAT4 prevPointer;
XMFLOAT4X4 dragStart, dragEnd;
bool dragging;
bool dragStarted;
bool dragEnded;
public:
Translator();
~Translator();
void Update();
void Draw(wiSceneSystem::CameraComponent* camera, GRAPHICSTHREAD threadID);
wiECS::Entity entityID = wiECS::INVALID_ENTITY;
bool enabled;
enum TRANSLATOR_STATE
{
TRANSLATOR_IDLE,
TRANSLATOR_X,
TRANSLATOR_Y,
TRANSLATOR_Z,
TRANSLATOR_XY,
TRANSLATOR_XZ,
TRANSLATOR_YZ,
TRANSLATOR_XYZ,
} state;
float dist;
bool isTranslator, isScalator, isRotator;
// Check if the drag started in this exact frame
bool IsDragStarted();
XMFLOAT4X4 GetDragStart();
// Check if the drag ended in this exact frame
bool IsDragEnded();
XMFLOAT4X4 GetDragEnd();
static void LoadShaders();
};