Skip to content

Commit

Permalink
* Misc->Colors: add Model Browser Background control
Browse files Browse the repository at this point in the history
  • Loading branch information
Garux committed Jan 30, 2025
1 parent 8820a72 commit d107800
Show file tree
Hide file tree
Showing 13 changed files with 41 additions and 4 deletions.
1 change: 1 addition & 0 deletions docs/changelog-custom.txt
Original file line number Diff line number Diff line change
Expand Up @@ -360,6 +360,7 @@ menus...
* Misc->Colors->Viewports Theme: load from .json presets stored in install/themes/_colors/
* add Blender Lighter and Green viewports themes by Julius
* Misc->Colors: add CameraIcon, AxisX, AxisY, AxisZ controls
* Misc->Colors: add Model Browser Background control

misc...
* removed note to save before going to preferences, project settings
Expand Down
6 changes: 6 additions & 0 deletions radiant/colors.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
#include "xywindow.h"
#include "camwindow.h"
#include "texwindow.h"
#include "modelwindow.h"
#include "render.h"
#include "mainframe.h"
#include "brushmodule.h"
Expand Down Expand Up @@ -145,9 +146,14 @@ Vector3 TextureBrowserColour_get(){
return TextureBrowser_getBackgroundColour();
}

Vector3 ModelBrowserColour_get(){
return ModelBrowser_getBackgroundColour();
}


std::array g_ColoursMenu{
ChooseColour( makeCallbackF ( TextureBrowserColour_get ) , makeCallbackF( TextureBrowser_setBackgroundColour ) , "Texture Browser Background..." , "ColorTexBroBackground" ),
ChooseColour( makeCallbackF ( ModelBrowserColour_get ) , makeCallbackF( ModelBrowser_setBackgroundColour ) , "Model Browser Background..." , "ColorModBroBackground" ),
ChooseColour( ColourGetCaller( g_camwindow_globals.color_cameraback ) , ColourSetCaller( g_camwindow_globals.color_cameraback ), "Camera Background..." , "ColorCameraBackground" ),
ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridback ) , ColourSetCaller( g_xywindow_globals.color_gridback ) , "Grid Background..." , "ColorGridBackground" ),
ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridmajor ) , ColourSetCaller( g_xywindow_globals.color_gridmajor ) , "Grid Major..." , "ColorGridMajor" ),
Expand Down
20 changes: 18 additions & 2 deletions radiant/modelwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -540,6 +540,7 @@ class ModelBrowser : public scene::Instantiable::Observer
}

const int m_MSAA = 8;
Vector3 m_background_color = Vector3( .25f );

QWidget* m_parent = nullptr;
QOpenGLWidget* m_gl_widget = nullptr;
Expand Down Expand Up @@ -766,7 +767,9 @@ void ModelBrowser_render(){
gl().glDepthMask( GL_TRUE );
gl().glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );

gl().glClearColor( .25f, .25f, .25f, 0 );
gl().glClearColor( g_ModelBrowser.m_background_color[0],
g_ModelBrowser.m_background_color[1],
g_ModelBrowser.m_background_color[2], 0 );
gl().glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

const unsigned int globalstate = RENDER_DEPTHTEST
Expand Down Expand Up @@ -857,7 +860,9 @@ void ModelBrowser_render(){
}

