@ -44,8 +44,8 @@ ImGui allows you create elaborate tools as well as very short-lived ones. On the
Binaries/Demo
Binaries/Demo
-------------
-------------
You should be able to build the examples from sources (tested on Windows/Mac/Linux). If you don't, let me know! If you want to have a quick look at the features of ImGui, you can download Windows binaries of the demo app here.
You should be able to build the examples from sources (tested on Windows/Mac/Linux). If you don't, let me know! If you want to have a quick look at some ImGui features, you can download Windows binaries of the demo app here:
floattarget_y=window->DC.CursorPosPrevLine.y+(window->DC.PrevLineHeight*center_y_ratio)+(GImGui->Style.ItemSpacing.y*(center_y_ratio-0.5f)*2.0f);// Precisely aim above, in the middle or below the last line.
floattarget_y=window->DC.CursorPosPrevLine.y-window->Pos.y;// Top of last item, in window space
target_y+=(window->DC.PrevLineHeight*center_y_ratio)+(GImGui->Style.ItemSpacing.y*(center_y_ratio-0.5f)*2.0f);// Precisely aim above, in the middle or below the last line.
// Store operand in a float so we can use fractional value for multipliers (*1.1), but constant always parsed as integer so we can fit big integers (e.g. 2000000003) past float precision
// Store operand in a float so we can use fractional value for multipliers (*1.1), but constant always parsed as integer so we can fit big integers (e.g. 2000000003) past float precision
floatarg1=0.0f;
floatarg1f=0.0f;
if(op=='+'){if(sscanf(buf,"%f",&arg1)==1)*v=(int)(arg0+arg1);}// Add (use "+-" to subtract)
if(op=='+'){if(sscanf(buf,"%f",&arg1f)==1)*v=(int)(arg0i+arg1f);}// Add (use "+-" to subtract)
// Everything in this file will be stripped out by the linker if you don't call ImGui::ShowTestWindow().
// Everything in this file will be stripped out by the linker if you don't call ImGui::ShowTestWindow().
// During development, you can call ImGui::ShowTestWindow() in your code to learn about various features of ImGui. Have it wired in a debug menu!
// During development, you can call ImGui::ShowTestWindow() in your code to learn about various features of ImGui. Have it wired in a debug menu!
// Removing this file from your project is hindering access to documentation for everyone in your team, likely leading you to poorer usage of the library.
// Removing this file from your project is hindering access to documentation for everyone in your team, likely leading you to poorer usage of the library.
// Note that you can #define IMGUI_DISABLE_TEST_WINDOWS in imconfig.h for the same effect.
// Note that you can #define IMGUI_DISABLE_TEST_WINDOWS in imconfig.h for the same effect.
// If you want to link core ImGui in your public builds but not those test windows, #define IMGUI_DISABLE_TEST_WINDOWS in imconfig.h and those functions will be empty.
// If you want to link core ImGui in your public builds but not those test windows, #define IMGUI_DISABLE_TEST_WINDOWS in imconfig.h and those functions will be empty.
// For any other case, if you have ImGui available you probably want this to be available for reference and execution.
// For any other case, if you have ImGui available you probably want this to be available for reference and execution.
// Thank you,
// Thank you,
// -Your beloved friend, imgui_demo.cpp (that you won't delete)
// -Your beloved friend, imgui_demo.cpp (that you won't delete)
// Message to beginner C/C++ programmer about the meaning of 'static': in this demo code, we frequently we use 'static' variables inside functions.
// We do this as a way to gather code and data in the same place, make the demo code faster to read, faster to write, and smaller. A static variable persist across calls,
// so it is essentially like a global variable but declared inside the scope of the function.
// It also happens to be a convenient way of storing simple UI related information as long as your function doesn't need to be reentrant or used in threads.
// This may be a pattern you want to use in your code (simple is beautiful!), but most of the real data you would be editing is likely to be stored outside your function.
ImGui::BeginChild("scrolling");// Demonstrate a trick: you can use Begin to set yourself in the context of another window (here we are already out of your child window)
ImGui::BeginChild("scrolling");// Demonstrate a trick: you can use Begin to set yourself in the context of another window (here we are already out of your child window)