Merge pull request #744 from Areloch/miscCoreToolsErrorCleanups

Fixes and cleans up various issues and error spam for core and tools folders
This commit is contained in:
Brian Roberts 2022-03-17 13:39:53 -05:00 committed by GitHub
commit 4969effaba
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
87 changed files with 373 additions and 1245 deletions

View file

@ -2,6 +2,13 @@
canSave="true"
canSaveDynamicFields="true"
AssetName="Black"
scriptFile="@assetFile=materials.tscript"
materialDefinitionName="Black"
VersionId="1" />
VersionId="1">
<Material
Name="Black">
<Material.Stages>
<Stages_beginarray
DiffuseMapAsset="ToolsModule:black_image"/>
</Material.Stages>
</Material>
</MaterialAsset>

View file

@ -2,6 +2,13 @@
canSave="true"
canSaveDynamicFields="true"
AssetName="Gray"
scriptFile="@assetFile=materials.tscript"
materialDefinitionName="Gray"
VersionId="1" />
VersionId="1">
<Material
Name="Gray">
<Material.Stages>
<Stages_beginarray
DiffuseMapAsset="ToolsModule:gray_image"/>
</Material.Stages>
</Material>
</MaterialAsset>

View file

@ -2,6 +2,13 @@
canSave="true"
canSaveDynamicFields="true"
AssetName="White"
scriptFile="@assetFile=materials.tscript"
materialDefinitionName="White"
VersionId="1" />
VersionId="1">
<Material
Name="White">
<Material.Stages>
<Stages_beginarray
DiffuseMapAsset="ToolsModule:white_image"/>
</Material.Stages>
</Material>
</MaterialAsset>

View file

@ -1,67 +0,0 @@
//-----------------------------------------------------------------------------
// Torque
// Copyright GarageGames, LLC 2011
//-----------------------------------------------------------------------------
singleton Material(White)
{
diffuseMapAsset[0] = "ToolsModule:white_image";
};
singleton Material(Gray)
{
diffuseMapAsset[0] = "ToolsModule:gray_image";
};
singleton Material(Black)
{
diffuseMapAsset[0] = "ToolsModule:black_image";
};
singleton Material(Grid_512_Black)
{
diffuseMapAsset[0] = "ToolsModule:512_black_image";
};
singleton Material(Grid_512_ForestGreen)
{
diffuseMapAsset[0] = "ToolsModule:512_forestgreen_image";
};
singleton Material(Grid_512_ForestGreen_Lines)
{
diffuseMapAsset[0] = "ToolsModule:512_forestgreen_lines_image";
};
singleton Material(Grid_512_Green)
{
diffuseMapAsset[0] = "ToolsModule:512_green_image";
};
singleton Material(Grid_512_Grey)
{
diffuseMapAsset[0] = "ToolsModule:512_grey_image";
};
singleton Material(Grid_512_Grey_Base)
{
diffuseMapAsset[0] = "ToolsModule:512_grey_base_image";
};
singleton Material(Grid_512_Orange)
{
diffuseMapAsset[0] = "ToolsModule:512_orange_image";
translucent = "0";
translucentBlendOp = "PreMul";
mapTo = "512_orange.png";
};
singleton Material(Grid_512_Orange_Lines)
{
diffuseMapAsset[0] = "ToolsModule:512_orange_lines_image";
};
singleton Material(Grid_512_Red)
{
diffuseMapAsset[0] = "ToolsModule:512_red_image";
};

View file

@ -1,7 +0,0 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="OccluderProxyMaterial"
scriptFile="@assetFile=materials.tscript"
materialDefinitionName="OccluderProxyMaterial"
VersionId="1" />

View file

@ -1,7 +0,0 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="PortalProxyMaterial"
scriptFile="@assetFile=materials.tscript"
materialDefinitionName="PortalProxyMaterial"
VersionId="1" />

View file

@ -1,7 +0,0 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="TriggerProxyMaterial"
scriptFile="@assetFile=materials.tscript"
materialDefinitionName="TriggerProxyMaterial"
VersionId="1" />