{ // brighter background squares
gl().glColor4f( 0.3f, 0.3f, 0.3f, 1.f );
gl().glColor4f( g_ModelBrowser.m_background_color[0] + .05f,
g_ModelBrowser.m_background_color[1] + .05f,
g_ModelBrowser.m_background_color[2] + .05f, 1.f );
gl().glDepthMask( GL_FALSE );
gl().glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
gl().glDisable( GL_CULL_FACE );
Expand Down Expand Up @@ -1322,6 +1327,16 @@ void ModelBrowser_destroyWindow(){
}


const Vector3& ModelBrowser_getBackgroundColour(){
return g_ModelBrowser.m_background_color;
}

void ModelBrowser_setBackgroundColour( const Vector3& colour ){
g_ModelBrowser.m_background_color = colour;
g_ModelBrowser.queueDraw();
}


#include "preferencesystem.h"
#include "preferences.h"
#include "stringio.h"
Expand Down Expand Up @@ -1361,6 +1376,7 @@ void ModelBrowser_registerPreferencesPage(){
void ModelBrowser_Construct(){
GlobalPreferenceSystem().registerPreference( "ModelBrowserFolders", CopiedStringImportStringCaller( g_ModelBrowser.m_prefFoldersToLoad ), CopiedStringExportStringCaller( g_ModelBrowser.m_prefFoldersToLoad ) );
GlobalPreferenceSystem().registerPreference( "ModelBrowserCellSize", IntImportStringCaller( g_ModelBrowser.m_cellSize ), IntExportStringCaller( g_ModelBrowser.m_cellSize ) );
GlobalPreferenceSystem().registerPreference( "ColorModBroBackground", Vector3ImportStringCaller( g_ModelBrowser.m_background_color ), Vector3ExportStringCaller( g_ModelBrowser.m_background_color ) );

ModelBrowser_registerPreferencesPage();

Expand Down
6 changes: 6 additions & 0 deletions radiant/modelwindow.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,9 @@ class QWidget* ModelBrowser_constructWindow( QWidget* toplevel );
void ModelBrowser_destroyWindow();

void ModelBrowser_flushReferences();

template<typename Element> class BasicVector3;
typedef BasicVector3<float> Vector3;

const Vector3& ModelBrowser_getBackgroundColour();
void ModelBrowser_setBackgroundColour( const Vector3& colour );
4 changes: 2 additions & 2 deletions radiant/xywindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1813,8 +1813,8 @@ void XYWnd::XY_Draw(){
//
gl().glViewport( 0, 0, m_nWidth, m_nHeight );
gl().glClearColor( g_xywindow_globals.color_gridback[0],
g_xywindow_globals.color_gridback[1],
g_xywindow_globals.color_gridback[2], 0 );
g_xywindow_globals.color_gridback[1],
g_xywindow_globals.color_gridback[2], 0 );

gl().glClear( GL_COLOR_BUFFER_BIT );

Expand Down
1 change: 1 addition & 0 deletions setup/data/tools/themes/_colors/Adwaita Dark.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/* color scheme to fit the GTK Adwaita Dark theme */
{
"ColorTexBroBackground": [0.25, 0.25, 0.25],
"ColorModBroBackground": [0.25, 0.25, 0.25],
"ColorCameraBackground": [0.25, 0.25, 0.25],
"ColorGridBackground" : [0.25, 0.25, 0.25],
"ColorGridMajor" : [0.14, 0.15, 0.15],
Expand Down
1 change: 1 addition & 0 deletions setup/data/tools/themes/_colors/Black and Green.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"ColorTexBroBackground": [0.25, 0.25, 0.25],
"ColorModBroBackground": [0.25, 0.25, 0.25],
"ColorCameraBackground": [0.25, 0.25, 0.25],
"ColorGridBackground" : [0.0, 0.0, 0.0],
"ColorGridMajor" : [0.3, 0.5, 0.5],
Expand Down
1 change: 1 addition & 0 deletions setup/data/tools/themes/_colors/Blender Dark.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"ColorTexBroBackground": [0.25, 0.25, 0.25],
"ColorModBroBackground": [0.25, 0.25, 0.25],
"ColorCameraBackground": [0.25, 0.25, 0.25],
"ColorGridBackground" : [0.225803, 0.225803, 0.225803],
"ColorGridMajor" : [0.301960, 0.301960, 0.301960],
Expand Down
1 change: 1 addition & 0 deletions setup/data/tools/themes/_colors/Blender Lighter.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/* Blender2 Color Scheme: LIGHTER background, BLACK grid & WHITE brushes */
{
"ColorTexBroBackground": [0.239215, 0.239215, 0.239215],
"ColorModBroBackground": [0.239215, 0.239215, 0.239215],
"ColorCameraBackground": [0.239215, 0.239215, 0.239215],
"ColorGridBackground" : [0.290196, 0.290196, 0.290196],
"ColorGridMajor" : [0.156862, 0.156862, 0.156862],
Expand Down
1 change: 1 addition & 0 deletions setup/data/tools/themes/_colors/Green.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/* Green Color Scheme: GREEN background, GREEN grid & WHITE brushes */
{
"ColorTexBroBackground": [0.239215, 0.239215, 0.239215],
"ColorModBroBackground": [0.239215, 0.239215, 0.239215],
"ColorCameraBackground": [0.239215, 0.239215, 0.239215],
"ColorGridBackground" : [0.094117, 0.317647, 0.274509],
"ColorGridMajor" : [0.223529, 0.450980, 0.407843],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/* ydnar: to emulate maya/max/lightwave color schemes */
{
"ColorTexBroBackground": [0.25, 0.25, 0.25],
"ColorModBroBackground": [0.25, 0.25, 0.25],
"ColorCameraBackground": [0.25, 0.25, 0.25],
"ColorGridBackground" : [0.77, 0.77, 0.77],
"ColorGridMajor" : [0.89, 0.89, 0.89],
Expand Down
1 change: 1 addition & 0 deletions setup/data/tools/themes/_colors/Q3Radiant Original.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"ColorTexBroBackground": [0.25, 0.25, 0.25],
"ColorModBroBackground": [0.25, 0.25, 0.25],
"ColorCameraBackground": [0.25, 0.25, 0.25],
"ColorGridBackground" : [1.0, 1.0, 1.0],
"ColorGridMajor" : [0.5, 0.5, 0.5],
Expand Down
1 change: 1 addition & 0 deletions setup/data/tools/themes/_colors/QE4 Original.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"ColorTexBroBackground": [0.25, 0.25, 0.25],
"ColorModBroBackground": [0.25, 0.25, 0.25],
"ColorCameraBackground": [0.25, 0.25, 0.25],
"ColorGridBackground" : [1.0, 1.0, 1.0],
"ColorGridMajor" : [0.5, 0.5, 0.5],
Expand Down

0 comments on commit d107800

Please sign in to comment.