RefreshReferences();
// also refresh texture browser
TextureBrowser_RefreshShaders();
+ // also show textures (all or common)
+ TextureBrowser_ShowStartupShaders( GlobalTextureBrowser() );
}
void VFS_Restart(){
public:
void realise(){
VFS_Init();
-}
+ }
void unrealise(){
VFS_Shutdown();
break;
}
else {
- path.clear();
- path << DirectoryCleaned( g_get_home_dir() ) << prefix << "/";
- g_qeglobals.m_userEnginePath = path.c_str();
- break;
+ path.clear();
+ path << DirectoryCleaned( g_get_home_dir() ) << prefix << "/";
+ g_qeglobals.m_userEnginePath = path.c_str();
+ break;
}
#endif
}
PathsDialog g_PathsDialog;
+bool g_strEnginePath_was_empty_1st_start = false;
+
void EnginePath_verify(){
- if ( !file_exists( g_strEnginePath.c_str() ) ) {
+ if ( !file_exists( g_strEnginePath.c_str() ) || g_strEnginePath_was_empty_1st_start ) {
g_PathsDialog.Create();
g_PathsDialog.DoModal();
g_PathsDialog.Destroy();
LatchedValue<bool> g_Layout_enableDetachableMenus( true, "Detachable Menus" );
LatchedValue<bool> g_Layout_enablePatchToolbar( true, "Patch Toolbar" );
LatchedValue<bool> g_Layout_enablePluginToolbar( true, "Plugin Toolbar" );
+LatchedValue<bool> g_Layout_enableFilterToolbar( true, "Filter Toolbar" );
ui::MenuItem create_file_menu(){
create_menu_item_with_mnemonic( menu, "_Export selected...", "ExportSelected" );
menu_separator( menu );
create_menu_item_with_mnemonic( menu, "Save re_gion...", "SaveRegion" );
- menu_separator( menu );
- create_menu_item_with_mnemonic( menu, "_Refresh models", "RefreshReferences" );
- menu_separator( menu );
+// menu_separator( menu );
+// create_menu_item_with_mnemonic( menu, "_Refresh models", "RefreshReferences" );
+// menu_separator( menu );
create_menu_item_with_mnemonic( menu, "Pro_ject settings...", "ProjectSettings" );
menu_separator( menu );
create_menu_item_with_mnemonic( menu, "_Pointfile...", "TogglePointfile" );
menu_separator( menu );
MRU_constructMenu( menu );
menu_separator( menu );
+// create_menu_item_with_mnemonic( menu, "Check for NetRadiant update (web)", "CheckForUpdate" ); // FIXME
create_menu_item_with_mnemonic( menu, "E_xit", "Exit" );
return file_menu_item;
create_menu_item_with_mnemonic( menu, "Duplicate, make uni_que", "CloneSelectionAndMakeUnique" );
create_menu_item_with_mnemonic( menu, "D_elete", "DeleteSelection" );
menu_separator( menu );
- create_menu_item_with_mnemonic( menu, "Pa_rent", "ParentSelection" );
+ create_menu_item_with_mnemonic( menu, "Snap To Grid", "SnapToGrid" );
+ //create_menu_item_with_mnemonic( menu, "Pa_rent", "ParentSelection" );
menu_separator( menu );
create_menu_item_with_mnemonic( menu, "C_lear Selection", "UnSelectSelection" );
create_menu_item_with_mnemonic( menu, "_Invert Selection", "InvertSelection" );
create_menu_item_with_mnemonic( menu, "Select i_nside", "SelectInside" );
create_menu_item_with_mnemonic( menu, "Select _touching", "SelectTouching" );
- auto convert_menu = create_sub_menu_with_mnemonic( menu, "E_xpand Selection" );
- if ( g_Layout_enableDetachableMenus.m_value ) {
- menu_tearoff( convert_menu );
- }
- create_menu_item_with_mnemonic( convert_menu, "To Whole _Entities", "ExpandSelectionToEntities" );
+ menu_separator( menu );
+
+// auto convert_menu = create_sub_menu_with_mnemonic( menu, "E_xpand Selection" );
+// if ( g_Layout_enableDetachableMenus.m_value ) {
+// menu_tearoff( convert_menu );
+// }
+ create_menu_item_with_mnemonic( menu, "Select All Of Type", "SelectAllOfType" );
+ create_menu_item_with_mnemonic( menu, "_Expand Selection To Entities", "ExpandSelectionToEntities" );
menu_separator( menu );
create_menu_item_with_mnemonic( menu, "Pre_ferences...", "Preferences" );
create_menu_item_with_mnemonic( menu, "Entity Inspector", "ViewEntityInfo" );
}
create_menu_item_with_mnemonic( menu, "_Surface Inspector", "SurfaceInspector" );
+ create_menu_item_with_mnemonic( menu, "_Patch Inspector", "PatchInspector" );
create_menu_item_with_mnemonic( menu, "Entity List", "EntityList" );
menu_separator( menu );
menu_separator( orthographic_menu );
}
+ create_menu_item_with_mnemonic( orthographic_menu, "Center on Selected", "CenterXYView" );
+ menu_separator( orthographic_menu );
create_menu_item_with_mnemonic( orthographic_menu, "_XY 100%", "Zoom100" );
create_menu_item_with_mnemonic( orthographic_menu, "XY Zoom _In", "ZoomIn" );
create_menu_item_with_mnemonic( orthographic_menu, "XY Zoom _Out", "ZoomOut" );
if ( g_Layout_enableDetachableMenus.m_value ) {
menu_tearoff( menu_in_menu );
}
+ create_menu_item_with_mnemonic( menu_in_menu, "Show Size Info", "ToggleSizePaint" );
+ create_menu_item_with_mnemonic( menu_in_menu, "Show Crosshair", "ToggleCrosshairs" );
+ create_menu_item_with_mnemonic( menu_in_menu, "Show Grid", "ToggleGrid" );
+
+ menu_separator( menu_in_menu );
+
create_check_menu_item_with_mnemonic( menu_in_menu, "Show _Angles", "ShowAngles" );
create_check_menu_item_with_mnemonic( menu_in_menu, "Show _Names", "ShowNames" );
create_check_menu_item_with_mnemonic( menu_in_menu, "Show Blocks", "ShowBlocks" );
}
menu_separator( menu );
{
- auto menu_in_menu = create_sub_menu_with_mnemonic( menu, "Hide/Show" );
- if ( g_Layout_enableDetachableMenus.m_value ) {
- menu_tearoff( menu_in_menu );
- }
- create_menu_item_with_mnemonic( menu_in_menu, "Hide Selected", "HideSelected" );
- create_menu_item_with_mnemonic( menu_in_menu, "Show Hidden", "ShowHidden" );
+// GtkMenu* menu_in_menu = create_sub_menu_with_mnemonic( menu, "Hide/Show" );
+// if ( g_Layout_enableDetachableMenus.m_value ) {
+// menu_tearoff( menu_in_menu );
+// }
+// create_menu_item_with_mnemonic( menu_in_menu, "Hide Selected", "HideSelected" );
+// create_menu_item_with_mnemonic( menu_in_menu, "Show Hidden", "ShowHidden" );
+ create_menu_item_with_mnemonic( menu, "Hide Selected", "HideSelected" );
+ create_menu_item_with_mnemonic( menu, "Show Hidden", "ShowHidden" );
}
menu_separator( menu );
{
menu_tearoff( menu );
}
- create_menu_item_with_mnemonic( menu, "Manual", "OpenManual" );
+// create_menu_item_with_mnemonic( menu, "Manual", "OpenManual" );
// this creates all the per-game drop downs for the game pack helps
// it will take care of hooking the Sys_OpenURL calls etc.
}
void Patch_registerShortcuts(){
- command_connect_accelerator( "InvertCurveTextureX" );
- command_connect_accelerator( "InvertCurveTextureY" );
+// command_connect_accelerator( "InvertCurveTextureX" );
+// command_connect_accelerator( "InvertCurveTextureY" );
command_connect_accelerator( "PatchInsertInsertColumn" );
command_connect_accelerator( "PatchInsertInsertRow" );
command_connect_accelerator( "PatchDeleteLastColumn" );
command_connect_accelerator( "PatchDeleteLastRow" );
- command_connect_accelerator( "NaturalizePatch" );
+// command_connect_accelerator( "NaturalizePatch" );
//command_connect_accelerator("CapCurrentCurve");
}
//command_connect_accelerator("SelectNudgeRight");
//command_connect_accelerator("SelectNudgeUp");
//command_connect_accelerator("SelectNudgeDown");
+ command_connect_accelerator( "UnSelectSelection2" );
+ command_connect_accelerator( "DeleteSelection2" );
}
void SnapToGrid_registerShortcuts(){
void register_shortcuts(){
- PatchInspector_registerShortcuts();
+// PatchInspector_registerShortcuts();
Patch_registerShortcuts();
Grid_registerShortcuts();
- XYWnd_registerShortcuts();
+// XYWnd_registerShortcuts();
CamWnd_registerShortcuts();
Manipulators_registerShortcuts();
SurfaceInspector_registerShortcuts();
TexdefNudge_registerShortcuts();
SelectNudge_registerShortcuts();
- SnapToGrid_registerShortcuts();
- SelectByType_registerShortcuts();
+// SnapToGrid_registerShortcuts();
+// SelectByType_registerShortcuts();
}
void File_constructToolbar( ui::Toolbar toolbar ){
void CSG_constructToolbar( ui::Toolbar toolbar ){
toolbar_append_button( toolbar, "CSG Subtract (SHIFT + U)", "selection_csgsubtract.png", "CSGSubtract" );
toolbar_append_button( toolbar, "CSG Merge (CTRL + U)", "selection_csgmerge.png", "CSGMerge" );
- toolbar_append_button( toolbar, "Make Hollow", "selection_makehollow.png", "CSGMakeHollow" );
- toolbar_append_button( toolbar, "Make Room", "selection_makeroom.png", "CSGMakeRoom" );
+ toolbar_append_button( toolbar, "Make Hollow", "selection_makehollow.png", "CSGHollow" );
+ toolbar_append_button( toolbar, "Make Room", "selection_makeroom.png", "CSGRoom" );
}
void ComponentModes_constructToolbar( ui::Toolbar toolbar ){
return TRUE;
}
+PanedState g_single_hpaned = { 0.75f, -1, };
+PanedState g_single_vpaned = { 0.75f, -1, };
+
void MainFrame::Create(){
ui::Window window = ui::Window( ui::window_type::TOP );
if ( !g_Layout_enablePluginToolbar.m_value ) {
plugin_toolbar.hide();
}
+
+ if ( g_Layout_enableFilterToolbar.m_value ) {
+ auto space = [&]() {
+ auto btn = gtk_separator_tool_item_new();
+ gtk_widget_show(GTK_WIDGET(btn));
+ gtk_container_add(GTK_CONTAINER(plugin_toolbar), GTK_WIDGET(btn));
+ };
+
+ space();
+ toolbar_append_toggle_button( plugin_toolbar, "World (ALT + 1)", "f-world.bmp", "FilterWorldBrushes" );
+ toolbar_append_toggle_button( plugin_toolbar, "Details (CTRL + D)", "f-details.bmp", "FilterDetails" );
+ toolbar_append_toggle_button( plugin_toolbar, "Structural (CTRL + SHIFT + D)", "f-structural.bmp", "FilterStructural" );
+ toolbar_append_toggle_button( plugin_toolbar, "Patches (CTRL + P)", "patch_wireframe.png", "FilterPatches" );
+ space();
+ toolbar_append_toggle_button( plugin_toolbar, "Areaportals (ALT + 3)", "f-areaportal.bmp", "FilterAreaportals" );
+ toolbar_append_toggle_button( plugin_toolbar, "Translucent (ALT + 4)", "f-translucent.bmp", "FilterTranslucent" );
+ toolbar_append_toggle_button( plugin_toolbar, "Liquids (ALT + 5)", "f-liquids.bmp", "FilterLiquids" );
+ toolbar_append_toggle_button( plugin_toolbar, "Caulk (ALT + 6)", "f-caulk.bmp", "FilterCaulk" );
+ toolbar_append_toggle_button( plugin_toolbar, "Clips (ALT + 7)", "f-clip.bmp", "FilterClips" );
+ toolbar_append_toggle_button( plugin_toolbar, "HintsSkips (CTRL + H)", "f-hint.bmp", "FilterHintsSkips" );
+ //toolbar_append_toggle_button( plugin_toolbar, "Paths (ALT + 8)", "texture_lock.bmp", "FilterPaths" );
+ space();
+ toolbar_append_toggle_button( plugin_toolbar, "Entities (ALT + 2)", "f-entities.bmp", "FilterEntities" );
+ toolbar_append_toggle_button( plugin_toolbar, "Lights (ALT + 0)", "lightinspector.png", "FilterLights" );
+ toolbar_append_toggle_button( plugin_toolbar, "Models (SHIFT + M)", "f-models.bmp", "FilterModels" );
+ toolbar_append_toggle_button( plugin_toolbar, "Triggers (CTRL + SHIFT + T)", "f-triggers.bmp", "FilterTriggers" );
+// toolbar_append_toggle_button( plugin_toolbar, "Decals (SHIFT + D)", "f-decals.bmp", "FilterDecals" );
+ space();
+ toolbar_append_button( plugin_toolbar, "InvertFilters", "f-invert.bmp", "InvertFilters" );
+ toolbar_append_button( plugin_toolbar, "ResetFilters", "f-reset.bmp", "ResetFilters" );
+ }
vbox.pack_start( plugin_toolbar, FALSE, FALSE, 0 );
ui::Widget main_statusbar = create_main_statusbar(reinterpret_cast<ui::Widget *>(m_pStatusLabel));
window.show();
- if ( CurrentStyle() == eRegular || CurrentStyle() == eRegularLeft ) {
+ if ( CurrentStyle() == eRegular || CurrentStyle() == eRegularLeft )
+ {
{
- ui::Widget vsplit = ui::VPaned(ui::New);
- m_vSplit = vsplit;
- vbox.pack_start( vsplit, TRUE, TRUE, 0 );
- vsplit.show();
-
- // console
- ui::Widget console_window = Console_constructWindow( window );
- gtk_paned_pack2( GTK_PANED( vsplit ), console_window, FALSE, TRUE );
-
+ ui::Widget hsplit = ui::HPaned(ui::New);
+ m_vSplit = hsplit;
+ vbox.pack_start( hsplit, TRUE, TRUE, 0 );
+ hsplit.show();
{
- ui::Widget hsplit = ui::HPaned(ui::New);
- hsplit.show();
- m_hSplit = hsplit;
- gtk_paned_add1( GTK_PANED( vsplit ), hsplit );
+ ui::Widget vsplit = ui::VPaned(ui::New);
+ vsplit.show();
+ m_vSplit = vsplit;
+ ui::Widget vsplit2 = ui::VPaned(ui::New);
+ vsplit2.show();
+ m_vSplit = vsplit2;
+ if ( CurrentStyle() == eRegular ){
+ gtk_paned_add1( GTK_PANED( hsplit ), vsplit );
+ gtk_paned_add2( GTK_PANED( hsplit ), vsplit2 );
+ }
+ else{
+ gtk_paned_add2( GTK_PANED( hsplit ), vsplit );
+ gtk_paned_add1( GTK_PANED( hsplit ), vsplit2 );
+ }
+ // console
+ ui::Widget console_window = Console_constructWindow( window );
+ gtk_paned_pack2( GTK_PANED( vsplit ), console_window, FALSE, TRUE );
+
// xy
m_pXYWnd = new XYWnd();
m_pXYWnd->SetViewType( XY );
ui::Widget xy_window = ui::Widget(create_framed_widget( m_pXYWnd->GetWidget( ) ));
+ gtk_paned_add1( GTK_PANED( vsplit ), xy_window );
{
- ui::Widget vsplit2 = ui::VPaned(ui::New);
- vsplit2.show();
- m_vSplit2 = vsplit2;
-
- if ( CurrentStyle() == eRegular ) {
- gtk_paned_add1( GTK_PANED( hsplit ), xy_window );
- gtk_paned_add2( GTK_PANED( hsplit ), vsplit2 );
- }
- else
- {
- gtk_paned_add1( GTK_PANED( hsplit ), vsplit2 );
- gtk_paned_add2( GTK_PANED( hsplit ), xy_window );
- }
-
-
// camera
m_pCamWnd = NewCamWnd();
GlobalCamera_setCamWnd( *m_pCamWnd );
gtk_paned_set_position( GTK_PANED( m_vSplit2 ), g_layout_globals.nCamHeight );
}
- else if ( CurrentStyle() == eFloating ) {
+ else if ( CurrentStyle() == eFloating )
+ {
{
ui::Window window = ui::Window(create_persistent_floating_window( "Camera", m_window ));
global_accel_connect_window( window );
GroupDialog_show();
}
- else // 4 way
+ else if ( CurrentStyle() == eSplit )
{
m_pCamWnd = NewCamWnd();
GlobalCamera_setCamWnd( *m_pCamWnd );
WORKAROUND_GOBJECT_SET_GLWIDGET( window, TextureBrowser_getGLWidget() );
}
}
+ else // single window
+ {
+ m_pCamWnd = NewCamWnd();
+ GlobalCamera_setCamWnd( *m_pCamWnd );
+ CamWnd_setParent( *m_pCamWnd, window );
+
+ ui::Widget camera = CamWnd_getWidget( *m_pCamWnd );
+
+ m_pYZWnd = new XYWnd();
+ m_pYZWnd->SetViewType( YZ );
+
+ ui::Widget yz = m_pYZWnd->GetWidget();
+
+ m_pXYWnd = new XYWnd();
+ m_pXYWnd->SetViewType( XY );
+
+ ui::Widget xy = m_pXYWnd->GetWidget();
+
+ m_pXZWnd = new XYWnd();
+ m_pXZWnd->SetViewType( XZ );
+
+ ui::Widget xz = m_pXZWnd->GetWidget();
+
+ ui::Widget hsplit = ui::HPaned(ui::New);
+ vbox.pack_start( hsplit, TRUE, TRUE, 0 );
+ hsplit.show();
+
+ ui::Widget split = create_split_views( camera, yz, xy, xz );
+
+ ui::Widget vsplit = ui::VPaned(ui::New);
+ vsplit.show();
+
+ // textures
+ ui::Widget texture_window = create_framed_widget( TextureBrowser_constructWindow( window ) );
+
+ // console
+ ui::Widget console_window = create_framed_widget( Console_constructWindow( window ) );
+
+ gtk_paned_add1( GTK_PANED( hsplit ), split );
+ gtk_paned_add2( GTK_PANED( hsplit ), vsplit );
+
+ gtk_paned_add1( GTK_PANED( vsplit ), texture_window );
+ gtk_paned_add2( GTK_PANED( vsplit ), console_window );
+
+ hsplit.connect( "size_allocate", G_CALLBACK( hpaned_allocate ), &g_single_hpaned );
+ hsplit.connect( "notify::position", G_CALLBACK( paned_position ), &g_single_hpaned );
+
+ vsplit.connect( "size_allocate", G_CALLBACK( vpaned_allocate ), &g_single_vpaned );
+ vsplit.connect( "notify::position", G_CALLBACK( paned_position ), &g_single_vpaned );
+ }
EntityList_constructWindow( window );
PreferencesDialog_constructWindow( window );
void Layout_constructPreferences( PreferencesPage& page ){
{
- const char* layouts[] = { "window1.png", "window2.png", "window3.png", "window4.png" };
+ const char* layouts[] = { "window1.png", "window2.png", "window3.png", "window4.png", "window5.png" };
page.appendRadioIcons(
"Window Layout",
STRING_ARRAY_RANGE( layouts ),
"", "Plugin Toolbar",
make_property( g_Layout_enablePluginToolbar )
);
+ page.appendCheckBox(
+ "", "Filter Toolbar",
+ make_property( g_Layout_enableFilterToolbar )
+ );
}
void Layout_constructPage( PreferenceGroup& group ){
PreferencesDialog_addInterfacePage( makeCallbackF(Layout_constructPage) );
}
-
#include "preferencesystem.h"
#include "stringio.h"
+#include "transformpath/transformpath.h"
void MainFrame_Construct(){
GlobalCommands_insert( "OpenManual", makeCallbackF(OpenHelpURL), Accelerator( GDK_KEY_F1 ) );
GlobalCommands_insert( "PasteToCamera", makeCallbackF(PasteToCamera), Accelerator( 'V', (GdkModifierType)GDK_MOD1_MASK ) );
GlobalCommands_insert( "CloneSelection", makeCallbackF(Selection_Clone), Accelerator( GDK_KEY_space ) );
GlobalCommands_insert( "CloneSelectionAndMakeUnique", makeCallbackF(Selection_Clone_MakeUnique), Accelerator( GDK_KEY_space, (GdkModifierType)GDK_SHIFT_MASK ) );
- GlobalCommands_insert( "DeleteSelection", makeCallbackF(deleteSelection), Accelerator( GDK_KEY_BackSpace ) );
+// GlobalCommands_insert( "DeleteSelection", makeCallbackF(deleteSelection), Accelerator( GDK_KEY_BackSpace ) );
+ GlobalCommands_insert( "DeleteSelection2", makeCallbackF(deleteSelection), Accelerator( GDK_KEY_BackSpace ) );
+ GlobalCommands_insert( "DeleteSelection", makeCallbackF(deleteSelection), Accelerator( 'Z' ) );
GlobalCommands_insert( "ParentSelection", makeCallbackF(Scene_parentSelected) );
- GlobalCommands_insert( "UnSelectSelection", makeCallbackF(Selection_Deselect), Accelerator( GDK_KEY_Escape ) );
+// GlobalCommands_insert( "UnSelectSelection", makeCallbackF(Selection_Deselect), Accelerator( GDK_KEY_Escape ) );
+ GlobalCommands_insert( "UnSelectSelection2", makeCallbackF(Selection_Deselect), Accelerator( GDK_KEY_Escape ) );
+ GlobalCommands_insert( "UnSelectSelection", makeCallbackF(Selection_Deselect), Accelerator( 'C' ) );
GlobalCommands_insert( "InvertSelection", makeCallbackF(Select_Invert), Accelerator( 'I' ) );
GlobalCommands_insert( "SelectInside", makeCallbackF(Select_Inside) );
GlobalCommands_insert( "SelectTouching", makeCallbackF(Select_Touching) );
GlobalCommands_insert( "CSGSubtract", makeCallbackF(CSG_Subtract), Accelerator( 'U', (GdkModifierType)GDK_SHIFT_MASK ) );
GlobalCommands_insert( "CSGMerge", makeCallbackF(CSG_Merge), Accelerator( 'U', (GdkModifierType) GDK_CONTROL_MASK ) );
- GlobalCommands_insert( "CSGMakeHollow", makeCallbackF(CSG_MakeHollow) );
- GlobalCommands_insert( "CSGMakeRoom", makeCallbackF(CSG_MakeRoom) );
+ GlobalCommands_insert( "CSGHollow", makeCallbackF(CSG_MakeHollow) );
+ GlobalCommands_insert( "CSGRoom", makeCallbackF(CSG_MakeRoom) );
Grid_registerCommands();
GlobalPreferenceSystem().registerPreference( "DetachableMenus", make_property_string( g_Layout_enableDetachableMenus.m_latched ) );
GlobalPreferenceSystem().registerPreference( "PatchToolBar", make_property_string( g_Layout_enablePatchToolbar.m_latched ) );
GlobalPreferenceSystem().registerPreference( "PluginToolBar", make_property_string( g_Layout_enablePluginToolbar.m_latched ) );
+ GlobalPreferenceSystem().registerPreference( "FilterToolBar", make_property_string( g_Layout_enableFilterToolbar.m_latched ) );
GlobalPreferenceSystem().registerPreference( "QE4StyleWindows", make_property_string( g_Layout_viewStyle.m_latched ) );
GlobalPreferenceSystem().registerPreference( "XYHeight", make_property_string( g_layout_globals.nXYHeight ) );
GlobalPreferenceSystem().registerPreference( "XYWidth", make_property_string( g_layout_globals.nXYWidth ) );
GlobalPreferenceSystem().registerPreference( "YZWnd", make_property<WindowPositionTracker_String>(g_posYZWnd) );
GlobalPreferenceSystem().registerPreference( "XZWnd", make_property<WindowPositionTracker_String>(g_posXZWnd) );
+ GlobalPreferenceSystem().registerPreference( "EnginePath", make_property_string( g_strEnginePath ) );
+ if ( g_strEnginePath.empty() )
{
+ g_strEnginePath_was_empty_1st_start = true;
const char* ENGINEPATH_ATTRIBUTE =
#if GDEF_OS_WINDOWS
"enginepath_win32"
#error "unknown platform"
#endif
;
+
StringOutputStream path( 256 );
path << DirectoryCleaned( g_pGameDescription->getRequiredKeyValue( ENGINEPATH_ATTRIBUTE ) );
- g_strEnginePath = path.c_str();
- }
- GlobalPreferenceSystem().registerPreference( "EnginePath", make_property_string( g_strEnginePath ) );
+ g_strEnginePath = transformPath( path.c_str() ).c_str();
+ GlobalPreferenceSystem().registerPreference( "EnginePath", make_property_string( g_strEnginePath ) );
+ }
GlobalPreferenceSystem().registerPreference( "DisableEnginePath", make_property_string( g_disableEnginePath ) );
GlobalPreferenceSystem().registerPreference( "DisableHomePath", make_property_string( g_disableHomePath ) );
g_Layout_enableDetachableMenus.useLatched();
g_Layout_enablePatchToolbar.useLatched();
g_Layout_enablePluginToolbar.useLatched();
+ g_Layout_enableFilterToolbar.useLatched();
Layout_registerPreferencesPage();
Paths_registerPreferencesPage();