View file

@ -1,7 +0,0 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="ZoneProxyMaterial"
scriptFile="@assetFile=materials.tscript"
materialDefinitionName="ZoneProxyMaterial"
VersionId="1" />

View file

@ -44,10 +44,3 @@ singleton GuiControlProfile (GuiDisabledTextEditProfile)
canKeyFocus = false;
category = "Editor";
};
singleton GuiControlProfile (GuiSimpleBorderProfile)
{
opaque = false;
border = 1;
category = "Editor";
};

View file

@ -0,0 +1,14 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="OccluderProxyMaterial"
materialDefinitionName="OccluderProxyMaterial"
VersionId="1">
<Material
Name="OccluderProxyMaterial">
<Material.Stages>
<Stages_beginarray
DiffuseMapAsset="ToolsModule:occluderProxyImage_image"/>
</Material.Stages>
</Material>
</MaterialAsset>

View file

@ -0,0 +1,14 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="PortalProxyMaterial"
materialDefinitionName="PortalProxyMaterial"
VersionId="1">
<Material
Name="PortalProxyMaterial">
<Material.Stages>
<Stages_beginarray
DiffuseMapAsset="ToolsModule:portalProxyImage_image"/>
</Material.Stages>
</Material>
</MaterialAsset>

View file

@ -0,0 +1,14 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="TriggerProxyMaterial"
materialDefinitionName="TriggerProxyMaterial"
VersionId="1">
<Material
Name="TriggerProxyMaterial">
<Material.Stages>
<Stages_beginarray
DiffuseMapAsset="ToolsModule:triggerProxyImage_image"/>
</Material.Stages>
</Material>
</MaterialAsset>

View file

@ -0,0 +1,14 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="ZoneProxyMaterial"
materialDefinitionName="ZoneProxyMaterial"
VersionId="1">
<Material
Name="ZoneProxyMaterial">
<Material.Stages>
<Stages_beginarray
DiffuseMapAsset="ToolsModule:zoneProxyImage_image"/>
</Material.Stages>
</Material>
</MaterialAsset>

View file

@ -29,7 +29,6 @@ function initializeConvexEditor()
exec( "./convexEditorToolbar.ed.gui" );
exec( "./convexEditorGui." @ $TorqueScriptFileExtension );
exec( "./convexEditorSidebarGui.gui" );
exec( "./materials." @ $TorqueScriptFileExtension );
ConvexEditorGui.setVisible( false );
ConvexEditorOptionsWindow.setVisible( false );

View file

@ -1,39 +0,0 @@
singleton Material( ZoneProxyMaterial )
{
mapTo = "ZoneProxyMaterial";
diffuseMapAsset[0] = "ToolsModule:zoneProxyImage_image";
materialTag0 = "TestMaterial";
translucent = true;
translucentBlendOp = "LerpAlpha";
castShadows = false;
};
singleton Material( TriggerProxyMaterial )
{
mapTo = "TriggerProxyMaterial";
diffuseMapAsset[0] = "ToolsModule:triggerProxyImage_image";
materialTag0 = "TestMaterial";
translucent = true;
translucentBlendOp = "PreMul";
castShadows = false;
};
singleton Material( PortalProxyMaterial )
{
mapTo = "PortalProxyMaterial";
diffuseMapAsset[0] = "ToolsModule:portalProxyImage_image";
materialTag0 = "TestMaterial";
translucent = true;
translucentBlendOp = "PreMul";
castShadows = false;
};
singleton Material( OccluderProxyMaterial )
{
mapTo = "OccluderProxyMaterial";
diffuseMapAsset[0] = "ToolsModule:occluderProxyImage_image";
materialTag0 = "TestMaterial";
translucent = true;
translucentBlendOp = "PreMul";
castShadows = false;
};

View file

@ -1,6 +0,0 @@
<GUIAsset
canSave="true"
canSaveDynamicFields="true"
scriptFile="@assetFile=DatablockEditorTreeWindow.ed.gui"
GUIFile="@assetFile=DatablockEditorTreeWindow.ed.gui"
VersionId="1" />

