mirror of
https://github.com/raysan5/raygui.git
synced 2026-02-05 05:39:18 -05:00
REVIEWED: fread()/fwrite()
This commit is contained in:
@ -109,7 +109,7 @@ int main(int argc, char *argv[])
|
|||||||
int dataSize = GetPixelDataSize(image.width, image.height, image.format);
|
int dataSize = GetPixelDataSize(image.width, image.height, image.format);
|
||||||
|
|
||||||
FILE *rawFile = fopen(fileName, "wb");
|
FILE *rawFile = fopen(fileName, "wb");
|
||||||
fwrite(image.data, dataSize, 1, rawFile);
|
fwrite(image.data, 1, dataSize, rawFile);
|
||||||
fclose(rawFile);
|
fclose(rawFile);
|
||||||
}
|
}
|
||||||
else if (fileFormatActive == 2) // CODE
|
else if (fileFormatActive == 2) // CODE
|
||||||
|
|||||||
54
src/raygui.h
54
src/raygui.h
@ -3462,9 +3462,9 @@ void GuiLoadStyle(const char *fileName)
|
|||||||
int propertyCount = 0;
|
int propertyCount = 0;
|
||||||
|
|
||||||
fread(signature, 1, 4, rgsFile);
|
fread(signature, 1, 4, rgsFile);
|
||||||
fread(&version, 1, sizeof(short), rgsFile);
|
fread(&version, sizeof(short), 1, rgsFile);
|
||||||
fread(&reserved, 1, sizeof(short), rgsFile);
|
fread(&reserved, sizeof(short), 1, rgsFile);
|
||||||
fread(&propertyCount, 1, sizeof(int), rgsFile);
|
fread(&propertyCount, sizeof(int), 1, rgsFile);
|
||||||
|
|
||||||
if ((signature[0] == 'r') &&
|
if ((signature[0] == 'r') &&
|
||||||
(signature[1] == 'G') &&
|
(signature[1] == 'G') &&
|
||||||
@ -3477,9 +3477,9 @@ void GuiLoadStyle(const char *fileName)
|
|||||||
|
|
||||||
for (int i = 0; i < propertyCount; i++)
|
for (int i = 0; i < propertyCount; i++)
|
||||||
{
|
{
|
||||||
fread(&controlId, 1, sizeof(short), rgsFile);
|
fread(&controlId, sizeof(short), 1, rgsFile);
|
||||||
fread(&propertyId, 1, sizeof(short), rgsFile);
|
fread(&propertyId, sizeof(short), 1, rgsFile);
|
||||||
fread(&propertyValue, 1, sizeof(unsigned int), rgsFile);
|
fread(&propertyValue, sizeof(unsigned int), 1, rgsFile);
|
||||||
|
|
||||||
if (controlId == 0) // DEFAULT control
|
if (controlId == 0) // DEFAULT control
|
||||||
{
|
{
|
||||||
@ -3496,7 +3496,7 @@ void GuiLoadStyle(const char *fileName)
|
|||||||
#if !defined(RAYGUI_STANDALONE)
|
#if !defined(RAYGUI_STANDALONE)
|
||||||
// Load custom font if available
|
// Load custom font if available
|
||||||
int fontDataSize = 0;
|
int fontDataSize = 0;
|
||||||
fread(&fontDataSize, 1, sizeof(int), rgsFile);
|
fread(&fontDataSize, sizeof(int), 1, rgsFile);
|
||||||
|
|
||||||
if (fontDataSize > 0)
|
if (fontDataSize > 0)
|
||||||
{
|
{
|
||||||
@ -3504,24 +3504,24 @@ void GuiLoadStyle(const char *fileName)
|
|||||||
int fontType = 0; // 0-Normal, 1-SDF
|
int fontType = 0; // 0-Normal, 1-SDF
|
||||||
Rectangle whiteRec = { 0 };
|
Rectangle whiteRec = { 0 };
|
||||||
|
|
||||||
fread(&font.baseSize, 1, sizeof(int), rgsFile);
|
fread(&font.baseSize, sizeof(int), 1, rgsFile);
|
||||||
fread(&font.glyphCount, 1, sizeof(int), rgsFile);
|
fread(&font.glyphCount, sizeof(int), 1, rgsFile);
|
||||||
fread(&fontType, 1, sizeof(int), rgsFile);
|
fread(&fontType, sizeof(int), 1, rgsFile);
|
||||||
|
|
||||||
// Load font white rectangle
|
// Load font white rectangle
|
||||||
fread(&whiteRec, 1, sizeof(Rectangle), rgsFile);
|
fread(&whiteRec, sizeof(Rectangle), 1, rgsFile);
|
||||||
|
|
||||||
// Load font image parameters
|
// Load font image parameters
|
||||||
int fontImageUncompSize = 0;
|
int fontImageUncompSize = 0;
|
||||||
int fontImageCompSize = 0;
|
int fontImageCompSize = 0;
|
||||||
fread(&fontImageUncompSize, 1, sizeof(int), rgsFile);
|
fread(&fontImageUncompSize, sizeof(int), 1, rgsFile);
|
||||||
fread(&fontImageCompSize, 1, sizeof(int), rgsFile);
|
fread(&fontImageCompSize, sizeof(int), 1, rgsFile);
|
||||||
|
|
||||||
Image imFont = { 0 };
|
Image imFont = { 0 };
|
||||||
imFont.mipmaps = 1;
|
imFont.mipmaps = 1;
|
||||||
fread(&imFont.width, 1, sizeof(int), rgsFile);
|
fread(&imFont.width, sizeof(int), 1, rgsFile);
|
||||||
fread(&imFont.height, 1, sizeof(int), rgsFile);
|
fread(&imFont.height, sizeof(int), 1, rgsFile);
|
||||||
fread(&imFont.format, 1, sizeof(int), rgsFile);
|
fread(&imFont.format, sizeof(int), 1, rgsFile);
|
||||||
|
|
||||||
if (fontImageCompSize < fontImageUncompSize)
|
if (fontImageCompSize < fontImageUncompSize)
|
||||||
{
|
{
|
||||||
@ -3551,16 +3551,16 @@ void GuiLoadStyle(const char *fileName)
|
|||||||
|
|
||||||
// Load font recs data
|
// Load font recs data
|
||||||
font.recs = (Rectangle *)RAYGUI_CALLOC(font.glyphCount, sizeof(Rectangle));
|
font.recs = (Rectangle *)RAYGUI_CALLOC(font.glyphCount, sizeof(Rectangle));
|
||||||
for (int i = 0; i < font.glyphCount; i++) fread(&font.recs[i], 1, sizeof(Rectangle), rgsFile);
|
for (int i = 0; i < font.glyphCount; i++) fread(&font.recs[i], sizeof(Rectangle), 1, rgsFile);
|
||||||
|
|
||||||
// Load font chars info data
|
// Load font chars info data
|
||||||
font.glyphs = (GlyphInfo *)RAYGUI_CALLOC(font.glyphCount, sizeof(GlyphInfo));
|
font.glyphs = (GlyphInfo *)RAYGUI_CALLOC(font.glyphCount, sizeof(GlyphInfo));
|
||||||
for (int i = 0; i < font.glyphCount; i++)
|
for (int i = 0; i < font.glyphCount; i++)
|
||||||
{
|
{
|
||||||
fread(&font.glyphs[i].value, 1, sizeof(int), rgsFile);
|
fread(&font.glyphs[i].value, sizeof(int), 1, rgsFile);
|
||||||
fread(&font.glyphs[i].offsetX, 1, sizeof(int), rgsFile);
|
fread(&font.glyphs[i].offsetX, sizeof(int), 1, rgsFile);
|
||||||
fread(&font.glyphs[i].offsetY, 1, sizeof(int), rgsFile);
|
fread(&font.glyphs[i].offsetY, sizeof(int), 1, rgsFile);
|
||||||
fread(&font.glyphs[i].advanceX, 1, sizeof(int), rgsFile);
|
fread(&font.glyphs[i].advanceX, sizeof(int), 1, rgsFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
GuiSetFont(font);
|
GuiSetFont(font);
|
||||||
@ -3746,10 +3746,10 @@ char **GuiLoadIcons(const char *fileName, bool loadIconsName)
|
|||||||
short iconSize = 0;
|
short iconSize = 0;
|
||||||
|
|
||||||
fread(signature, 1, 4, rgiFile);
|
fread(signature, 1, 4, rgiFile);
|
||||||
fread(&version, 1, sizeof(short), rgiFile);
|
fread(&version, sizeof(short), 1, rgiFile);
|
||||||
fread(&reserved, 1, sizeof(short), rgiFile);
|
fread(&reserved, sizeof(short), 1, rgiFile);
|
||||||
fread(&iconCount, 1, sizeof(short), rgiFile);
|
fread(&iconCount, sizeof(short), 1, rgiFile);
|
||||||
fread(&iconSize, 1, sizeof(short), rgiFile);
|
fread(&iconSize, sizeof(short), 1, rgiFile);
|
||||||
|
|
||||||
if ((signature[0] == 'r') &&
|
if ((signature[0] == 'r') &&
|
||||||
(signature[1] == 'G') &&
|
(signature[1] == 'G') &&
|
||||||
@ -3762,13 +3762,13 @@ char **GuiLoadIcons(const char *fileName, bool loadIconsName)
|
|||||||
for (int i = 0; i < iconCount; i++)
|
for (int i = 0; i < iconCount; i++)
|
||||||
{
|
{
|
||||||
guiIconsName[i] = (char *)RAYGUI_MALLOC(RAYGUI_ICON_MAX_NAME_LENGTH);
|
guiIconsName[i] = (char *)RAYGUI_MALLOC(RAYGUI_ICON_MAX_NAME_LENGTH);
|
||||||
fread(guiIconsName[i], RAYGUI_ICON_MAX_NAME_LENGTH, 1, rgiFile);
|
fread(guiIconsName[i], 1, RAYGUI_ICON_MAX_NAME_LENGTH, rgiFile);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else fseek(rgiFile, iconCount*RAYGUI_ICON_MAX_NAME_LENGTH, SEEK_CUR);
|
else fseek(rgiFile, iconCount*RAYGUI_ICON_MAX_NAME_LENGTH, SEEK_CUR);
|
||||||
|
|
||||||
// Read icons data directly over internal icons array
|
// Read icons data directly over internal icons array
|
||||||
fread(guiIconsPtr, iconCount*(iconSize*iconSize/32), sizeof(unsigned int), rgiFile);
|
fread(guiIconsPtr, sizeof(unsigned int), iconCount*(iconSize*iconSize/32), rgiFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
fclose(rgiFile);
|
fclose(rgiFile);
|
||||||
|
|||||||
Reference in New Issue
Block a user