tools
This commit is contained in:
191
src/settings.h
191
src/settings.h
@@ -23,92 +23,143 @@ struct SettingsEntry
|
||||
s32 offset;
|
||||
};
|
||||
|
||||
#define SETTINGS_COUNT (SETTINGS_BACKGROUND_COLOR_A + 1)
|
||||
#define SETTINGS_COUNT (SETTINGS_EDITOR_BACKGROUND_COLOR_A + 1)
|
||||
enum SettingsItem
|
||||
{
|
||||
SETTINGS_WINDOW_W,
|
||||
SETTINGS_WINDOW_H,
|
||||
SETTINGS_IS_AXIS,
|
||||
SETTINGS_IS_GRID,
|
||||
SETTINGS_IS_ROOT_TRANSFORM,
|
||||
SETTINGS_IS_SHOW_PIVOT,
|
||||
SETTINGS_PAN_X,
|
||||
SETTINGS_PAN_Y,
|
||||
SETTINGS_ZOOM,
|
||||
SETTINGS_GRID_SIZE_X,
|
||||
SETTINGS_GRID_SIZE_Y,
|
||||
SETTINGS_GRID_OFFSET_X,
|
||||
SETTINGS_GRID_OFFSET_Y,
|
||||
SETTINGS_GRID_COLOR_R,
|
||||
SETTINGS_GRID_COLOR_G,
|
||||
SETTINGS_GRID_COLOR_B,
|
||||
SETTINGS_GRID_COLOR_A,
|
||||
SETTINGS_AXIS_COLOR_R,
|
||||
SETTINGS_AXIS_COLOR_G,
|
||||
SETTINGS_AXIS_COLOR_B,
|
||||
SETTINGS_AXIS_COLOR_A,
|
||||
SETTINGS_BACKGROUND_COLOR_R,
|
||||
SETTINGS_BACKGROUND_COLOR_G,
|
||||
SETTINGS_BACKGROUND_COLOR_B,
|
||||
SETTINGS_BACKGROUND_COLOR_A
|
||||
SETTINGS_PREVIEW_IS_AXIS,
|
||||
SETTINGS_PREVIEW_IS_GRID,
|
||||
SETTINGS_PREVIEW_IS_ROOT_TRANSFORM,
|
||||
SETTINGS_PREVIEW_IS_SHOW_PIVOT,
|
||||
SETTINGS_PREVIEW_PAN_X,
|
||||
SETTINGS_PREVIEW_PAN_Y,
|
||||
SETTINGS_PREVIEW_ZOOM,
|
||||
SETTINGS_PREVIEW_GRID_SIZE_X,
|
||||
SETTINGS_PREVIEW_GRID_SIZE_Y,
|
||||
SETTINGS_PREVIEW_GRID_OFFSET_X,
|
||||
SETTINGS_PREVIEW_GRID_OFFSET_Y,
|
||||
SETTINGS_PREVIEW_GRID_COLOR_R,
|
||||
SETTINGS_PREVIEW_GRID_COLOR_G,
|
||||
SETTINGS_PREVIEW_GRID_COLOR_B,
|
||||
SETTINGS_PREVIEW_GRID_COLOR_A,
|
||||
SETTINGS_PREVIEW_AXIS_COLOR_R,
|
||||
SETTINGS_PREVIEW_AXIS_COLOR_G,
|
||||
SETTINGS_PREVIEW_AXIS_COLOR_B,
|
||||
SETTINGS_PREVIEW_AXIS_COLOR_A,
|
||||
SETTINGS_PREVIEW_BACKGROUND_COLOR_R,
|
||||
SETTINGS_PREVIEW_BACKGROUND_COLOR_G,
|
||||
SETTINGS_PREVIEW_BACKGROUND_COLOR_B,
|
||||
SETTINGS_PREVIEW_BACKGROUND_COLOR_A,
|
||||
SETTINGS_EDITOR_IS_GRID,
|
||||
SETTINGS_EDITOR_IS_BORDER,
|
||||
SETTINGS_EDITOR_PAN_X,
|
||||
SETTINGS_EDITOR_PAN_Y,
|
||||
SETTINGS_EDITOR_ZOOM,
|
||||
SETTINGS_EDITOR_GRID_SIZE_X,
|
||||
SETTINGS_EDITOR_GRID_SIZE_Y,
|
||||
SETTINGS_EDITOR_GRID_OFFSET_X,
|
||||
SETTINGS_EDITOR_GRID_OFFSET_Y,
|
||||
SETTINGS_EDITOR_GRID_COLOR_R,
|
||||
SETTINGS_EDITOR_GRID_COLOR_G,
|
||||
SETTINGS_EDITOR_GRID_COLOR_B,
|
||||
SETTINGS_EDITOR_GRID_COLOR_A,
|
||||
SETTINGS_EDITOR_BACKGROUND_COLOR_R,
|
||||
SETTINGS_EDITOR_BACKGROUND_COLOR_G,
|
||||
SETTINGS_EDITOR_BACKGROUND_COLOR_B,
|
||||
SETTINGS_EDITOR_BACKGROUND_COLOR_A
|
||||
};
|
||||
|
||||
struct Settings
|
||||
{
|
||||
s32 windowW = 1920;
|
||||
s32 windowH = 1080;
|
||||
bool isAxis = true;
|
||||
bool isGrid = true;
|
||||
bool isRootTransform = false;
|
||||
bool isShowPivot = false;
|
||||
f32 panX = 0.0f;
|
||||
f32 panY = 0.0f;
|
||||
f32 zoom = 200.0f;
|
||||
s32 gridSizeX = 10;
|
||||
s32 gridSizeY = 10;
|
||||
s32 gridOffsetX = 10;
|
||||
s32 gridOffsetY = 10;
|
||||
f32 gridColorR = 1.0f;
|
||||
f32 gridColorG = 1.0f;
|
||||
f32 gridColorB = 1.0f;
|
||||
f32 gridColorA = 0.125f;
|
||||
f32 axisColorR = 1.0f;
|
||||
f32 axisColorG = 1.0f;
|
||||
f32 axisColorB = 1.0f;
|
||||
f32 axisColorA = 0.5f;
|
||||
f32 backgroundColorR = 0.113f;
|
||||
f32 backgroundColorG = 0.184f;
|
||||
f32 backgroundColorB = 0.286f;
|
||||
f32 backgroundColorA = 1.0f;
|
||||
bool previewIsAxis = true;
|
||||
bool previewIsGrid = true;
|
||||
bool previewIsRootTransform = false;
|
||||
bool previewIsShowPivot = false;
|
||||
f32 previewPanX = 0.0f;
|
||||
f32 previewPanY = 0.0f;
|
||||
f32 previewZoom = 200.0f;
|
||||
s32 previewGridSizeX = 32;
|
||||
s32 previewGridSizeY = 32;
|
||||
s32 previewGridOffsetX = 0;
|
||||
s32 previewGridOffsetY = 0;
|
||||
f32 previewGridColorR = 1.0f;
|
||||
f32 previewGridColorG = 1.0f;
|
||||
f32 previewGridColorB = 1.0f;
|
||||
f32 previewGridColorA = 0.125f;
|
||||
f32 previewAxisColorR = 1.0f;
|
||||
f32 previewAxisColorG = 1.0f;
|
||||
f32 previewAxisColorB = 1.0f;
|
||||
f32 previewAxisColorA = 0.5f;
|
||||
f32 previewBackgroundColorR = 0.113f;
|
||||
f32 previewBackgroundColorG = 0.184f;
|
||||
f32 previewBackgroundColorB = 0.286f;
|
||||
f32 previewBackgroundColorA = 1.0f;
|
||||
bool editorIsGrid = true;
|
||||
bool editorIsBorder = true;
|
||||
f32 editorPanX = 0.0f;
|
||||
f32 editorPanY = 0.0f;
|
||||
f32 editorZoom = 200.0f;
|
||||
s32 editorGridSizeX = 32;
|
||||
s32 editorGridSizeY = 32;
|
||||
s32 editorGridOffsetX = 32;
|
||||
s32 editorGridOffsetY = 32;
|
||||
f32 editorGridColorR = 1.0f;
|
||||
f32 editorGridColorG = 1.0f;
|
||||
f32 editorGridColorB = 1.0f;
|
||||
f32 editorGridColorA = 0.125f;
|
||||
f32 editorBackgroundColorR = 0.113f;
|
||||
f32 editorBackgroundColorG = 0.184f;
|
||||
f32 editorBackgroundColorB = 0.286f;
|
||||
f32 editorBackgroundColorA = 1.0f;
|
||||
};
|
||||
|
||||
static const SettingsEntry SETTINGS_ENTRIES[SETTINGS_COUNT] =
|
||||
{
|
||||
{"windowW=", "windowW=%i", SETTINGS_TYPE_INT, offsetof(Settings, windowW)},
|
||||
{"windowH=", "windowH=%i", SETTINGS_TYPE_INT, offsetof(Settings, windowH)},
|
||||
{"isAxis=", "isAxis=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, isAxis)},
|
||||
{"isGrid=", "isGrid=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, isGrid)},
|
||||
{"isRootTransform=", "isRootTransform=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, isRootTransform)},
|
||||
{"isShowPivot=", "isShowPivot=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, isShowPivot)},
|
||||
{"panX=", "panX=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, panX)},
|
||||
{"panY=", "panY=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, panY)},
|
||||
{"zoom=", "zoom=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, zoom)},
|
||||
{"gridSizeX=", "gridSizeX=%i", SETTINGS_TYPE_INT, offsetof(Settings, gridSizeX)},
|
||||
{"gridSizeY=", "gridSizeY=%i", SETTINGS_TYPE_INT, offsetof(Settings, gridSizeY)},
|
||||
{"gridOffsetX=", "gridOffsetX=%i", SETTINGS_TYPE_INT, offsetof(Settings, gridOffsetX)},
|
||||
{"gridOffsetY=", "gridOffsetY=%i", SETTINGS_TYPE_INT, offsetof(Settings, gridOffsetY)},
|
||||
{"gridColorR=", "gridColorR=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, gridColorR)},
|
||||
{"gridColorG=", "gridColorG=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, gridColorG)},
|
||||
{"gridColorB=", "gridColorB=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, gridColorB)},
|
||||
{"gridColorA=", "gridColorA=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, gridColorA)},
|
||||
{"axisColorR=", "axisColorR=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, axisColorR)},
|
||||
{"axisColorG=", "axisColorG=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, axisColorG)},
|
||||
{"axisColorB=", "axisColorB=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, axisColorB)},
|
||||
{"axisColorA=", "axisColorA=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, axisColorA)},
|
||||
{"backgroundColorR=", "backgroundColorR=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, backgroundColorR)},
|
||||
{"backgroundColorG=", "backgroundColorG=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, backgroundColorG)},
|
||||
{"backgroundColorB=", "backgroundColorB=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, backgroundColorB)},
|
||||
{"backgroundColorA=", "backgroundColorA=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, backgroundColorA)}
|
||||
{"previewIsAxis=", "previewIsAxis=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, previewIsAxis)},
|
||||
{"previewIsGrid=", "previewIsGrid=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, previewIsGrid)},
|
||||
{"previewIsRootTransform=", "previewIsRootTransform=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, previewIsRootTransform)},
|
||||
{"previewIsShowPivot=", "previewIsShowPivot=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, previewIsShowPivot)},
|
||||
{"previewPanX=", "previewPanX=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewPanX)},
|
||||
{"previewPanY=", "previewPanY=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewPanY)},
|
||||
{"previewZoom=", "previewZoom=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewZoom)},
|
||||
{"previewGridSizeX=", "previewGridSizeX=%i", SETTINGS_TYPE_INT, offsetof(Settings, previewGridSizeX)},
|
||||
{"previewGridSizeY=", "previewGridSizeY=%i", SETTINGS_TYPE_INT, offsetof(Settings, previewGridSizeY)},
|
||||
{"previewGridOffsetX=", "previewGridOffsetX=%i", SETTINGS_TYPE_INT, offsetof(Settings, previewGridOffsetX)},
|
||||
{"previewGridOffsetY=", "previewGridOffsetY=%i", SETTINGS_TYPE_INT, offsetof(Settings, previewGridOffsetY)},
|
||||
{"previewGridColorR=", "previewGridColorR=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewGridColorR)},
|
||||
{"previewGridColorG=", "previewGridColorG=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewGridColorG)},
|
||||
{"previewGridColorB=", "previewGridColorB=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewGridColorB)},
|
||||
{"previewGridColorA=", "previewGridColorA=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewGridColorA)},
|
||||
{"previewAxisColorR=", "previewAxisColorR=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewAxisColorR)},
|
||||
{"previewAxisColorG=", "previewAxisColorG=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewAxisColorG)},
|
||||
{"previewAxisColorB=", "previewAxisColorB=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewAxisColorB)},
|
||||
{"previewAxisColorA=", "previewAxisColorA=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewAxisColorA)},
|
||||
{"previewBackgroundColorR=", "previewBackgroundColorR=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewBackgroundColorR)},
|
||||
{"previewBackgroundColorG=", "previewBackgroundColorG=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewBackgroundColorG)},
|
||||
{"previewBackgroundColorB=", "previewBackgroundColorB=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewBackgroundColorB)},
|
||||
{"previewBackgroundColorA=", "previewBackgroundColorA=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, previewBackgroundColorA)},
|
||||
{"editorIsGrid=", "editorIsGrid=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, editorIsGrid)},
|
||||
{"editorIsBorder=", "editorIsBorder=%i", SETTINGS_TYPE_BOOL, offsetof(Settings, editorIsBorder)},
|
||||
{"editorPanX=", "editorPanX=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorPanX)},
|
||||
{"editorPanY=", "editorPanY=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorPanY)},
|
||||
{"editorZoom=", "editorZoom=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorZoom)},
|
||||
{"editorGridSizeX=", "editorGridSizeX=%i", SETTINGS_TYPE_INT, offsetof(Settings, editorGridSizeX)},
|
||||
{"editorGridSizeY=", "editorGridSizeY=%i", SETTINGS_TYPE_INT, offsetof(Settings, editorGridSizeY)},
|
||||
{"editorGridOffsetX=", "editorGridOffsetX=%i", SETTINGS_TYPE_INT, offsetof(Settings, editorGridOffsetX)},
|
||||
{"editorGridOffsetY=", "editorGridOffsetY=%i", SETTINGS_TYPE_INT, offsetof(Settings, editorGridOffsetY)},
|
||||
{"editorGridColorR=", "editorGridColorR=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorGridColorR)},
|
||||
{"editorGridColorG=", "editorGridColorG=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorGridColorG)},
|
||||
{"editorGridColorB=", "editorGridColorB=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorGridColorB)},
|
||||
{"editorGridColorA=", "editorGridColorA=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorGridColorA)},
|
||||
{"editorBackgroundColorR=", "editorBackgroundColorR=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorBackgroundColorR)},
|
||||
{"editorBackgroundColorG=", "editorBackgroundColorG=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorBackgroundColorG)},
|
||||
{"editorBackgroundColorB=", "editorBackgroundColorB=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorBackgroundColorB)},
|
||||
{"editorBackgroundColorA=", "editorBackgroundColorA=%f", SETTINGS_TYPE_FLOAT, offsetof(Settings, editorBackgroundColorA)}
|
||||
};
|
||||
|
||||
void settings_save(Settings* self);
|
||||
|
Reference in New Issue
Block a user