diff --git a/docs/changelog-custom.txt b/docs/changelog-custom.txt index d0a3a3ea..d82ad791 100644 --- a/docs/changelog-custom.txt +++ b/docs/changelog-custom.txt @@ -323,6 +323,7 @@ binds... * m1 drag + ctrl (Drag tool, 3D view): move-snap selecton bbox corner to pointed position in scene * m1 drag + alt + ctrl: rotate-snap selection bbox to pointed brush face plane (by opposite to bbox grab side) * m1 drag + ctrl + shift: move selection along initially pointed brush face plane + * update SelectionSystem highlights, manipulations immediately onModifierDown(), onModifierUp() * add alt + m1 selection style to transform manipulator for scaling in 3D menus... @@ -356,6 +357,7 @@ menus... * Misc->Colors->Themes->Adwaita Dark color theme * view->filter->sky: Q3 shader based skies (skyParms keyword) * Misc->Colors display colors + * Misc->Colors->Viewports Theme: load from .json presets stored in install/themes/_colors/ misc... * removed note to save before going to preferences, project settings diff --git a/libs/os/path.h b/libs/os/path.h index 420109a0..72dbeef7 100644 --- a/libs/os/path.h +++ b/libs/os/path.h @@ -199,8 +199,7 @@ public: MatchFileExtension( const char* extension, const Functor& functor ) : m_extension( extension ), m_functor( functor ){ } void operator()( const char* name ) const { - const char* extension = path_get_extension( name ); - if ( extension_equal( extension, m_extension ) ) { + if ( path_extension_is( name, m_extension ) ) { m_functor( name ); } } diff --git a/radiant/colors.cpp b/radiant/colors.cpp index 3090aa6f..2336fb93 100644 --- a/radiant/colors.cpp +++ b/radiant/colors.cpp @@ -33,8 +33,16 @@ #include "preferences.h" #include "commands.h" #include "gtkmisc.h" +#include "gtkutil/menu.h" +#include "os/dir.h" +#include "os/path.h" +#include "stream/stringstream.h" +#include "stream/textfilestream.h" #include "theme.h" +#define RAPIDJSON_PARSE_DEFAULT_FLAGS ( kParseCommentsFlag | kParseTrailingCommasFlag | kParseNanAndInfFlag ) +#include "rapidjson/document.h" + //! Make COLOR_BRUSHES override worldspawn eclass colour. @@ -45,146 +53,6 @@ void SetWorldspawnColour( const Vector3& colour ){ eclass_capture_state( worldspawn ); } -void ColorScheme_Original(){ - TextureBrowser_setBackgroundColour( Vector3( 0.25f, 0.25f, 0.25f ) ); - - g_camwindow_globals.color_selbrushes3d = Vector3( 1.0f, 0.0f, 0.0f ); - g_camwindow_globals.color_cameraback = Vector3( 0.25f, 0.25f, 0.25f ); - CamWnd_reconstructStatic(); - CamWnd_Update( *g_pParentWnd->GetCamWnd() ); - - g_xywindow_globals.color_gridback = Vector3( 1.0f, 1.0f, 1.0f ); - g_xywindow_globals.color_gridminor = Vector3( 0.75f, 0.75f, 0.75f ); - g_xywindow_globals.color_gridmajor = Vector3( 0.5f, 0.5f, 0.5f ); - g_xywindow_globals.color_gridblock = Vector3( 0.0f, 0.0f, 1.0f ); - g_xywindow_globals.color_gridtext = Vector3( 0.0f, 0.0f, 0.0f ); - g_xywindow_globals.color_selbrushes = Vector3( 1.0f, 0.0f, 0.0f ); - XYWnd::recaptureStates(); - g_xywindow_globals.color_clipper = Vector3( 0.0f, 0.0f, 1.0f ); - Brush_clipperColourChanged(); - g_xywindow_globals.color_brushes = Vector3( 0.0f, 0.0f, 0.0f ); - SetWorldspawnColour( g_xywindow_globals.color_brushes ); - g_xywindow_globals.color_viewname = Vector3( 0.5f, 0.0f, 0.75f ); - XY_UpdateAllWindows(); -} - -void ColorScheme_QER(){ - TextureBrowser_setBackgroundColour( Vector3( 0.25f, 0.25f, 0.25f ) ); - - g_camwindow_globals.color_cameraback = Vector3( 0.25f, 0.25f, 0.25f ); - g_camwindow_globals.color_selbrushes3d = Vector3( 1.0f, 0.0f, 0.0f ); - CamWnd_reconstructStatic(); - CamWnd_Update( *g_pParentWnd->GetCamWnd() ); - - g_xywindow_globals.color_gridback = Vector3( 1.0f, 1.0f, 1.0f ); - g_xywindow_globals.color_gridminor = Vector3( 1.0f, 1.0f, 1.0f ); - g_xywindow_globals.color_gridmajor = Vector3( 0.5f, 0.5f, 0.5f ); - g_xywindow_globals.color_gridblock = Vector3( 0.0f, 0.0f, 1.0f ); - g_xywindow_globals.color_gridtext = Vector3( 0.0f, 0.0f, 0.0f ); - g_xywindow_globals.color_selbrushes = Vector3( 1.0f, 0.0f, 0.0f ); - XYWnd::recaptureStates(); - g_xywindow_globals.color_clipper = Vector3( 0.0f, 0.0f, 1.0f ); - Brush_clipperColourChanged(); - g_xywindow_globals.color_brushes = Vector3( 0.0f, 0.0f, 0.0f ); - SetWorldspawnColour( g_xywindow_globals.color_brushes ); - g_xywindow_globals.color_viewname = Vector3( 0.5f, 0.0f, 0.75f ); - XY_UpdateAllWindows(); -} - -void ColorScheme_Black(){ - TextureBrowser_setBackgroundColour( Vector3( 0.25f, 0.25f, 0.25f ) ); - - g_camwindow_globals.color_cameraback = Vector3( 0.25f, 0.25f, 0.25f ); - g_camwindow_globals.color_selbrushes3d = Vector3( 1.0f, 0.0f, 0.0f ); - CamWnd_reconstructStatic(); - CamWnd_Update( *g_pParentWnd->GetCamWnd() ); - - g_xywindow_globals.color_gridback = Vector3( 0.0f, 0.0f, 0.0f ); - g_xywindow_globals.color_gridminor = Vector3( 0.2f, 0.2f, 0.2f ); - g_xywindow_globals.color_gridmajor = Vector3( 0.3f, 0.5f, 0.5f ); - g_xywindow_globals.color_gridblock = Vector3( 0.0f, 0.0f, 1.0f ); - g_xywindow_globals.color_gridtext = Vector3( 1.0f, 1.0f, 1.0f ); - g_xywindow_globals.color_selbrushes = Vector3( 1.0f, 0.0f, 0.0f ); - XYWnd::recaptureStates(); - g_xywindow_globals.color_clipper = Vector3( 0.0f, 0.0f, 1.0f ); - Brush_clipperColourChanged(); - g_xywindow_globals.color_brushes = Vector3( 1.0f, 1.0f, 1.0f ); - SetWorldspawnColour( g_xywindow_globals.color_brushes ); - g_xywindow_globals.color_viewname = Vector3( 0.7f, 0.7f, 0.0f ); - XY_UpdateAllWindows(); -} - -/* ydnar: to emulate maya/max/lightwave color schemes */ -void ColorScheme_Ydnar(){ - TextureBrowser_setBackgroundColour( Vector3( 0.25f, 0.25f, 0.25f ) ); - - g_camwindow_globals.color_cameraback = Vector3( 0.25f, 0.25f, 0.25f ); - g_camwindow_globals.color_selbrushes3d = Vector3( 1.0f, 0.0f, 0.0f ); - CamWnd_reconstructStatic(); - CamWnd_Update( *g_pParentWnd->GetCamWnd() ); - - g_xywindow_globals.color_gridback = Vector3( 0.77f, 0.77f, 0.77f ); - g_xywindow_globals.color_gridminor = Vector3( 0.83f, 0.83f, 0.83f ); - g_xywindow_globals.color_gridmajor = Vector3( 0.89f, 0.89f, 0.89f ); - g_xywindow_globals.color_gridblock = Vector3( 1.0f, 1.0f, 1.0f ); - g_xywindow_globals.color_gridtext = Vector3( 0.0f, 0.0f, 0.0f ); - g_xywindow_globals.color_selbrushes = Vector3( 1.0f, 0.0f, 0.0f ); - XYWnd::recaptureStates(); - g_xywindow_globals.color_clipper = Vector3( 0.0f, 0.0f, 1.0f ); - Brush_clipperColourChanged(); - g_xywindow_globals.color_brushes = Vector3( 0.0f, 0.0f, 0.0f ); - SetWorldspawnColour( g_xywindow_globals.color_brushes ); - g_xywindow_globals.color_viewname = Vector3( 0.5f, 0.0f, 0.75f ); - XY_UpdateAllWindows(); -} - -void ColorScheme_Blender(){ - TextureBrowser_setBackgroundColour( Vector3( 0.25f, 0.25f, 0.25f ) ); - - g_camwindow_globals.color_cameraback = Vector3( 0.25f, 0.25f, 0.25f ); - g_camwindow_globals.color_selbrushes3d = Vector3( 1.0f, 0.627451f, 0.0f ); - CamWnd_reconstructStatic(); - CamWnd_Update( *g_pParentWnd->GetCamWnd() ); - - g_xywindow_globals.color_gridback = Vector3( .225803f, .225803f, .225803f ); - g_xywindow_globals.color_gridminor = Vector3( .254902f, .254902f, .254902f ); - g_xywindow_globals.color_gridmajor = Vector3( .301960f, .301960f, .301960f ); - g_xywindow_globals.color_gridblock = Vector3( 1.0f, 1.0f, 1.0f ); - g_xywindow_globals.color_gridtext = Vector3( .972549f, .972549f, .972549f ); - g_xywindow_globals.color_selbrushes = Vector3( 1.0f, 0.627451f, 0.0f ); - XYWnd::recaptureStates(); - g_xywindow_globals.color_clipper = Vector3( 0.0f, 0.0f, 1.0f ); - Brush_clipperColourChanged(); - g_xywindow_globals.color_brushes = Vector3( 0.0f, 0.0f, 0.0f ); - SetWorldspawnColour( g_xywindow_globals.color_brushes ); - g_xywindow_globals.color_viewname = Vector3( 0.516136f, 0.516136f, 0.516136f ); - XY_UpdateAllWindows(); -} - -/* color scheme to fit the GTK Adwaita Dark theme */ -void ColorScheme_AdwaitaDark() -{ - TextureBrowser_setBackgroundColour( Vector3( 0.25f, 0.25f, 0.25f ) ); - - g_camwindow_globals.color_cameraback = Vector3( 0.25f, 0.25f, 0.25f ); - g_camwindow_globals.color_selbrushes3d = Vector3( 1.0f, 0.0f, 0.0f ); - CamWnd_reconstructStatic(); - CamWnd_Update( *g_pParentWnd->GetCamWnd() ); - - g_xywindow_globals.color_gridback = Vector3( 0.25f, 0.25f, 0.25f ); - g_xywindow_globals.color_gridminor = Vector3( 0.21f, 0.23f, 0.23f ); - g_xywindow_globals.color_gridmajor = Vector3( 0.14f, 0.15f, 0.15f ); - g_xywindow_globals.color_gridblock = Vector3( 1.0f, 1.0f, 1.0f ); - g_xywindow_globals.color_gridtext = Vector3( 0.0f, 0.0f, 0.0f ); - g_xywindow_globals.color_selbrushes = Vector3( 1.0f, 0.0f, 0.0f ); - XYWnd::recaptureStates(); - g_xywindow_globals.color_clipper = Vector3( 0.0f, 0.0f, 1.0f ); - Brush_clipperColourChanged(); - g_xywindow_globals.color_brushes = Vector3( 0.73f, 0.73f, 0.73f ); - SetWorldspawnColour( g_xywindow_globals.color_brushes ); - g_xywindow_globals.color_viewname = Vector3( 0.5f, 0.0f, 0.75f ); - XY_UpdateAllWindows(); -} typedef Callback GetColourCallback; typedef Callback SetColourCallback; @@ -196,27 +64,29 @@ class ChooseColour QAction *m_action = nullptr; const char *m_menuName; public: - const char *m_commandName; const char *m_saveName; - ChooseColour( const GetColourCallback& get, const SetColourCallback& set, const char *mnemonic, const char* commandName, const char* saveName ) + ChooseColour( const GetColourCallback& get, const SetColourCallback& set, const char *mnemonic, const char* saveName ) : m_get ( get ), m_set ( set ), m_menuName ( mnemonic ), - m_commandName ( commandName ), m_saveName ( saveName ) {} void create_menu_item( QMenu *menu ){ - m_action = create_menu_item_with_mnemonic( menu, m_menuName, m_commandName ); + m_action = create_menu_item_with_mnemonic( menu, m_menuName, ConstMemberCaller( *this ) ); updateIcon(); } void operator()() const { Vector3 colour = m_get(); color_dialog( MainFrame_getWindow(), colour ); + setColour( colour ); + } + + void setColour( const Vector3& colour ) const { m_set( colour ); SceneChangeNotify(); updateIcon( colour ); } - +private: void updateIcon( const Vector3& colour ) const { QPixmap pixmap( QSize( 64, 64 ) ); // using larger pixmap, it gets downscaled pixmap.fill( QColor::fromRgbF( colour[0], colour[1], colour[2] ) ); @@ -264,20 +134,57 @@ Vector3 TextureBrowserColour_get(){ std::array g_ColoursMenu{ - ChooseColour( makeCallbackF ( TextureBrowserColour_get ) , makeCallbackF( TextureBrowser_setBackgroundColour ) , "&Texture Background..." , "ChooseTextureBackgroundColor" , "SI_Colors0" ), - ChooseColour( ColourGetCaller( g_camwindow_globals.color_cameraback ) , ColourSetCaller( g_camwindow_globals.color_cameraback ), "Camera Background..." , "ChooseCameraBackgroundColor" , "SI_Colors4" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridback ) , ColourSetCaller( g_xywindow_globals.color_gridback ) , "Grid Background..." , "ChooseGridBackgroundColor" , "SI_Colors1" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridmajor ) , ColourSetCaller( g_xywindow_globals.color_gridmajor ) , "Grid Major..." , "ChooseGridMajorColor" , "SI_Colors3" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridminor ) , ColourSetCaller( g_xywindow_globals.color_gridminor ) , "Grid Minor..." , "ChooseGridMinorColor" , "SI_Colors2" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridtext ) , ColourSetCaller( g_xywindow_globals.color_gridtext ) , "Grid Text..." , "ChooseGridTextColor" , "SI_Colors7" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridblock ) , ColourSetCaller( g_xywindow_globals.color_gridblock ) , "Grid Block..." , "ChooseGridBlockColor" , "SI_Colors6" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_brushes ) , makeCallbackF( BrushColour_set ) , "Default Brush (2D)..." , "ChooseBrushColor" , "SI_Colors8" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_selbrushes ) , makeCallbackF( SelectedBrushColour_set ) , "Selected Brush and Sizing (2D)...", "ChooseSelectedBrushColor" , "SI_Colors11" ), - ChooseColour( ColourGetCaller( g_camwindow_globals.color_selbrushes3d ), makeCallbackF( SelectedBrush3dColour_set ) , "Selected Brush (Camera)..." , "ChooseCameraSelectedBrushColor", "SI_Colors12" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_clipper ) , makeCallbackF( ClipperColour_set ) , "Clipper..." , "ChooseClipperColor" , "SI_Colors10" ), - ChooseColour( ColourGetCaller( g_xywindow_globals.color_viewname ) , ColourSetCaller( g_xywindow_globals.color_viewname ) , "Active View Name and Outline..." , "ChooseOrthoViewNameColor" , "SI_Colors9" ), + ChooseColour( makeCallbackF ( TextureBrowserColour_get ) , makeCallbackF( TextureBrowser_setBackgroundColour ) , "&Texture Background..." , "SI_Colors0" ), + ChooseColour( ColourGetCaller( g_camwindow_globals.color_cameraback ) , ColourSetCaller( g_camwindow_globals.color_cameraback ), "Camera Background..." , "SI_Colors4" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridback ) , ColourSetCaller( g_xywindow_globals.color_gridback ) , "Grid Background..." , "SI_Colors1" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridmajor ) , ColourSetCaller( g_xywindow_globals.color_gridmajor ) , "Grid Major..." , "SI_Colors3" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridminor ) , ColourSetCaller( g_xywindow_globals.color_gridminor ) , "Grid Minor..." , "SI_Colors2" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridtext ) , ColourSetCaller( g_xywindow_globals.color_gridtext ) , "Grid Text..." , "SI_Colors7" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_gridblock ) , ColourSetCaller( g_xywindow_globals.color_gridblock ) , "Grid Block..." , "SI_Colors6" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_brushes ) , makeCallbackF( BrushColour_set ) , "Default Brush (2D)..." , "SI_Colors8" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_selbrushes ) , makeCallbackF( SelectedBrushColour_set ) , "Selected Brush and Sizing (2D)...", "SI_Colors11" ), + ChooseColour( ColourGetCaller( g_camwindow_globals.color_selbrushes3d ), makeCallbackF( SelectedBrush3dColour_set ) , "Selected Brush (Camera)..." , "SI_Colors12" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_clipper ) , makeCallbackF( ClipperColour_set ) , "Clipper..." , "SI_Colors10" ), + ChooseColour( ColourGetCaller( g_xywindow_globals.color_viewname ) , ColourSetCaller( g_xywindow_globals.color_viewname ) , "Active View Name and Outline..." , "SI_Colors9" ), }; +static void load_colors_theme( const char *filepath ){ + TextFileInputStream file( filepath ); + if( file.failed() ){ + globalErrorStream() << "File " << makeQuoted( filepath ) << " reading failed.\n"; + return; + } + + StringOutputStream str( 4096 ); + str.c_str()[ file.read( str.c_str(), 4096 - 1 ) ] = '\0'; + + rapidjson::Document doc; + doc.Parse( str.c_str() ); + if( doc.HasParseError() ){ + globalErrorStream() << "File " << makeQuoted( filepath ) << " parsing failed.\n"; + return; + } + + for( const auto& colour : g_ColoursMenu ){ + const auto it = doc.GetObj().FindMember( colour.m_saveName ); + if( it == doc.GetObj().MemberEnd() ){ + globalWarningStream() << makeQuoted( colour.m_saveName ) << " not found in file " << makeQuoted( filepath ) << '\n'; + } + else if( !it->value.IsArray() ){ + globalWarningStream() << makeQuoted( colour.m_saveName ) << " is not an array in file " << makeQuoted( filepath ) << '\n'; + } + else if( it->value.GetArray().Size() != 3 ){ + globalWarningStream() << makeQuoted( colour.m_saveName ) << " array.size != 3 in file " << makeQuoted( filepath ) << '\n'; + } + else{ + Vector3 clr( 0 ); + for( size_t i = 0; i != 3; ++i ) + clr[i] = it->value.GetArray().operator[]( i ).Get(); + colour.setColour( clr ); + } + } +} + void create_colours_menu( QMenu *menu ){ menu = menu->addMenu( "Colors" ); @@ -288,12 +195,14 @@ void create_colours_menu( QMenu *menu ){ submenu->setTearOffEnabled( g_Layout_enableDetachableMenus.m_value ); - create_menu_item_with_mnemonic( submenu, "QE4 Original", "ColorSchemeOriginal" ); - create_menu_item_with_mnemonic( submenu, "Q3Radiant Original", "ColorSchemeQER" ); - create_menu_item_with_mnemonic( submenu, "Black and Green", "ColorSchemeBlackAndGreen" ); - create_menu_item_with_mnemonic( submenu, "Maya/Max/Lightwave Emulation", "ColorSchemeYdnar" ); - create_menu_item_with_mnemonic( submenu, "Blender/Dark", "ColorSchemeBlender" ); - create_menu_item_with_mnemonic( submenu, "Adwaita Dark", "ColorSchemeAdwaitaDark" ); + const auto path = StringStream( AppPath_get(), "themes/_colors/" ); + + Directory_forEach( path, matchFileExtension( "json", [&]( const char *name ){ + submenu->addAction( StringStream<64>( PathExtensionless( name ) ).c_str(), [path = CopiedString( StringStream( path, name ) )](){ + load_colors_theme( path.c_str() ); + } ); + })); + } theme_contruct_menu( menu ); @@ -307,13 +216,4 @@ void create_colours_menu( QMenu *menu ){ } void Colors_registerCommands(){ - GlobalCommands_insert( "ColorSchemeOriginal", FreeCaller() ); - GlobalCommands_insert( "ColorSchemeQER", FreeCaller() ); - GlobalCommands_insert( "ColorSchemeBlackAndGreen", FreeCaller() ); - GlobalCommands_insert( "ColorSchemeYdnar", FreeCaller() ); - GlobalCommands_insert( "ColorSchemeBlender", FreeCaller() ); - GlobalCommands_insert( "ColorSchemeAdwaitaDark", FreeCaller() ); - - for( const auto& color : g_ColoursMenu ) - GlobalCommands_insert( color.m_commandName, ConstMemberCaller( color ) ); } \ No newline at end of file diff --git a/radiant/preferences.cpp b/radiant/preferences.cpp index cedd2952..b46f2015 100644 --- a/radiant/preferences.cpp +++ b/radiant/preferences.cpp @@ -326,10 +326,7 @@ void CGameDialog::ScanForGames(){ (if that's really needed) */ - Directory_forEach( path, [&]( const char *name ){ - if ( !path_extension_is( name, "game" ) ) { - return; - } + Directory_forEach( path, matchFileExtension( "game", [&]( const char *name ){ const auto strPath = StringStream( path, name ); globalOutputStream() << strPath << '\n'; @@ -342,7 +339,7 @@ void CGameDialog::ScanForGames(){ { globalErrorStream() << "XML parser failed on '" << strPath << "'\n"; } - }); + })); } void CGameDialog::InitGlobalPrefPath(){ diff --git a/setup/data/tools/themes/_colors/Adwaita Dark.json b/setup/data/tools/themes/_colors/Adwaita Dark.json new file mode 100644 index 00000000..e449a0cf --- /dev/null +++ b/setup/data/tools/themes/_colors/Adwaita Dark.json @@ -0,0 +1,15 @@ +/* color scheme to fit the GTK Adwaita Dark theme */ +{ +/* TextureBackground */ "SI_Colors0" : [0.25, 0.25, 0.25], +/* CameraBackground */ "SI_Colors4" : [0.25, 0.25, 0.25], +/* GridBackground */ "SI_Colors1" : [0.25, 0.25, 0.25], +/* GridMajor */ "SI_Colors3" : [0.14, 0.15, 0.15], +/* GridMinor */ "SI_Colors2" : [0.21, 0.23, 0.23], +/* GridText */ "SI_Colors7" : [0.0, 0.0, 0.0], +/* GridBlock */ "SI_Colors6" : [1.0, 1.0, 1.0], +/* Brush */ "SI_Colors8" : [0.73, 0.73, 0.73], +/* SelectedBrush */ "SI_Colors11": [1.0, 0.0, 0.0], +/* CameraSelectedBrush */ "SI_Colors12": [1.0, 0.0, 0.0], +/* Clipper */ "SI_Colors10": [0.0, 0.0, 1.0], +/* OrthoViewName */ "SI_Colors9" : [0.5, 0.0, 0.75], +} diff --git a/setup/data/tools/themes/_colors/Black and Green.json b/setup/data/tools/themes/_colors/Black and Green.json new file mode 100644 index 00000000..bd48989b --- /dev/null +++ b/setup/data/tools/themes/_colors/Black and Green.json @@ -0,0 +1,14 @@ +{ +/* TextureBackground */ "SI_Colors0" : [0.25, 0.25, 0.25], +/* CameraBackground */ "SI_Colors4" : [0.25, 0.25, 0.25], +/* GridBackground */ "SI_Colors1" : [0.0, 0.0, 0.0], +/* GridMajor */ "SI_Colors3" : [0.3, 0.5, 0.5], +/* GridMinor */ "SI_Colors2" : [0.2, 0.2, 0.2], +/* GridText */ "SI_Colors7" : [1.0, 1.0, 1.0], +/* GridBlock */ "SI_Colors6" : [0.0, 0.0, 1.0], +/* Brush */ "SI_Colors8" : [1.0, 1.0, 1.0], +/* SelectedBrush */ "SI_Colors11": [1.0, 0.0, 0.0], +/* CameraSelectedBrush */ "SI_Colors12": [1.0, 0.0, 0.0], +/* Clipper */ "SI_Colors10": [0.0, 0.0, 1.0], +/* OrthoViewName */ "SI_Colors9" : [0.7, 0.7, 0.0], +} diff --git a/setup/data/tools/themes/_colors/Blender Dark.json b/setup/data/tools/themes/_colors/Blender Dark.json new file mode 100644 index 00000000..ce8444b7 --- /dev/null +++ b/setup/data/tools/themes/_colors/Blender Dark.json @@ -0,0 +1,14 @@ +{ +/* TextureBackground */ "SI_Colors0" : [0.25, 0.25, 0.25], +/* CameraBackground */ "SI_Colors4" : [0.25, 0.25, 0.25], +/* GridBackground */ "SI_Colors1" : [0.225803, 0.225803, 0.225803], +/* GridMajor */ "SI_Colors3" : [0.301960, 0.301960, 0.301960], +/* GridMinor */ "SI_Colors2" : [0.254902, 0.254902, 0.254902], +/* GridText */ "SI_Colors7" : [0.972549, 0.972549, 0.972549], +/* GridBlock */ "SI_Colors6" : [1.0, 1.0, 1.0], +/* Brush */ "SI_Colors8" : [0.0, 0.0, 0.0], +/* SelectedBrush */ "SI_Colors11": [1.0, 0.627451, 0.0], +/* CameraSelectedBrush */ "SI_Colors12": [1.0, 0.627451, 0.0], +/* Clipper */ "SI_Colors10": [0.0, 0.0, 1.0], +/* OrthoViewName */ "SI_Colors9" : [0.516136, 0.516136, 0.516136], +} \ No newline at end of file diff --git a/setup/data/tools/themes/_colors/Maya.Max.Lightwave Emulation.json b/setup/data/tools/themes/_colors/Maya.Max.Lightwave Emulation.json new file mode 100644 index 00000000..665e3aef --- /dev/null +++ b/setup/data/tools/themes/_colors/Maya.Max.Lightwave Emulation.json @@ -0,0 +1,15 @@ +/* ydnar: to emulate maya/max/lightwave color schemes */ +{ +/* TextureBackground */ "SI_Colors0" : [0.25, 0.25, 0.25], +/* CameraBackground */ "SI_Colors4" : [0.25, 0.25, 0.25], +/* GridBackground */ "SI_Colors1" : [0.77, 0.77, 0.77], +/* GridMajor */ "SI_Colors3" : [0.89, 0.89, 0.89], +/* GridMinor */ "SI_Colors2" : [0.83, 0.83, 0.83], +/* GridText */ "SI_Colors7" : [0.0, 0.0, 0.0], +/* GridBlock */ "SI_Colors6" : [1.0, 1.0, 1.0], +/* Brush */ "SI_Colors8" : [0.0, 0.0, 0.0], +/* SelectedBrush */ "SI_Colors11": [1.0, 0.0, 0.0], +/* CameraSelectedBrush */ "SI_Colors12": [1.0, 0.0, 0.0], +/* Clipper */ "SI_Colors10": [0.0, 0.0, 1.0], +/* OrthoViewName */ "SI_Colors9" : [0.5, 0.0, 0.75], +} diff --git a/setup/data/tools/themes/_colors/Q3Radiant Original.json b/setup/data/tools/themes/_colors/Q3Radiant Original.json new file mode 100644 index 00000000..06686841 --- /dev/null +++ b/setup/data/tools/themes/_colors/Q3Radiant Original.json @@ -0,0 +1,14 @@ +{ +/* TextureBackground */ "SI_Colors0" : [0.25, 0.25, 0.25], +/* CameraBackground */ "SI_Colors4" : [0.25, 0.25, 0.25], +/* GridBackground */ "SI_Colors1" : [1.0, 1.0, 1.0], +/* GridMajor */ "SI_Colors3" : [0.5, 0.5, 0.5], +/* GridMinor */ "SI_Colors2" : [1.0, 1.0, 1.0], +/* GridText */ "SI_Colors7" : [0.0, 0.0, 0.0], +/* GridBlock */ "SI_Colors6" : [0.0, 0.0, 1.0], +/* Brush */ "SI_Colors8" : [0.0, 0.0, 0.0], +/* SelectedBrush */ "SI_Colors11": [1.0, 0.0, 0.0], +/* CameraSelectedBrush */ "SI_Colors12": [1.0, 0.0, 0.0], +/* Clipper */ "SI_Colors10": [0.0, 0.0, 1.0], +/* OrthoViewName */ "SI_Colors9" : [0.5, 0.0, 0.75], +} diff --git a/setup/data/tools/themes/_colors/QE4 Original.json b/setup/data/tools/themes/_colors/QE4 Original.json new file mode 100644 index 00000000..623249f2 --- /dev/null +++ b/setup/data/tools/themes/_colors/QE4 Original.json @@ -0,0 +1,14 @@ +{ +/* TextureBackground */ "SI_Colors0" : [0.25, 0.25, 0.25], +/* CameraBackground */ "SI_Colors4" : [0.25, 0.25, 0.25], +/* GridBackground */ "SI_Colors1" : [1.0, 1.0, 1.0], +/* GridMajor */ "SI_Colors3" : [0.5, 0.5, 0.5], +/* GridMinor */ "SI_Colors2" : [0.75, 0.75, 0.75], +/* GridText */ "SI_Colors7" : [0.0, 0.0, 0.0], +/* GridBlock */ "SI_Colors6" : [0.0, 0.0, 1.0], +/* Brush */ "SI_Colors8" : [0.0, 0.0, 0.0], +/* SelectedBrush */ "SI_Colors11": [1.0, 0.0, 0.0], +/* CameraSelectedBrush */ "SI_Colors12": [1.0, 0.0, 0.0], +/* Clipper */ "SI_Colors10": [0.0, 0.0, 1.0], +/* OrthoViewName */ "SI_Colors9" : [0.5, 0.0, 0.75], +}