From aeaeb2a3e62a7d4fa06f2ab4d0dcba5c0b965615 Mon Sep 17 00:00:00 2001 From: Garux Date: Fri, 15 Dec 2017 05:18:09 +0300 Subject: [PATCH] * statusbar: del "R:" info (rotate increment from SI) +current map format info (F:AP/BP/220) +explanatory tooltip, describing shown infos --- radiant/brushmodule.cpp | 7 ++++++- radiant/camwindow.cpp | 4 ++-- radiant/mainframe.cpp | 16 ++++++++++------ radiant/mainframe.h | 5 +++-- radiant/map.cpp | 4 ++++ 5 files changed, 25 insertions(+), 11 deletions(-) diff --git a/radiant/brushmodule.cpp b/radiant/brushmodule.cpp index b21a5e7b..b086bd19 100644 --- a/radiant/brushmodule.cpp +++ b/radiant/brushmodule.cpp @@ -44,6 +44,10 @@ bool getTextureLockEnabled(){ return g_brush_texturelock_enabled; } +const char* getTexdefTypeIdLabel(){ + return g_bp_globals.m_texdefTypeId == TEXDEFTYPEID_QUAKE ? "AP" : g_bp_globals.m_texdefTypeId == TEXDEFTYPEID_BRUSHPRIMITIVES ? "BP" : "220"; +} + const char* BrushType_getName( EBrushType type ){ switch ( type ) { @@ -172,7 +176,8 @@ void Brush_Construct( EBrushType type ){ GlobalPreferenceSystem().registerPreference( "TexdefDefaultScale", FloatImportStringCaller( g_texdef_default_scale ), FloatExportStringCaller( g_texdef_default_scale ) ); GridStatus_getTextureLockEnabled = getTextureLockEnabled; - g_texture_lock_status_changed = FreeCaller(); + GridStatus_getTexdefTypeIdLabel = getTexdefTypeIdLabel; + g_texture_lock_status_changed = FreeCaller(); } void Brush_Destroy(){ diff --git a/radiant/camwindow.cpp b/radiant/camwindow.cpp index a1a47507..b5b6a35f 100644 --- a/radiant/camwindow.cpp +++ b/radiant/camwindow.cpp @@ -1948,7 +1948,7 @@ void Camera_CubeIn(){ } Camera_updateProjection( camwnd.getCamera() ); CamWnd_Update( camwnd ); - g_pParentWnd->SetGridStatus(); + GridStatus_changed(); } void Camera_CubeOut(){ @@ -1959,7 +1959,7 @@ void Camera_CubeOut(){ } Camera_updateProjection( camwnd.getCamera() ); CamWnd_Update( camwnd ); - g_pParentWnd->SetGridStatus(); + GridStatus_changed(); } bool Camera_GetFarClip(){ diff --git a/radiant/mainframe.cpp b/radiant/mainframe.cpp index 1af6be43..1e67a873 100644 --- a/radiant/mainframe.cpp +++ b/radiant/mainframe.cpp @@ -2551,6 +2551,9 @@ GtkWidget* create_main_statusbar( GtkWidget *pStatusLabel[c_count_status] ){ gtk_table_attach_defaults( table, GTK_WIDGET( frame ), i, i + 1, 0, 1 ); gtk_frame_set_shadow_type( frame, GTK_SHADOW_IN ); + if( i == c_grid_status ) + gtk_widget_set_tooltip_text( GTK_WIDGET( frame ), "G: Grid size\nF: map Format\nC: camera Clip scale\nL: texture Lock " ); + GtkLabel* label = GTK_LABEL( gtk_label_new( "Label" ) ); if( i == c_texture_status ) gtk_label_set_ellipsize( label, PANGO_ELLIPSIZE_START ); @@ -3293,30 +3296,31 @@ void Sys_Status( const char* status ){ } } -int getRotateIncrement(){ - return static_cast( g_si_globals.rotate ); -} +//int getRotateIncrement(){ +// return static_cast( g_si_globals.rotate ); +//} int getFarClipDistance(){ return g_camwindow_globals.m_nCubicScale; } float ( *GridStatus_getGridSize )() = GetGridSize; -int ( *GridStatus_getRotateIncrement )() = getRotateIncrement; +//int ( *GridStatus_getRotateIncrement )() = getRotateIncrement; int ( *GridStatus_getFarClipDistance )() = getFarClipDistance; bool ( *GridStatus_getTextureLockEnabled )(); +const char* ( *GridStatus_getTexdefTypeIdLabel )(); void MainFrame::SetGridStatus(){ StringOutputStream status( 64 ); const char* lock = ( GridStatus_getTextureLockEnabled() ) ? "ON" : "OFF"; status << ( GetSnapGridSize() > 0 ? "G:" : "g:" ) << GridStatus_getGridSize() - << " R:" << GridStatus_getRotateIncrement() + << " F:" << GridStatus_getTexdefTypeIdLabel() << " C:" << GridStatus_getFarClipDistance() << " L:" << lock; SetStatusText( m_grid_status, status.c_str() ); } -void GridStatus_onTextureLockEnabledChanged(){ +void GridStatus_changed(){ if ( g_pParentWnd != 0 ) { g_pParentWnd->SetGridStatus(); } diff --git a/radiant/mainframe.h b/radiant/mainframe.h index c9066894..920c322d 100644 --- a/radiant/mainframe.h +++ b/radiant/mainframe.h @@ -255,10 +255,11 @@ void MainFrame_Destroy(); extern float ( *GridStatus_getGridSize )(); -extern int ( *GridStatus_getRotateIncrement )(); +//extern int ( *GridStatus_getRotateIncrement )(); extern int ( *GridStatus_getFarClipDistance )(); extern bool ( *GridStatus_getTextureLockEnabled )(); -void GridStatus_onTextureLockEnabledChanged(); +extern const char* ( *GridStatus_getTexdefTypeIdLabel )(); +void GridStatus_changed(); SignalHandlerId XYWindowDestroyed_connect( const SignalHandler& handler ); void XYWindowDestroyed_disconnect( SignalHandlerId id ); diff --git a/radiant/map.cpp b/radiant/map.cpp index b1391952..163c7c9e 100644 --- a/radiant/map.cpp +++ b/radiant/map.cpp @@ -1178,6 +1178,8 @@ void Map_LoadFile( const char *filename ){ Map_StartPosition(); g_currentMap = &g_map; + + GridStatus_changed(); } class Excluder @@ -1433,6 +1435,8 @@ void Map_New(){ FocusViews( g_vector3_identity, 0 ); g_currentMap = &g_map; + + GridStatus_changed(); } extern void ConstructRegionBrushes( scene::Node * brushes[6], const Vector3 ®ion_mins, const Vector3 ®ion_maxs );