mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-30 20:51:06 +01:00 
			
		
		
		
	Tables comments + Backends: DirectX9: calling IDirect3DStateBlock9::Capture() after CreateStateBlock() which appears to workaround/fix state restoring issues. . (#3857)
This commit is contained in:
		| @@ -11,6 +11,7 @@ | |||||||
|  |  | ||||||
| // CHANGELOG | // CHANGELOG | ||||||
| // (minor and older changes stripped away, please see git history for details) | // (minor and older changes stripped away, please see git history for details) | ||||||
|  | //  2021-03-18: DirectX9: Calling IDirect3DStateBlock9::Capture() after CreateStateBlock() as a workaround for state restoring issues (see #3857). | ||||||
| //  2021-03-03: DirectX9: Added support for IMGUI_USE_BGRA_PACKED_COLOR in user's imconfig file. | //  2021-03-03: DirectX9: Added support for IMGUI_USE_BGRA_PACKED_COLOR in user's imconfig file. | ||||||
| //  2021-02-18: DirectX9: Change blending equation to preserve alpha in output buffer. | //  2021-02-18: DirectX9: Change blending equation to preserve alpha in output buffer. | ||||||
| //  2019-05-29: DirectX9: Added support for large mesh (64K+ vertices), enable ImGuiBackendFlags_RendererHasVtxOffset flag. | //  2019-05-29: DirectX9: Added support for large mesh (64K+ vertices), enable ImGuiBackendFlags_RendererHasVtxOffset flag. | ||||||
| @@ -137,6 +138,11 @@ void ImGui_ImplDX9_RenderDrawData(ImDrawData* draw_data) | |||||||
|     IDirect3DStateBlock9* d3d9_state_block = NULL; |     IDirect3DStateBlock9* d3d9_state_block = NULL; | ||||||
|     if (g_pd3dDevice->CreateStateBlock(D3DSBT_ALL, &d3d9_state_block) < 0) |     if (g_pd3dDevice->CreateStateBlock(D3DSBT_ALL, &d3d9_state_block) < 0) | ||||||
|         return; |         return; | ||||||
|  |     if (d3d9_state_block->Capture() < 0) | ||||||
|  |     { | ||||||
|  |         d3d9_state_block->Release(); | ||||||
|  |         return; | ||||||
|  |     } | ||||||
|  |  | ||||||
|     // Backup the DX9 transform (DX9 documentation suggests that it is included in the StateBlock but it doesn't appear to) |     // Backup the DX9 transform (DX9 documentation suggests that it is included in the StateBlock but it doesn't appear to) | ||||||
|     D3DMATRIX last_world, last_view, last_projection; |     D3DMATRIX last_world, last_view, last_projection; | ||||||
|   | |||||||
| @@ -42,6 +42,8 @@ Other Changes: | |||||||
| - Drags, Sliders, Inputs: Specifying a NULL format to Float functions default them to "%.3f" to be | - Drags, Sliders, Inputs: Specifying a NULL format to Float functions default them to "%.3f" to be | ||||||
|   consistent with the compile-time default. (#3922) |   consistent with the compile-time default. (#3922) | ||||||
| - DragScalar: Add default value for v_speed argument to match higher-level functions. (#3922) [@eliasdaler] | - DragScalar: Add default value for v_speed argument to match higher-level functions. (#3922) [@eliasdaler] | ||||||
|  | - Backends: DirectX9: calling IDirect3DStateBlock9::Capture() after CreateStateBlock() which appears to | ||||||
|  |   workaround/fix state restoring issues. Unknown exactly why so, but bit of a cargo-cult fix. (#3857) | ||||||
| - Docs: Improvements to minor mistakes in documentation comments (#3923) [@ANF-Studios] | - Docs: Improvements to minor mistakes in documentation comments (#3923) [@ANF-Studios] | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -8,6 +8,7 @@ Index of this file: | |||||||
| // [SECTION] Commentary | // [SECTION] Commentary | ||||||
| // [SECTION] Header mess | // [SECTION] Header mess | ||||||
| // [SECTION] Tables: Main code | // [SECTION] Tables: Main code | ||||||
|  | // [SECTION] Tables: Simple accessors | ||||||
| // [SECTION] Tables: Row changes | // [SECTION] Tables: Row changes | ||||||
| // [SECTION] Tables: Columns changes | // [SECTION] Tables: Columns changes | ||||||
| // [SECTION] Tables: Columns width management | // [SECTION] Tables: Columns width management | ||||||
| @@ -235,6 +236,19 @@ Index of this file: | |||||||
| //----------------------------------------------------------------------------- | //----------------------------------------------------------------------------- | ||||||
| // [SECTION] Tables: Main code | // [SECTION] Tables: Main code | ||||||
| //----------------------------------------------------------------------------- | //----------------------------------------------------------------------------- | ||||||
|  | // - TableFixFlags() [Internal] | ||||||
|  | // - TableFindByID() [Internal] | ||||||
|  | // - BeginTable() | ||||||
|  | // - BeginTableEx() [Internal] | ||||||
|  | // - TableBeginInitMemory() [Internal] | ||||||
|  | // - TableBeginApplyRequests() [Internal] | ||||||
|  | // - TableSetupColumnFlags() [Internal] | ||||||
|  | // - TableUpdateLayout() [Internal] | ||||||
|  | // - TableUpdateBorders() [Internal] | ||||||
|  | // - EndTable() | ||||||
|  | // - TableSetupColumn() | ||||||
|  | // - TableSetupScrollFreeze() | ||||||
|  | //----------------------------------------------------------------------------- | ||||||
|  |  | ||||||
| // Configuration | // Configuration | ||||||
| static const int TABLE_DRAW_CHANNEL_BG0 = 0; | static const int TABLE_DRAW_CHANNEL_BG0 = 0; | ||||||
| @@ -1435,6 +1449,20 @@ void ImGui::TableSetupScrollFreeze(int columns, int rows) | |||||||
|     table->IsUnfrozenRows = (table->FreezeRowsCount == 0); // Make sure this is set before TableUpdateLayout() so ImGuiListClipper can benefit from it.b |     table->IsUnfrozenRows = (table->FreezeRowsCount == 0); // Make sure this is set before TableUpdateLayout() so ImGuiListClipper can benefit from it.b | ||||||
| } | } | ||||||
|  |  | ||||||
|  | //----------------------------------------------------------------------------- | ||||||
|  | // [SECTION] Tables: Simple accessors | ||||||
|  | //----------------------------------------------------------------------------- | ||||||
|  | // - TableGetColumnCount() | ||||||
|  | // - TableGetColumnName() | ||||||
|  | // - TableGetColumnName() [Internal] | ||||||
|  | // - TableSetColumnEnabled() [Internal] | ||||||
|  | // - TableGetColumnFlags() | ||||||
|  | // - TableGetCellBgRect() [Internal] | ||||||
|  | // - TableGetColumnResizeID() [Internal] | ||||||
|  | // - TableGetHoveredColumn() [Internal] | ||||||
|  | // - TableSetBgColor() | ||||||
|  | //----------------------------------------------------------------------------- | ||||||
|  |  | ||||||
| int ImGui::TableGetColumnCount() | int ImGui::TableGetColumnCount() | ||||||
| { | { | ||||||
|     ImGuiContext& g = *GImGui; |     ImGuiContext& g = *GImGui; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user