Demo: Added extra demo in the Basic Horizontal Layout section. (#1977) + PR guidelines

This commit is contained in:
omar 2018-07-30 14:30:26 +02:00
parent b5b972d0ef
commit 6d78045ff8
2 changed files with 21 additions and 4 deletions

View File

@ -1,6 +1,7 @@
- When adding a feature, please describe the usage context (how you intend to use it, why you need it, etc.). - When adding a feature, please describe the usage context (how you intend to use it, why you need it, etc.).
- When fixing a warning or compilation problem, please post the compiler log and specify the version and OS you are using. - When fixing a warning or compilation problem, please post the compiler log and specify the version and OS you are using.
- Try to attach screenshots to clarify the context and demonstrate the feature at a glance. - Try to attach screenshots to clarify the context and demonstrate the feature at a glance.
- Make sure your code follows the coding style already used in imgui (spaces instead of tabs, "local_variable", "FunctionName", "MemberName", etc.).
- Make sure you create a branch for the pull request. In Git, 1 PR is associated to 1 branch. If you keep pushing to the same branch after you submitted the PR, your new commits will appear in the PR. - Make sure you create a branch for the pull request. In Git, 1 PR is associated to 1 branch. If you keep pushing to the same branch after you submitted the PR, your new commits will appear in the PR.
- You can read [CONTRIBUTING.md](https://github.com/ocornut/imgui/blob/master/.github/CONTRIBUTING.md) for more details. - You can read [CONTRIBUTING.md](https://github.com/ocornut/imgui/blob/master/.github/CONTRIBUTING.md) for more details.

View File

@ -1533,10 +1533,26 @@ void ImGui::ShowDemoWindow(bool* p_open)
ImGui::PopItemWidth(); ImGui::PopItemWidth();
// Dummy // Dummy
ImVec2 sz(30,30); ImVec2 button_sz(40,40);
ImGui::Button("A", sz); ImGui::SameLine(); ImGui::Button("A", button_sz); ImGui::SameLine();
ImGui::Dummy(sz); ImGui::SameLine(); ImGui::Dummy(button_sz); ImGui::SameLine();
ImGui::Button("B", sz); ImGui::Button("B", button_sz);
// Manually wrapping (we should eventually provide this as an automatic layout feature, but for now you can do it manually)
ImGui::Text("Manually wrapping:");
ImGuiStyle& style = ImGui::GetStyle();
int buttons_count = 20;
float window_visible_x2 = ImGui::GetWindowPos().x + ImGui::GetWindowContentRegionMax().x;
for (int n = 0; n < buttons_count; n++)
{
ImGui::PushID(n);
ImGui::Button("Box", button_sz);
float last_button_x2 = ImGui::GetItemRectMax().x;
float next_button_x2 = last_button_x2 + style.ItemSpacing.x + button_sz.x; // Expected position if next button was on same line
if (n + 1 < buttons_count && next_button_x2 < window_visible_x2)
ImGui::SameLine();
ImGui::PopID();
}
ImGui::TreePop(); ImGui::TreePop();
} }