View file

@ -1,6 +0,0 @@
<GUIAsset
canSave="true"
canSaveDynamicFields="true"
scriptFile="@assetFile=guiObjectInspector.ed.gui"
GUIFile="@assetFile=guiObjectInspector.ed.gui"
VersionId="1" />

View file

@ -698,22 +698,6 @@ new GuiControlProfile( ToolsGuiFormProfile : ToolsGuiTextProfile )
// ----------------------------------------------------------------------------
singleton GuiControlProfile( GuiEditorClassProfile )
{
opaque = true;
fillColor = "232 232 232";
border = 1;
borderColor = "42 42 42 140";
borderColorHL = "127 127 127";
fontColor = "215 215 215";
fontColorHL = "50 50 50";
fixedExtent = true;
justify = "center";
bitmapAsset = "ToolsModule:scrollBar_image";
hasBitmapArray = true;
category = "Editor";
};
singleton GuiControlProfile( GuiBackFillProfile )
{
opaque = true;
@ -1246,3 +1230,11 @@ singleton GuiControlProfile (IconDropdownProfile)
fillColor = EditorSettings.value("Theme/headerColor");
};
//
singleton GuiControlProfile (GuiSimpleBorderProfile)
{
opaque = false;
border = 1;
category = "Editor";
};

View file

@ -82,7 +82,6 @@ function onStart()
// Common GUI stuff.
exec( "./gui/cursors.ed." @ $TorqueScriptFileExtension );
exec( "./gui/messageBoxes/messageBox.ed." @ $TorqueScriptFileExtension );
exec( "./editorClasses/gui/panels/navPanelProfiles.ed." @ $TorqueScriptFileExtension );
// Make sure we get editor profiles before any GUI's
// BUG: these dialogs are needed earlier in the init sequence, and should be moved to

View file

@ -1,6 +0,0 @@
<GUIAsset
canSave="true"
canSaveDynamicFields="true"
scriptFile="@assetFile=guiMaterialPreviewWindow.ed.gui"
GUIFile="@assetFile=guiMaterialPreviewWindow.ed.gui"
VersionId="1" />

View file

@ -43,11 +43,4 @@ singleton GuiControlProfile (GuiDisabledTextEditProfile)
tab = false;
canKeyFocus = false;
category = "Editor";
};
singleton GuiControlProfile (GuiSimpleBorderProfile)
{
opaque = false;
border = 1;
category = "Editor";
};

View file

@ -351,10 +351,3 @@ singleton GuiControlProfile(NavEditorProfile)
fillColor = "192 192 192 192";
category = "Editor";
};
singleton GuiControlProfile(GuiSimpleBorderProfile)
{
opaque = false;
border = 1;
category = "Editor";
};

View file

@ -0,0 +1,18 @@
<MaterialAsset
canSave="true"
canSaveDynamicFields="true"
AssetName="ReflectProbePreviewMat"
materialDefinitionName="ReflectProbePreviewMat"
VersionId="1">
<Material
Name="ReflectProbePreviewMat"
mapTo="ReflectProbePreviewMat">
<Material.Stages>
<Stages_beginarray
DiffuseMapAsset="ToolsModule:occluderProxyImage_image"
diffuseColor="1 1 1 1"
roughness="0"
metalness="1"/>
</Material.Stages>
</Material>
</MaterialAsset>

View file

@ -1,8 +0,0 @@
singleton Material(ReflectProbePreviewMat)
{
mapTo = "ReflectProbePreviewMat";
diffuseColor[0] = "1 1 1 1";
roughness[0] = "0";
metalness[0] = "1";
translucentBlendOp = "None";
};

View file

@ -26,12 +26,4 @@ singleton GuiControlProfile( RiverEditorProfile )
opaque = true;
fillColor = "192 192 192 192";
category = "Editor";
};
singleton GuiControlProfile (GuiSimpleBorderProfile)
{
opaque = false;
border = 1;
category = "Editor";
};
};

View file

