Add clangformat (fixes #641)

This commit is contained in:
Cong
2020-03-04 21:34:29 +11:00
parent 7bf4f8bdd5
commit 000ada3706
2 changed files with 64 additions and 64 deletions

8
.clang-format Normal file
View File

@@ -0,0 +1,8 @@
---
BasedOnStyle: Microsoft
AlignAfterOpenBracket: AlwaysBreak
ColumnLimit: '79'
TabWidth: '4'
UseTab: Always
...

View File

@@ -30,21 +30,19 @@
#include "editor_ui_common.h" #include "editor_ui_common.h"
#include "nk_window.h" #include "nk_window.h"
#define WIDTH 600 #define WIDTH 600
#define HEIGHT 500 #define HEIGHT 500
#define MAIN_WIDTH 400 #define MAIN_WIDTH 400
#define SIDE_WIDTH (WIDTH - MAIN_WIDTH) #define SIDE_WIDTH (WIDTH - MAIN_WIDTH)
#define ROW_HEIGHT 25 #define ROW_HEIGHT 25
typedef struct typedef struct
{ {
struct nk_context *ctx; struct nk_context *ctx;
PicManager *pm; PicManager *pm;
Mission *m; Mission *m;
int *brushIdx; int *brushIdx;
CArray texIdsTileClasses; // of GLuint CArray texIdsTileClasses; // of GLuint
int tileIdx; int tileIdx;
char *tcTypes; char *tcTypes;
char *floorStyles; char *floorStyles;
@@ -55,7 +53,6 @@ typedef struct
CArray texIdsDoorStyles; CArray texIdsDoorStyles;
} TileBrushData; } TileBrushData;
static void ResetTexIds(TileBrushData *data); static void ResetTexIds(TileBrushData *data);
static const char *IndexFloorStyleName(const int idx); static const char *IndexFloorStyleName(const int idx);
static const char *IndexWallStyleName(const int idx); static const char *IndexWallStyleName(const int idx);
@@ -76,7 +73,7 @@ void TileBrush(
memset(&cfg, 0, sizeof cfg); memset(&cfg, 0, sizeof cfg);
cfg.Title = "Tile Brush"; cfg.Title = "Tile Brush";
cfg.Size = svec2i(WIDTH, HEIGHT); cfg.Size = svec2i(WIDTH, HEIGHT);
color_t bg = { 41, 26, 26, 255 }; color_t bg = {41, 26, 26, 255};
cfg.BG = bg; cfg.BG = bg;
cfg.Handlers = handlers; cfg.Handlers = handlers;
cfg.Draw = Draw; cfg.Draw = Draw;
@@ -95,32 +92,32 @@ void TileBrush(
data.ctx = cfg.ctx; data.ctx = cfg.ctx;
data.tcTypes = GetClassNames( data.tcTypes = GetClassNames(
TILE_CLASS_COUNT, (const char *(*)(const int))TileClassTypeStr); TILE_CLASS_COUNT, (const char *(*)(const int))TileClassTypeStr);
data.floorStyles = GetClassNames( data.floorStyles =
pm->tileStyleNames.size, IndexFloorStyleName); GetClassNames(pm->tileStyleNames.size, IndexFloorStyleName);
data.wallStyles = GetClassNames( data.wallStyles =
pm->wallStyleNames.size, IndexWallStyleName); GetClassNames(pm->wallStyleNames.size, IndexWallStyleName);
data.doorStyles = GetClassNames( data.doorStyles =
pm->doorStyleNames.size, IndexDoorStyleName); GetClassNames(pm->doorStyleNames.size, IndexDoorStyleName);
TexArrayInit(&data.texIdsFloorStyles, pm->tileStyleNames.size); TexArrayInit(&data.texIdsFloorStyles, pm->tileStyleNames.size);
CA_FOREACH(const GLuint, texid, data.texIdsFloorStyles) CA_FOREACH(const GLuint, texid, data.texIdsFloorStyles)
const char *style = *(char **)CArrayGet(&pm->tileStyleNames, _ca_index); const char *style = *(char **)CArrayGet(&pm->tileStyleNames, _ca_index);
const TileClass *styleClass = GetOrAddTileClass( const TileClass *styleClass = GetOrAddTileClass(
&gTileFloor, pm, style, colorBattleshipGrey, colorOfficeGreen); &gTileFloor, pm, style, colorBattleshipGrey, colorOfficeGreen);
LoadTexFromPic(*texid, styleClass->Pic); LoadTexFromPic(*texid, styleClass->Pic);
CA_FOREACH_END() CA_FOREACH_END()
TexArrayInit(&data.texIdsWallStyles, pm->wallStyleNames.size); TexArrayInit(&data.texIdsWallStyles, pm->wallStyleNames.size);
CA_FOREACH(const GLuint, texid, data.texIdsWallStyles) CA_FOREACH(const GLuint, texid, data.texIdsWallStyles)
const char *style = *(char **)CArrayGet(&pm->wallStyleNames, _ca_index); const char *style = *(char **)CArrayGet(&pm->wallStyleNames, _ca_index);
const TileClass *styleClass = GetOrAddTileClass( const TileClass *styleClass = GetOrAddTileClass(
&gTileWall, pm, style, colorGravel, colorOfficeGreen); &gTileWall, pm, style, colorGravel, colorOfficeGreen);
LoadTexFromPic(*texid, styleClass->Pic); LoadTexFromPic(*texid, styleClass->Pic);
CA_FOREACH_END() CA_FOREACH_END()
TexArrayInit(&data.texIdsDoorStyles, pm->doorStyleNames.size); TexArrayInit(&data.texIdsDoorStyles, pm->doorStyleNames.size);
CA_FOREACH(const GLuint, texid, data.texIdsDoorStyles) CA_FOREACH(const GLuint, texid, data.texIdsDoorStyles)
const char *style = *(char **)CArrayGet(&pm->doorStyleNames, _ca_index); const char *style = *(char **)CArrayGet(&pm->doorStyleNames, _ca_index);
const TileClass *styleClass = GetOrAddTileClass( const TileClass *styleClass =
&gTileDoor, pm, style, colorWhite, colorOfficeGreen); GetOrAddTileClass(&gTileDoor, pm, style, colorWhite, colorOfficeGreen);
LoadTexFromPic(*texid, styleClass->Pic); LoadTexFromPic(*texid, styleClass->Pic);
CA_FOREACH_END() CA_FOREACH_END()
NKWindow(cfg); NKWindow(cfg);
@@ -139,18 +136,19 @@ void TileBrush(
} }
static void DrawTileOpsRow( static void DrawTileOpsRow(
struct nk_context *ctx, TileBrushData *tbData, struct nk_context *ctx, TileBrushData *tbData, TileClass *selectedTC,
TileClass *selectedTC, bool *result); bool *result);
static void DrawTilePropsSidebar( static void DrawTilePropsSidebar(
struct nk_context *ctx, TileBrushData *tbData, TileClass *selectedTC); struct nk_context *ctx, TileBrushData *tbData, TileClass *selectedTC);
static int DrawTileType(TileBrushData *tbData, TileClass *tc, const int tileId); static int DrawTileType(
TileBrushData *tbData, TileClass *tc, const int tileId);
static bool Draw(SDL_Window *win, struct nk_context *ctx, void *data) static bool Draw(SDL_Window *win, struct nk_context *ctx, void *data)
{ {
UNUSED(win); UNUSED(win);
bool result = true; bool result = true;
TileBrushData *tbData = data; TileBrushData *tbData = data;
TileClass* selectedTC = MissionStaticIdTileClass( TileClass *selectedTC =
&tbData->m->u.Static, *tbData->brushIdx); MissionStaticIdTileClass(&tbData->m->u.Static, *tbData->brushIdx);
if (nk_begin(ctx, "", nk_rect(0, 0, MAIN_WIDTH, HEIGHT), NK_WINDOW_BORDER)) if (nk_begin(ctx, "", nk_rect(0, 0, MAIN_WIDTH, HEIGHT), NK_WINDOW_BORDER))
{ {
DrawTileOpsRow(ctx, tbData, selectedTC, &result); DrawTileOpsRow(ctx, tbData, selectedTC, &result);
@@ -159,8 +157,7 @@ static bool Draw(SDL_Window *win, struct nk_context *ctx, void *data)
tbData->tileIdx = 0; tbData->tileIdx = 0;
int tilesDrawn = 0; int tilesDrawn = 0;
for (int i = 0; for (int i = 0;
tilesDrawn < hashmap_length(tbData->m->u.Static.TileClasses); tilesDrawn < hashmap_length(tbData->m->u.Static.TileClasses); i++)
i++)
{ {
TileClass *tc = MissionStaticIdTileClass(&tbData->m->u.Static, i); TileClass *tc = MissionStaticIdTileClass(&tbData->m->u.Static, i);
if (tc != NULL) if (tc != NULL)
@@ -173,8 +170,8 @@ static bool Draw(SDL_Window *win, struct nk_context *ctx, void *data)
nk_end(ctx); nk_end(ctx);
if (nk_begin( if (nk_begin(
ctx, "Properties", nk_rect(MAIN_WIDTH, 0, SIDE_WIDTH, HEIGHT), ctx, "Properties", nk_rect(MAIN_WIDTH, 0, SIDE_WIDTH, HEIGHT),
NK_WINDOW_BORDER | NK_WINDOW_TITLE) && NK_WINDOW_BORDER | NK_WINDOW_TITLE) &&
selectedTC != NULL) selectedTC != NULL)
{ {
DrawTilePropsSidebar(ctx, tbData, selectedTC); DrawTilePropsSidebar(ctx, tbData, selectedTC);
@@ -183,8 +180,8 @@ static bool Draw(SDL_Window *win, struct nk_context *ctx, void *data)
return result; return result;
} }
static void DrawTileOpsRow( static void DrawTileOpsRow(
struct nk_context *ctx, TileBrushData *tbData, struct nk_context *ctx, TileBrushData *tbData, TileClass *selectedTC,
TileClass *selectedTC, bool *result) bool *result)
{ {
nk_layout_row_dynamic(ctx, ROW_HEIGHT, 4); nk_layout_row_dynamic(ctx, ROW_HEIGHT, 4);
if (nk_button_label(ctx, "Done")) if (nk_button_label(ctx, "Done"))
@@ -195,8 +192,8 @@ static void DrawTileOpsRow(
{ {
TileClass tc; TileClass tc;
TileClassInit( TileClassInit(
&tc, &gPicManager, &gTileFloor, "tile", "normal", &tc, &gPicManager, &gTileFloor, "tile", "normal", colorGray,
colorGray, colorGray); colorGray);
if (MissionStaticAddTileClass(&tbData->m->u.Static, &tc) != NULL) if (MissionStaticAddTileClass(&tbData->m->u.Static, &tc) != NULL)
{ {
ResetTexIds(tbData); ResetTexIds(tbData);
@@ -205,8 +202,8 @@ static void DrawTileOpsRow(
} }
if (nk_button_label(ctx, "Duplicate")) if (nk_button_label(ctx, "Duplicate"))
{ {
if (MissionStaticAddTileClass( if (MissionStaticAddTileClass(&tbData->m->u.Static, selectedTC) !=
&tbData->m->u.Static, selectedTC) != NULL) NULL)
{ {
ResetTexIds(tbData); ResetTexIds(tbData);
} }
@@ -215,18 +212,17 @@ static void DrawTileOpsRow(
nk_button_label(ctx, "Remove")) nk_button_label(ctx, "Remove"))
{ {
if (MissionStaticRemoveTileClass( if (MissionStaticRemoveTileClass(
&tbData->m->u.Static, *tbData->brushIdx)) &tbData->m->u.Static, *tbData->brushIdx))
{ {
ResetTexIds(tbData); ResetTexIds(tbData);
// Set selected tile index to an existing tile // Set selected tile index to an existing tile
if (hashmap_length(tbData->m->u.Static.TileClasses) > 0) if (hashmap_length(tbData->m->u.Static.TileClasses) > 0)
{ {
for (*tbData->brushIdx = 0; for (*tbData->brushIdx = 0;
MissionStaticIdTileClass( MissionStaticIdTileClass(
&tbData->m->u.Static, &tbData->m->u.Static, *tbData->brushIdx) == NULL;
*tbData->brushIdx (*tbData->brushIdx)++)
) == NULL; ;
(*tbData->brushIdx)++);
} }
} }
} }
@@ -239,7 +235,7 @@ static void DrawTilePropsSidebar(
struct nk_context *ctx, TileBrushData *tbData, TileClass *selectedTC) struct nk_context *ctx, TileBrushData *tbData, TileClass *selectedTC)
{ {
nk_layout_row_dynamic(ctx, ROW_HEIGHT, 1); nk_layout_row_dynamic(ctx, ROW_HEIGHT, 1);
DrawTileTypeSelect(ctx, tbData, selectedTC); DrawTileTypeSelect(ctx, tbData, selectedTC);
if (selectedTC->Type != TILE_CLASS_NOTHING) if (selectedTC->Type != TILE_CLASS_NOTHING)
@@ -254,14 +250,12 @@ static void DrawTileTypeSelect(
{ {
nk_label(ctx, "Type:", NK_TEXT_LEFT); nk_label(ctx, "Type:", NK_TEXT_LEFT);
const TileClassType newType = nk_combo_separator( const TileClassType newType = nk_combo_separator(
ctx, tbData->tcTypes, '\0', selectedTC->Type, ctx, tbData->tcTypes, '\0', selectedTC->Type, TILE_CLASS_COUNT,
TILE_CLASS_COUNT, ROW_HEIGHT, ROW_HEIGHT, nk_vec2(nk_widget_width(ctx), 8 * ROW_HEIGHT));
nk_vec2(nk_widget_width(ctx), 8 * ROW_HEIGHT)
);
if (newType != selectedTC->Type) if (newType != selectedTC->Type)
{ {
TileClassTerminate(selectedTC); TileClassTerminate(selectedTC);
const TileClass* base = &gTileFloor; const TileClass *base = &gTileFloor;
switch (newType) switch (newType)
{ {
case TILE_CLASS_FLOOR: case TILE_CLASS_FLOOR:
@@ -287,8 +281,8 @@ static void DrawTileStyleSelect(
struct nk_context *ctx, TileBrushData *tbData, TileClass *selectedTC) struct nk_context *ctx, TileBrushData *tbData, TileClass *selectedTC)
{ {
nk_label(ctx, "Style:", NK_TEXT_LEFT); nk_label(ctx, "Style:", NK_TEXT_LEFT);
const GLuint* styleTexIds = NULL; const GLuint *styleTexIds = NULL;
const char* styles = ""; const char *styles = "";
int styleSelected = -1; int styleSelected = -1;
int styleCount = 0; int styleCount = 0;
switch (selectedTC->Type) switch (selectedTC->Type)
@@ -315,10 +309,8 @@ static void DrawTileStyleSelect(
break; break;
} }
const int newStyle = nk_combo_separator_image( const int newStyle = nk_combo_separator_image(
ctx, styleTexIds, styles, '\0', styleSelected, ctx, styleTexIds, styles, '\0', styleSelected, styleCount, ROW_HEIGHT,
styleCount, ROW_HEIGHT, nk_vec2(nk_widget_width(ctx), 8 * ROW_HEIGHT));
nk_vec2(nk_widget_width(ctx), 8 * ROW_HEIGHT)
);
if (newStyle != styleSelected) if (newStyle != styleSelected)
{ {
CFREE(selectedTC->Style); CFREE(selectedTC->Style);
@@ -335,8 +327,9 @@ static int DrawTileType(TileBrushData *tbData, TileClass *tc, const int tileId)
char name[256]; char name[256];
TileClassGetBrushName(name, tc); TileClassGetBrushName(name, tc);
const int selected = *tbData->brushIdx == tileId; const int selected = *tbData->brushIdx == tileId;
if (nk_select_label(tbData->ctx, name, if (nk_select_label(
NK_TEXT_ALIGN_BOTTOM | NK_TEXT_ALIGN_CENTERED, selected)) tbData->ctx, name, NK_TEXT_ALIGN_BOTTOM | NK_TEXT_ALIGN_CENTERED,
selected))
{ {
*tbData->brushIdx = tileId; *tbData->brushIdx = tileId;
} }
@@ -364,8 +357,7 @@ static void ResetTexIds(TileBrushData *data)
} }
const int nTileClasses = hashmap_length(data->m->u.Static.TileClasses); const int nTileClasses = hashmap_length(data->m->u.Static.TileClasses);
CArrayResize(&data->texIdsTileClasses, nTileClasses, NULL); CArrayResize(&data->texIdsTileClasses, nTileClasses, NULL);
glGenTextures( glGenTextures(nTileClasses, (GLuint *)data->texIdsTileClasses.data);
nTileClasses, (GLuint *)data->texIdsTileClasses.data);
} }
static const char *IndexFloorStyleName(const int idx) static const char *IndexFloorStyleName(const int idx)
@@ -401,10 +393,10 @@ static int TileStyleIndex(const CArray *styles, const char *style)
return -1; return -1;
} }
CA_FOREACH(const char *, styleName, *styles) CA_FOREACH(const char *, styleName, *styles)
if (strcmp(*styleName, style) == 0) if (strcmp(*styleName, style) == 0)
{ {
return _ca_index; return _ca_index;
} }
CA_FOREACH_END() CA_FOREACH_END()
return -1; return -1;
} }