49 lines
1.2 KiB
C++
49 lines
1.2 KiB
C++
#pragma once
|
|
#ifndef REAL_BUILD
|
|
# include "externals.hh"
|
|
#endif
|
|
|
|
/*= UI UTILITIES =============================================================*/
|
|
|
|
namespace ImGui {
|
|
|
|
// Disable next ImGui controls
|
|
void PushDisabled( ) noexcept;
|
|
// Re-enable ImGui buttons
|
|
void PopDisabled( ) noexcept;
|
|
|
|
/*--------------------------------------------------------------------*/
|
|
|
|
// Display a menu item with a checkbox
|
|
bool MenuItemCheckbox(
|
|
char const* name ,
|
|
bool* checked ) noexcept;
|
|
|
|
/*--------------------------------------------------------------------*/
|
|
|
|
// Display a separator for the toolbar
|
|
void ToolbarSeparator( ) noexcept;
|
|
|
|
// Display a toolbar button
|
|
bool ToolbarButton(
|
|
char const* const string ,
|
|
ImVec2 const& size ,
|
|
char const* const tooltip = nullptr ,
|
|
bool enabled = true ) noexcept;
|
|
|
|
} // namespace ImGui
|
|
|
|
/*----------------------------------------------------------------------------*/
|
|
|
|
#define GL_CHECK( FAIL ) \
|
|
do { \
|
|
auto err_( glGetError( ) ); \
|
|
if ( err_ != GL_NO_ERROR ) FAIL; \
|
|
} while ( 0 )
|
|
|
|
#define GL_ASSERT( ) \
|
|
GL_CHECK({ \
|
|
fprintf( stderr , "GL error %x in %s:%d\n" , \
|
|
err_ , __FILE__ , __LINE__ ); \
|
|
abort( ); \
|
|
})
|