@ -28,13 +28,6 @@ singleton GuiControlProfile( RoadEditorProfile )
category = "Editor";
};
singleton GuiControlProfile (GuiSimpleBorderProfile)
{
opaque = false;
border = 1;
category = "Editor";
};
singleton GuiCursor(RoadEditorMoveCursor)
{
hotSpot = "4 4";

View file

@ -1,6 +0,0 @@
<GUIAsset
canSave="true"
canSaveDynamicFields="true"
scriptFile="@assetFile=shapeEdSelectWindow.ed.gui"
GUIFile="@assetFile=shapeEdSelectWindow.ed.gui"
VersionId="1" />

View file

@ -1,6 +0,0 @@
<GUIAsset
canSave="true"
canSaveDynamicFields="true"
scriptFile="@assetFile=WorldEditorTreeWindow.ed.gui"
GUIFile="@assetFile=WorldEditorTreeWindow.ed.gui"
VersionId="1" />

View file

@ -2,6 +2,6 @@
canSave="true"
canSaveDynamicFields="true"
AssetName="AL_ShadowVizOverlayCtrl"
scriptFile="@assetFile=shadowViz.gui"
scriptFile="@assetFile=shadowViz.tscript"
GUIFile="@assetFile=shadowViz.gui"
VersionId="1" />

View file

@ -68,10 +68,7 @@ function initializeWorldEditor()
exec("./scripts/cameraCommands.ed." @ $TorqueScriptFileExtension);
exec("./scripts/probeBake.ed." @ $TorqueScriptFileExtension);
exec("./scripts/visibility/visibilityLayer.ed." @ $TorqueScriptFileExtension);
exec("./scripts/visibility/lightViz." @ $TorqueScriptFileExtension);
exec("./scripts/visibility/shadowViz." @ $TorqueScriptFileExtension);
exec("./scripts/visibility/probeViz." @ $TorqueScriptFileExtension);
exec("./scripts/visibility/miscViz." @ $TorqueScriptFileExtension);
exec("tools/gui/postFxEditor." @ $TorqueScriptFileExtension );
exec("tools/gui/renderTargetVisualizer.ed." @ $TorqueScriptFileExtension);

View file

@ -216,7 +216,7 @@ function EditorGui::init(%this)
ETerrainEditor.init();
//Creator.init();
ObjectCreator.init();
//ObjectCreator.init();
ObjectBuilderGui.init();
%this.setMenuDefaultState();

View file

@ -20,104 +20,8 @@
// IN THE SOFTWARE.
//-----------------------------------------------------------------------------
function ObjectCreator::init( %this )
{
// Just so we can recall this method for testing changes
// without restarting.
if ( isObject( %this.array ) )
%this.array.delete();
%this.array = new ArrayObject();
%this.array.caseSensitive = true;
%this.setListView( true );
%this.beginGroup( "Environment" );
// Removed Prefab as there doesn't really seem to be a point in creating a blank one
//%this.registerMissionObject( "Prefab", "Prefab" );
%this.registerMissionObject( "SkyBox", "Sky Box" );
%this.registerMissionObject( "SkySphere", "Sky Sphere" );
%this.registerMissionObject( "CloudLayer", "Cloud Layer" );
%this.registerMissionObject( "BasicClouds", "Basic Clouds" );
%this.registerMissionObject( "ScatterSky", "Scatter Sky" );
%this.registerMissionObject( "Sun", "Basic Sun" );
%this.registerMissionObject( "Lightning" );
%this.registerMissionObject( "WaterBlock", "Water Block" );
%this.registerMissionObject( "SFXEmitter", "Sound Emitter" );
%this.registerMissionObject( "Precipitation" );
%this.registerMissionObject( "ParticleEmitterNode", "Particle Emitter" );
%this.registerMissionObject( "VolumetricFog", "Volumetric Fog" );
%this.registerMissionObject( "RibbonNode", "Ribbon" );
// Legacy features. Users should use Ground Cover and the Forest Editor.
//%this.registerMissionObject( "fxShapeReplicator", "Shape Replicator" );
//%this.registerMissionObject( "fxFoliageReplicator", "Foliage Replicator" );
%this.registerMissionObject( "PointLight", "Point Light" );
%this.registerMissionObject( "SpotLight", "Spot Light" );
%this.registerMissionObject( "BoxEnvironmentProbe", "Box Environment Probe" );
%this.registerMissionObject( "SphereEnvironmentProbe", "Sphere Environment Probe" );
%this.registerMissionObject( "Skylight", "Skylight" );
%this.registerMissionObject( "GroundCover", "Ground Cover" );
%this.registerMissionObject( "TerrainBlock", "Terrain Block" );
%this.registerMissionObject( "GroundPlane", "Ground Plane" );
%this.registerMissionObject( "WaterPlane", "Water Plane" );
%this.registerMissionObject( "PxCloth", "Cloth" );
%this.registerMissionObject( "ForestWindEmitter", "Wind Emitter" );
%this.registerMissionObject( "DustEmitter", "Dust Emitter" );
%this.registerMissionObject( "DustSimulation", "Dust Simulation" );
%this.registerMissionObject( "DustEffecter", "Dust Effecter" );
%this.endGroup();
%this.beginGroup( "Level" );
%this.registerMissionObject( "MissionArea", "Mission Area" );
%this.registerMissionObject( "Path" );
%this.registerMissionObject( "Marker", "Path Node" );
%this.registerMissionObject( "Trigger" );
%this.registerMissionObject( "PhysicalZone", "Physical Zone" );
%this.registerMissionObject( "Camera" );
%this.registerMissionObject( "LevelInfo", "Level Info" );
%this.registerMissionObject( "TimeOfDay", "Time of Day" );
%this.registerMissionObject( "Zone", "Zone" );
%this.registerMissionObject( "Portal", "Zone Portal" );
%this.registerMissionObject( "SpawnSphere", "Player Spawn Sphere", "PlayerDropPoint" );
%this.registerMissionObject( "SpawnSphere", "Observer Spawn Sphere", "ObserverDropPoint" );
%this.registerMissionObject( "SpawnSphere", "General Spawn Sphere", "GeneralDropPoint" );
%this.registerMissionObject( "SFXSpace", "Sound Space" );
%this.registerMissionObject( "OcclusionVolume", "Occlusion Volume" );
%this.registerMissionObject( "AccumulationVolume", "Accumulation Volume" );
%this.registerMissionObject("NavMesh", "Navigation mesh");
%this.registerMissionObject("NavPath", "Path");
%this.registerMissionObject( "Entity", "Entity" );
%this.registerMissionObject( "NotesObject", "Note" );
%this.endGroup();
%this.beginGroup( "System" );
%this.registerMissionObject( "SimGroup" );
%this.endGroup();
%this.beginGroup( "ExampleObjects" );
%this.registerMissionObject( "RenderObjectExample" );
%this.registerMissionObject( "RenderMeshExample" );
%this.registerMissionObject( "RenderShapeExample" );
%this.endGroup();
}
function ObjectCreator::onWake( %this )
{
CreatorTabBook.selectPage( 0 );
CreatorTabBook.onTabSelected( "Scripted" );
}
function ObjectCreator::beginGroup( %this, %group )
@ -159,8 +63,6 @@ function ObjectCreator::registerMissionObject( %this, %class, %name, %buildfunc,
%args.val[0] = %class;
%args.val[1] = %name;
%args.val[2] = %buildfunc;
%this.array.push_back( %group, %args );
}
function ObjectCreator::getNewObjectGroup( %this )
@ -271,330 +173,6 @@ function ObjectCreator::onObjectCreated( %this, %objId )
EWorldEditor.dropSelection( true );
}
function CreatorTabBook::onTabSelected( %this, %text, %idx )
{
if ( %this.isAwake() )
{
ObjectCreator.tab = %text;
ObjectCreator.navigate( "" );
}
}
function ObjectCreator::navigate( %this, %address )
{
CreatorIconArray.frozen = true;
CreatorIconArray.clear();
CreatorPopupMenu.clear();
if ( %this.tab $= "Scripted" )
{
%category = getWord( %address, 1 );
%dataGroup = "DataBlockGroup";
for ( %i = 0; %i < %dataGroup.getCount(); %i++ )
{
%obj = %dataGroup.getObject(%i);
// echo ("Obj: " @ %obj.getName() @ " - " @ %obj.category );
if ( %obj.category $= "" && %obj.category == 0 )
continue;
// Add category to popup menu if not there already
if ( CreatorPopupMenu.findText( %obj.category ) == -1 )
CreatorPopupMenu.add( %obj.category );
if ( %address $= "" )
{
%ctrl = %this.findIconCtrl( %obj.category );
if ( %ctrl == -1 )
{
%this.addFolderIcon( %obj.category );
}
}
else if ( %address $= %obj.category )
{
%ctrl = %this.findIconCtrl( %obj.getName() );
if ( %ctrl == -1 )
%this.addShapeIcon( %obj );
}
}
}
if ( %this.tab $= "Meshes" )
{
%fullPath = findFirstFileMultiExpr( getFormatExtensions() );
while ( %fullPath !$= "" )
{
if (strstr(%fullPath, "cached.dts") != -1)
{
%fullPath = findNextFileMultiExpr( getFormatExtensions() );
continue;
}
%fullPath = makeRelativePath( %fullPath, getMainDotCSDir() );
%splitPath = strreplace( %fullPath, " ", "_" );
%splitPath = strreplace( %splitPath, "/", " " );
if( getWord(%splitPath, 0) $= "tools" )
{
%fullPath = findNextFileMultiExpr( getFormatExtensions() );
continue;
}
%dirCount = getWordCount( %splitPath ) - 1;
%pathFolders = getWords( %splitPath, 0, %dirCount - 1 );
// Add this file's path (parent folders) to the
// popup menu if it isn't there yet.
%temp = strreplace( %pathFolders, " ", "/" );
%temp = strreplace( %temp, "_", " " );
%r = CreatorPopupMenu.findText( %temp );
if ( %r == -1 )
{
CreatorPopupMenu.add( %temp );
}
// Is this file in the current folder?
if ( stricmp( %pathFolders, %address ) == 0 )
{
%this.addStaticIcon( %fullPath );
}
// Then is this file in a subfolder we need to add
// a folder icon for?
else
{
%wordIdx = 0;
%add = false;
if ( %address $= "" )
{
%add = true;
%wordIdx = 0;
}
else
{
for ( ; %wordIdx < %dirCount; %wordIdx++ )
{
%temp = getWords( %splitPath, 0, %wordIdx );
if ( stricmp( %temp, %address ) == 0 )
{
%add = true;
%wordIdx++;
break;
}
}
}
if ( %add == true )
{
%folder = getWord( %splitPath, %wordIdx );
%ctrl = %this.findIconCtrl( %folder );
if ( %ctrl == -1 )
%this.addFolderIcon( %folder );
}
}
%fullPath = findNextFileMultiExpr( getFormatExtensions() );
}
}
if ( %this.tab $= "Level" )
{
// Add groups to popup menu
%array = %this.array;
%array.sortk();
%count = %array.count();
if ( %count > 0 )
{
%lastGroup = "";
for ( %i = 0; %i < %count; %i++ )
{
%group = %array.getKey( %i );
if ( %group !$= %lastGroup )
{
CreatorPopupMenu.add( %group );
if ( %address $= "" )
%this.addFolderIcon( %group );
}
if ( %address $= %group )
{
%args = %array.getValue( %i );
%class = %args.val[0];
%name = %args.val[1];
%func = %args.val[2];
%this.addMissionObjectIcon( %class, %name, %func );
}
%lastGroup = %group;
}
}
}
if ( %this.tab $= "Prefabs" )
{
%expr = "*.prefab";
%fullPath = findFirstFile( %expr );
while ( %fullPath !$= "" )
{
%fullPath = makeRelativePath( %fullPath, getMainDotCSDir() );
%splitPath = strreplace( %fullPath, " ", "_" );
%splitPath = strreplace( %splitPath, "/", " " );
if( getWord(%splitPath, 0) $= "tools" )
{
%fullPath = findNextFile( %expr );
continue;
}
%dirCount = getWordCount( %splitPath ) - 1;
%pathFolders = getWords( %splitPath, 0, %dirCount - 1 );
// Add this file's path (parent folders) to the
// popup menu if it isn't there yet.
%temp = strreplace( %pathFolders, " ", "/" );
%temp = strreplace( %temp, "_", " " );
%r = CreatorPopupMenu.findText( %temp );
if ( %r == -1 )
{
CreatorPopupMenu.add( %temp );
}
// Is this file in the current folder?
if ( (%dirCount == 0 && %address $= "") || stricmp( %pathFolders, %address ) == 0 )
{
%this.addPrefabIcon( %fullPath );
}
// Then is this file in a subfolder we need to add
// a folder icon for?
else
{
%wordIdx = 0;
%add = false;
if ( %address $= "" )
{
%add = true;
%wordIdx = 0;
}
else
{
for ( ; %wordIdx < %dirCount; %wordIdx++ )
{
%temp = getWords( %splitPath, 0, %wordIdx );
if ( stricmp( %temp, %address ) == 0 )
{
%add = true;
%wordIdx++;
break;
}
}
}
if ( %add == true )
{
%folder = getWord( %splitPath, %wordIdx );
%ctrl = %this.findIconCtrl( %folder );
if ( %ctrl == -1 )
%this.addFolderIcon( %folder );
}
}
%fullPath = findNextFile( %expr );
}
}
CreatorIconArray.sort( "alphaIconCompare" );
for ( %i = 0; %i < CreatorIconArray.getCount(); %i++ )
{
CreatorIconArray.getObject(%i).autoSize = false;
}
CreatorIconArray.frozen = false;
CreatorIconArray.refresh();
// Recalculate the array for the parent guiScrollCtrl
CreatorIconArray.getParent().computeSizes();
%this.address = %address;
CreatorPopupMenu.sort();
%str = strreplace( %address, " ", "/" );
%r = CreatorPopupMenu.findText( %str );
if ( %r != -1 )
CreatorPopupMenu.setSelected( %r, false );
else
CreatorPopupMenu.setText( %str );
CreatorPopupMenu.tooltip = %str;
}
function ObjectCreator::navigateDown( %this, %folder )
{
if ( %this.address $= "" )
%address = %folder;
else
%address = %this.address SPC %folder;
// Because this is called from an IconButton::onClick command
// we have to wait a tick before actually calling navigate, else
// we would delete the button out from under itself.
%this.schedule( 1, "navigate", %address );
}
function ObjectCreator::navigateUp( %this )
{
%count = getWordCount( %this.address );
if ( %count == 0 )
return;
if ( %count == 1 )
%address = "";
else
%address = getWords( %this.address, 0, %count - 2 );
%this.navigate( %address );
}
function ObjectCreator::setListView( %this, %noupdate )
{
//CreatorIconArray.clear();
//CreatorIconArray.setVisible( false );
CreatorIconArray.setVisible( true );
%this.contentCtrl = CreatorIconArray;
%this.isList = true;
if ( %noupdate == true )
%this.navigate( %this.address );
}
//function ObjectCreator::setIconView( %this )
//{
//echo( "setIconView" );
//
//CreatorIconStack.clear();
//CreatorIconStack.setVisible( false );
//
//CreatorIconArray.setVisible( true );
//%this.contentCtrl = CreatorIconArray;
//%this.isList = false;
//
//%this.navigate( %this.address );
//}
function ObjectCreator::findIconCtrl( %this, %name )
{
for ( %i = 0; %i < %this.contentCtrl.getCount(); %i++ )

View file

@ -33,7 +33,6 @@ TORQUE_UNIFORM_SAMPLER2D(backbufferTex, 4);
TORQUE_UNIFORM_SAMPLER2D(glowBuffer, 5);
uniform float mode;
uniform float3 eyePosWorld;
uniform float4x4 cameraToWorld;
float4 main( PFXVertToPix IN ) : TORQUE_TARGET0