mirror of
https://github.com/ocornut/imgui.git
synced 2024-11-24 21:59:02 +08:00
Merge branch 'Dadeos-compilation_warnings'
This commit is contained in:
commit
6dd2b13220
83
imgui.cpp
83
imgui.cpp
@ -378,7 +378,7 @@ static ImU32 crc32(const void* data, size_t data_size, ImU32 seed = 0)
|
||||
{
|
||||
ImU32 crc = i;
|
||||
for (ImU32 j = 0; j < 8; j++)
|
||||
crc = (crc >> 1) ^ (-int(crc & 1) & polynomial);
|
||||
crc = (crc >> 1) ^ (ImU32(-int(crc & 1)) & polynomial);
|
||||
crc32_lut[i] = crc;
|
||||
}
|
||||
}
|
||||
@ -396,16 +396,14 @@ static size_t ImFormatString(char* buf, size_t buf_size, const char* fmt, ...)
|
||||
int w = vsnprintf(buf, buf_size, fmt, args);
|
||||
va_end(args);
|
||||
buf[buf_size-1] = 0;
|
||||
if (w == -1) w = (int)buf_size;
|
||||
return w;
|
||||
return (w == -1) ? buf_size : (size_t)w;
|
||||
}
|
||||
|
||||
static size_t ImFormatStringV(char* buf, size_t buf_size, const char* fmt, va_list args)
|
||||
{
|
||||
int w = vsnprintf(buf, buf_size, fmt, args);
|
||||
buf[buf_size-1] = 0;
|
||||
if (w == -1) w = (int)buf_size;
|
||||
return w;
|
||||
return (w == -1) ? buf_size : (size_t)w;
|
||||
}
|
||||
|
||||
static ImU32 ImConvertColorFloat4ToU32(const ImVec4& in)
|
||||
@ -900,13 +898,13 @@ void ImGuiTextBuffer::append(const char* fmt, ...)
|
||||
return;
|
||||
|
||||
const size_t write_off = Buf.size();
|
||||
if (write_off + len >= Buf.capacity())
|
||||
if (write_off + (size_t)len >= Buf.capacity())
|
||||
Buf.reserve(Buf.capacity() * 2);
|
||||
|
||||
Buf.resize(write_off + (size_t)len);
|
||||
|
||||
va_start(args, fmt);
|
||||
ImFormatStringV(&Buf[write_off] - 1, len+1, fmt, args);
|
||||
ImFormatStringV(&Buf[write_off] - 1, (size_t)len+1, fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
@ -1052,13 +1050,14 @@ static void LoadSettings()
|
||||
return;
|
||||
if (fseek(f, 0, SEEK_END))
|
||||
return;
|
||||
long f_size = ftell(f);
|
||||
if (f_size == -1)
|
||||
const long f_size_signed = ftell(f);
|
||||
if (f_size_signed == -1)
|
||||
return;
|
||||
size_t f_size = (size_t)f_size_signed;
|
||||
if (fseek(f, 0, SEEK_SET))
|
||||
return;
|
||||
char* f_data = new char[f_size+1];
|
||||
f_size = (long)fread(f_data, 1, f_size, f); // Text conversion alter read size so let's not be fussy about return value
|
||||
f_size = fread(f_data, 1, f_size, f); // Text conversion alter read size so let's not be fussy about return value
|
||||
fclose(f);
|
||||
if (f_size == 0)
|
||||
{
|
||||
@ -3009,7 +3008,7 @@ void PushID(const void* ptr_id)
|
||||
window->IDStack.push_back(window->GetID(ptr_id));
|
||||
}
|
||||
|
||||
void PushID(int int_id)
|
||||
void PushID(const int int_id)
|
||||
{
|
||||
const void* ptr_id = (void*)(intptr_t)int_id;
|
||||
ImGuiWindow* window = GetCurrentWindow();
|
||||
@ -3363,7 +3362,7 @@ enum ImGuiPlotType
|
||||
|
||||
static float PlotGetValue(const float* values, size_t stride, int idx)
|
||||
{
|
||||
float v = *(float*)((unsigned char*)values + idx * stride);
|
||||
const float v = *(float*)((unsigned char*)values + (size_t)idx * stride);
|
||||
return v;
|
||||
}
|
||||
|
||||
@ -3616,14 +3615,14 @@ void STB_TEXTEDIT_DELETECHARS(STB_TEXTEDIT_STRING* obj, int idx, int n)
|
||||
bool STB_TEXTEDIT_INSERTCHARS(STB_TEXTEDIT_STRING* obj, int idx, const char* new_text, int new_text_len)
|
||||
{
|
||||
char* buf_end = obj->Text + obj->BufSize;
|
||||
const int text_len = (int)strlen(obj->Text);
|
||||
const size_t text_len = strlen(obj->Text);
|
||||
|
||||
if (new_text_len > buf_end - (obj->Text + text_len + 1))
|
||||
return false;
|
||||
|
||||
memmove(obj->Text + idx + new_text_len, obj->Text + idx, text_len - idx);
|
||||
memcpy(obj->Text + idx, new_text, new_text_len);
|
||||
obj->Text[text_len + new_text_len] = 0;
|
||||
memmove(obj->Text + (size_t)idx + new_text_len, obj->Text + (size_t)idx, text_len - (size_t)idx);
|
||||
memcpy(obj->Text + (size_t)idx, new_text, (size_t)new_text_len);
|
||||
obj->Text[text_len + (size_t)new_text_len] = 0;
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -4066,7 +4065,7 @@ static bool Combo_ArrayGetter(void* data, int idx, const char** out_text)
|
||||
|
||||
bool Combo(const char* label, int* current_item, const char** items, int items_count, int popup_height_items)
|
||||
{
|
||||
bool value_changed = Combo(label, current_item, Combo_ArrayGetter, (void*)items, items_count, popup_height_items);
|
||||
const bool value_changed = Combo(label, current_item, Combo_ArrayGetter, (void*)items, items_count, popup_height_items);
|
||||
return value_changed;
|
||||
}
|
||||
|
||||
@ -4139,7 +4138,7 @@ bool Combo(const char* label, int* current_item, bool (*items_getter)(void*, int
|
||||
ImGui::SameLine(0, (int)g.Style.ItemInnerSpacing.x);
|
||||
ImGui::TextUnformatted(label, FindTextDisplayEnd(label));
|
||||
|
||||
ImGui::PushID(id);
|
||||
ImGui::PushID((int)id);
|
||||
bool menu_toggled = false;
|
||||
if (hovered)
|
||||
{
|
||||
@ -4547,7 +4546,7 @@ float GetColumnOffset(int column_index)
|
||||
if (column_index < 0)
|
||||
column_index = window->DC.ColumnCurrent;
|
||||
|
||||
const ImGuiID column_id = ImGuiID(window->DC.ColumnsSetID + column_index);
|
||||
const ImGuiID column_id = window->DC.ColumnsSetID + ImGuiID(column_index);
|
||||
RegisterAliveId(column_id);
|
||||
const float default_t = column_index / (float)window->DC.ColumnsCount;
|
||||
const float t = (float)window->StateStorage.GetInt(column_id, (int)(default_t * 8096)) / 8096; // Cheaply store our floating point value inside the integer (could store an union into the map?)
|
||||
@ -4563,7 +4562,7 @@ void SetColumnOffset(int column_index, float offset)
|
||||
if (column_index < 0)
|
||||
column_index = window->DC.ColumnCurrent;
|
||||
|
||||
const ImGuiID column_id = ImGuiID(window->DC.ColumnsSetID + column_index);
|
||||
const ImGuiID column_id = window->DC.ColumnsSetID + ImGuiID(column_index);
|
||||
const float t = (offset - window->DC.ColumnStartX) / (window->Size.x - g.Style.ScrollBarWidth - window->DC.ColumnStartX);
|
||||
window->StateStorage.SetInt(column_id, (int)(t*8096));
|
||||
}
|
||||
@ -4613,7 +4612,7 @@ void Columns(int columns_count, const char* id, bool border)
|
||||
{
|
||||
float x = window->Pos.x + GetColumnOffset(i);
|
||||
|
||||
const ImGuiID column_id = ImGuiID(window->DC.ColumnsSetID + i);
|
||||
const ImGuiID column_id = window->DC.ColumnsSetID + ImGuiID(i);
|
||||
const ImGuiAabb column_aabb(ImVec2(x-4,y1),ImVec2(x+4,y2));
|
||||
|
||||
if (IsClipped(column_aabb))
|
||||
@ -4840,7 +4839,7 @@ void ImDrawList::AddArc(const ImVec2& center, float rad, ImU32 col, int a_min, i
|
||||
|
||||
if (tris)
|
||||
{
|
||||
ReserveVertices((a_max-a_min) * 3);
|
||||
ReserveVertices((unsigned int)(a_max-a_min) * 3);
|
||||
for (int a = a_min; a < a_max; a++)
|
||||
{
|
||||
AddVtx(center + circle_vtx[a % IM_ARRAYSIZE(circle_vtx)] * rad, col);
|
||||
@ -4850,7 +4849,7 @@ void ImDrawList::AddArc(const ImVec2& center, float rad, ImU32 col, int a_min, i
|
||||
}
|
||||
else
|
||||
{
|
||||
ReserveVertices((a_max-a_min) * 6);
|
||||
ReserveVertices((unsigned int)(a_max-a_min) * 6);
|
||||
for (int a = a_min; a < a_max; a++)
|
||||
AddVtxLine(center + circle_vtx[a % IM_ARRAYSIZE(circle_vtx)] * rad, center + circle_vtx[(a+1) % IM_ARRAYSIZE(circle_vtx)] * rad, col);
|
||||
}
|
||||
@ -4961,7 +4960,7 @@ void ImDrawList::AddCircle(const ImVec2& centre, float radius, ImU32 col, int nu
|
||||
if ((col >> 24) == 0)
|
||||
return;
|
||||
|
||||
ReserveVertices(num_segments*6);
|
||||
ReserveVertices((unsigned int)num_segments*6);
|
||||
const float a_step = 2*PI/(float)num_segments;
|
||||
float a0 = 0.0f;
|
||||
for (int i = 0; i < num_segments; i++)
|
||||
@ -4977,7 +4976,7 @@ void ImDrawList::AddCircleFilled(const ImVec2& centre, float radius, ImU32 col,
|
||||
if ((col >> 24) == 0)
|
||||
return;
|
||||
|
||||
ReserveVertices(num_segments*3);
|
||||
ReserveVertices((unsigned int)num_segments*3);
|
||||
const float a_step = 2*PI/(float)num_segments;
|
||||
float a0 = 0.0f;
|
||||
for (int i = 0; i < num_segments; i++)
|
||||
@ -4999,17 +4998,17 @@ void ImDrawList::AddText(ImFont font, float font_size, const ImVec2& pos, ImU32
|
||||
text_end = text_begin + strlen(text_begin);
|
||||
|
||||
// reserve vertices for worse case
|
||||
const int char_count = (int)(text_end - text_begin);
|
||||
const int vtx_count_max = char_count * 6;
|
||||
const unsigned int char_count = (unsigned int)(text_end - text_begin);
|
||||
const unsigned int vtx_count_max = char_count * 6;
|
||||
const size_t vtx_begin = vtx_buffer.size();
|
||||
ReserveVertices(vtx_count_max);
|
||||
|
||||
font->RenderText(font_size, pos, col, clip_rect_stack.back(), text_begin, text_end, vtx_write);
|
||||
|
||||
// give unused vertices
|
||||
vtx_buffer.resize(vtx_write - &vtx_buffer.front());
|
||||
const int vtx_count = (int)(vtx_buffer.size() - vtx_begin);
|
||||
commands.back().vtx_count -= (vtx_count_max - vtx_count);
|
||||
// give back unused vertices
|
||||
vtx_buffer.resize((size_t)(vtx_write - &vtx_buffer.front()));
|
||||
const size_t vtx_count = vtx_buffer.size() - vtx_begin;
|
||||
commands.back().vtx_count -= (unsigned int)(vtx_count_max - vtx_count);
|
||||
vtx_write -= (vtx_count_max - vtx_count);
|
||||
}
|
||||
|
||||
@ -5050,8 +5049,10 @@ bool ImBitmapFont::LoadFromFile(const char* filename)
|
||||
return false;
|
||||
if (fseek(f, 0, SEEK_END))
|
||||
return false;
|
||||
if ((DataSize = (int)ftell(f)) == -1)
|
||||
const long f_size = ftell(f);
|
||||
if (f_size == -1)
|
||||
return false;
|
||||
DataSize = (size_t)f_size;
|
||||
if (fseek(f, 0, SEEK_SET))
|
||||
return false;
|
||||
if ((Data = (unsigned char*)malloc(DataSize)) == NULL)
|
||||
@ -5059,7 +5060,7 @@ bool ImBitmapFont::LoadFromFile(const char* filename)
|
||||
fclose(f);
|
||||
return false;
|
||||
}
|
||||
if ((int)fread(Data, 1, DataSize, f) != DataSize)
|
||||
if (fread(Data, 1, DataSize, f) != DataSize)
|
||||
{
|
||||
fclose(f);
|
||||
free(Data);
|
||||
@ -5070,7 +5071,7 @@ bool ImBitmapFont::LoadFromFile(const char* filename)
|
||||
return LoadFromMemory(Data, DataSize);
|
||||
}
|
||||
|
||||
bool ImBitmapFont::LoadFromMemory(const void* data, int data_size)
|
||||
bool ImBitmapFont::LoadFromMemory(const void* data, size_t data_size)
|
||||
{
|
||||
Data = (unsigned char*)data;
|
||||
DataSize = data_size;
|
||||
@ -5358,9 +5359,9 @@ static void SetClipboardTextFn_DefaultImpl(const char* text, const char* text_en
|
||||
}
|
||||
if (!text_end)
|
||||
text_end = text + strlen(text);
|
||||
GImGui.PrivateClipboard = (char*)malloc(text_end - text + 1);
|
||||
memcpy(GImGui.PrivateClipboard, text, text_end - text);
|
||||
GImGui.PrivateClipboard[text_end - text] = 0;
|
||||
GImGui.PrivateClipboard = (char*)malloc((size_t)(text_end - text) + 1);
|
||||
memcpy(GImGui.PrivateClipboard, text, (size_t)(text_end - text));
|
||||
GImGui.PrivateClipboard[(size_t)(text_end - text)] = 0;
|
||||
}
|
||||
|
||||
#endif
|
||||
@ -5456,7 +5457,7 @@ void ShowTestWindow(bool* open)
|
||||
static bool no_scrollbar = false;
|
||||
static float fill_alpha = 0.65f;
|
||||
|
||||
const ImU32 layout_flags = (no_titlebar ? ImGuiWindowFlags_NoTitleBar : 0) | (no_border ? 0 : ImGuiWindowFlags_ShowBorders) | (no_resize ? ImGuiWindowFlags_NoResize : 0) | (no_move ? ImGuiWindowFlags_NoMove : 0) | (no_scrollbar ? ImGuiWindowFlags_NoScrollbar : 0);
|
||||
const ImGuiWindowFlags layout_flags = (no_titlebar ? ImGuiWindowFlags_NoTitleBar : 0) | (no_border ? 0 : ImGuiWindowFlags_ShowBorders) | (no_resize ? ImGuiWindowFlags_NoResize : 0) | (no_move ? ImGuiWindowFlags_NoMove : 0) | (no_scrollbar ? ImGuiWindowFlags_NoScrollbar : 0);
|
||||
ImGui::Begin("ImGui Test", open, ImVec2(550,680), fill_alpha, layout_flags);
|
||||
ImGui::PushItemWidth(ImGui::GetWindowWidth() * 0.65f);
|
||||
|
||||
@ -5621,7 +5622,7 @@ void ShowTestWindow(bool* open)
|
||||
|
||||
static bool pause;
|
||||
static ImVector<float> values; if (values.empty()) { values.resize(100); memset(&values.front(), 0, values.size()*sizeof(float)); }
|
||||
static int values_offset = 0;
|
||||
static size_t values_offset = 0;
|
||||
if (!pause)
|
||||
{
|
||||
// create dummy data at 60 hz
|
||||
@ -5635,7 +5636,7 @@ void ShowTestWindow(bool* open)
|
||||
phase += 0.10f*values_offset;
|
||||
}
|
||||
}
|
||||
ImGui::PlotLines("Frame Times", &values.front(), (int)values.size(), values_offset, "avg 0.0", -1.0f, 1.0f, ImVec2(0,70));
|
||||
ImGui::PlotLines("Frame Times", &values.front(), (int)values.size(), (int)values_offset, "avg 0.0", -1.0f, 1.0f, ImVec2(0,70));
|
||||
|
||||
ImGui::SameLine(); ImGui::Checkbox("pause", &pause);
|
||||
ImGui::PlotHistogram("Histogram", arr, IM_ARRAYSIZE(arr), 0, NULL, 0.0f, 1.0f, ImVec2(0,70));
|
||||
@ -5842,7 +5843,7 @@ void ShowTestWindow(bool* open)
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button("Add 1000 lines"))
|
||||
{
|
||||
for (size_t i = 0; i < 1000; i++)
|
||||
for (int i = 0; i < 1000; i++)
|
||||
log.append("%i The quick brown fox jumps over the lazy dog\n", lines+i);
|
||||
lines += 1000;
|
||||
}
|
||||
|
4
imgui.h
4
imgui.h
@ -622,7 +622,7 @@ struct ImBitmapFont
|
||||
#pragma pack(pop)
|
||||
|
||||
unsigned char* Data; // Raw data, content of .fnt file
|
||||
int DataSize; //
|
||||
size_t DataSize; //
|
||||
bool DataOwned; //
|
||||
const FntInfo* Info; // (point into raw data)
|
||||
const FntCommon* Common; // (point into raw data)
|
||||
@ -637,7 +637,7 @@ struct ImBitmapFont
|
||||
ImBitmapFont();
|
||||
~ImBitmapFont() { Clear(); }
|
||||
|
||||
bool LoadFromMemory(const void* data, int data_size);
|
||||
bool LoadFromMemory(const void* data, size_t data_size);
|
||||
bool LoadFromFile(const char* filename);
|
||||
void Clear();
|
||||
void BuildLookupTable();
|
||||
|
Loading…
Reference in New Issue
Block a user