Empty Template for ticket #1

This commit is contained in:
DavidWyand-GG 2012-09-19 11:29:55 -04:00
parent 8337cad7ee
commit 40220512d3
1573 changed files with 141028 additions and 0 deletions

View file

@ -0,0 +1,72 @@
//--- OBJECT WRITE BEGIN ---
%guiContent = new GuiControl(EditorLoadingGui, EditorGuiGroup) {
isContainer = "1";
Profile = "GuiOverlayProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "0 0";
Extent = "800 600";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "1";
new GuiControl() {
isContainer = "1";
Profile = "editorMenu_wBorderProfile";
HorizSizing = "center";
VertSizing = "center";
position = "277 271";
Extent = "245 57";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "Dialog";
canSaveDynamicFields = "0";
new GuiTextCtrl() {
text = "Loading the World Editor...";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiTextBoldCenterProfile";
HorizSizing = "width";
VertSizing = "center";
position = "5 19";
Extent = "236 18";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
};
};
};
//--- OBJECT WRITE END ---
function EditorLoadingGui::onWake(%this)
{
%res = %this.getExtent();
%resX = getWord(%res, 0);
%resY = getWord(%res, 1);
%dialog = %this-->Dialog;
%dialogExtent = %dialog.getExtent();
%dialogWidth = getWord(%dialogExtent, 0);
%dialogHeight = getWord(%dialogExtent, 1);
%dialogPostion = %dialog.getPosition();
%posX = (%resX / 2) - (%dialogWidth / 2);
%posY = (%resY / 2) - (%dialogHeight / 2);
%dialog.setPosition(%posX, %posY);
}

View file

@ -0,0 +1,183 @@
//-----------------------------------------------------------------------------
// Copyright (c) 2012 GarageGames, LLC
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
// IN THE SOFTWARE.
//-----------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------
function GetEaseF( %currentEase, %callback, %root )
{
GuiEaseEditDlg.init( %currentEase, %callback );
if( !isObject( %root ) )
%root = Canvas;
%root.pushDialog( GuiEaseEditDlg );
}
//=============================================================================================
// GuiEaseEditDlg
//=============================================================================================
//---------------------------------------------------------------------------------------------
function GuiEaseEditDlg::init( %this, %ease, %callback )
{
// Initialize direction popup.
%directionList = %this-->directionList;
if( !%directionList.size() )
{
%directionList.add( "InOut", $Ease::InOut );
%directionList.add( "In", $Ease::In );
%directionList.add( "Out", $Ease::Out );
}
// Initialize type popup.
%typeList = %this-->typeList;
if( !%typeList.size() )
{
%typeList.add( "Linear", $Ease::Linear );
%typeList.add( "Quadratic", $Ease::Quadratic );
%typeList.add( "Cubic", $Ease::Cubic );
%typeList.add( "Quartic", $Ease::Quartic );
%typeList.add( "Quintic", $Ease::Quintic );
%typeList.add( "Sinusoidal", $Ease::Sinusoidal );
%typeList.add( "Exponential", $Ease::Exponential );
%typeList.add( "Circular", $Ease::Circular );
%typeList.add( "Elastic", $Ease::Elastic );
%typeList.add( "Back", $Ease::Back );
%typeList.add( "Bounce", $Ease::Bounce );
}
// Set the initial easing curve.
%this.oldEase = %ease;
%this.setEase( %ease );
// Remember callback.
%this.callback = %callback;
}
//---------------------------------------------------------------------------------------------
function GuiEaseEditDlg::setEase( %this, %ease )
{
%this-->easeView.ease = %ease;
%this-->directionList.setSelected( getWord( %ease, 0 ), false );
%this-->typeList.setSelected( getWord( %ease, 1 ), false );
%this-->param1Value.setValue( getWord( %ease, 2 ) );
%this-->param2Value.setValue( getWord( %ease, 3 ) );
%this.onEaseTypeSet();
}
//---------------------------------------------------------------------------------------------
function GuiEaseEditDlg::onEaseTypeSet( %this )
{
switch( %this-->typeList.getSelected() )
{
case $Ease::Elastic:
%this-->param1Value.setActive( true );
%this-->param2Value.setActive( true );
case $Ease::Back:
%this-->param1Value.setActive( true );
%this-->param2Value.setActive( false );
default:
%this-->param1Value.setActive( false );
%this-->param2Value.setActive( false );
}
}
//---------------------------------------------------------------------------------------------
function GuiEaseEditDlg::onOK( %this )
{
eval( %this.callback @ "( \"" @ %this-->easeView.ease @ "\" );" );
%this.getRoot().popDialog( %this );
}
//---------------------------------------------------------------------------------------------
function GuiEaseEditDlg::onCancel( %this )
{
%this.getRoot().popDialog( %this );
}
//---------------------------------------------------------------------------------------------
function GuiEaseEditDlg::onSetParam1( %this, %value )
{
%easeView = %this-->easeView;
%ease = %easeView.ease;
%ease = setWord( %ease, 2, %value );
%easeView.ease = %ease;
}
//---------------------------------------------------------------------------------------------
function GuiEaseEditDlg::onSetParam2( %this, %value )
{
%easeView = %this-->easeView;
%ease = %easeView.ease;
%ease = setWord( %ease, 3, %value );
%easeView.ease = %ease;
}
//=============================================================================================
// GuiEaseEditDirectionList
//=============================================================================================
//---------------------------------------------------------------------------------------------
function GuiEaseEditDirectionList::onSelect( %this, %id, %text )
{
%easeView = GuiEaseEditDlg-->easeView;
%ease = %easeView.ease;
%ease = setWord( %ease, 0, %id );
%easeview.ease = %ease;
}
//=============================================================================================
// GuiEaseEditTypeList
//=============================================================================================
//---------------------------------------------------------------------------------------------
function GuiEaseEditTypeList::onSelect( %this, %id, %text )
{
%easeView = GuiEaseEditDlg-->easeView;
%ease = %easeView.ease;
%ease = setWord( %ease, 1, %id );
%easeview.ease = %ease;
GuiEaseEditDlg.onEaseTypeSet();
}

View file

@ -0,0 +1,332 @@
//--- OBJECT WRITE BEGIN ---
%guiContent = new GuiControl(GuiEaseEditDlg,EditorGuiGroup) {
isContainer = "1";
Profile = "GuiDefaultProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "0 0";
Extent = "1024 768";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "1";
new GuiWindowCtrl() {
resizeWidth = "0";
resizeHeight = "0";
canMove = "1";
canClose = "1";
canMinimize = "0";
canMaximize = "0";
minSize = "50 50";
closeCommand = "GuiEaseEditDlg.onCancel();";
EdgeSnap = "1";
text = "Edit Easing Curve";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "1";
Profile = "GuiWindowProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "334 145";
Extent = "269 214";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "window";
canSaveDynamicFields = "0";
new GuiBitmapBorderCtrl() {
isContainer = "1";
Profile = "GuiGroupBorderProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "5 27";
Extent = "95 151";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
new GuiTextCtrl() {
text = "Direction";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiAutoSizeTextProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "6 3";
Extent = "43 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
};
new GuiPopUpMenuCtrl() {
maxPopupHeight = "200";
sbUsesNAColor = "0";
reverseTextList = "0";
bitmapBounds = "16 16";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiPopUpMenuProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "6 20";
Extent = "83 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "directionList";
canSaveDynamicFields = "0";
class = "GuiEaseEditDirectionList";
className = "GuiEaseEditDirectionList";
};
new GuiTextCtrl() {
text = "Type";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiAutoSizeTextProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "6 40";
Extent = "25 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
};
new GuiPopUpMenuCtrl() {
maxPopupHeight = "200";
sbUsesNAColor = "0";
reverseTextList = "0";
bitmapBounds = "16 16";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiPopUpMenuProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "6 57";
Extent = "83 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "typeList";
canSaveDynamicFields = "0";
class = "GuiEaseEditTypeList";
className = "GuiEaseEditTypeList";
};
new GuiTextCtrl() {
text = "Param1";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiAutoSizeTextProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "6 76";
Extent = "38 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
};
new GuiTextCtrl() {
text = "Param2";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiAutoSizeTextProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "6 111";
Extent = "38 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
};
new GuiTextEditSliderCtrl() {
format = "%3.2f";
range = "-1e+03 1e+03";
increment = "0.1";
focusOnMouseWheel = "0";
historySize = "0";
password = "0";
tabComplete = "0";
sinkAllKeyEvents = "0";
passwordMask = "•";
text = "-1.00";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiTextEditProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "6 93";
Extent = "83 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
AltCommand = "GuiEaseEditDlg.onSetParam1( $ThisControl.getValue() );";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "param1Value";
canSaveDynamicFields = "0";
};
new GuiTextEditSliderCtrl() {
format = "%3.2f";
range = "-1e+03 1e+03";
increment = "0.1";
focusOnMouseWheel = "0";
historySize = "0";
password = "0";
tabComplete = "0";
sinkAllKeyEvents = "0";
passwordMask = "•";
text = "-1.00";
maxLength = "1024";
Margin = "0 0 0 0";
Padding = "0 0 0 0";
AnchorTop = "1";
AnchorBottom = "0";
AnchorLeft = "1";
AnchorRight = "0";
isContainer = "0";
Profile = "GuiTextEditProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "6 128";
Extent = "83 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
AltCommand = "GuiEaseEditDlg.onSetParam2( $ThisControl.getValue() );";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "param2Value";
canSaveDynamicFields = "0";
};
};
new GuiButtonCtrl() {
text = "OK";
groupNum = "-1";
buttonType = "PushButton";
useMouseEvents = "0";
isContainer = "0";
Profile = "GuiButtonProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "67 184";
Extent = "115 24";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
Command = "GuiEaseEditDlg.onOK();";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
};
new GuiButtonCtrl() {
text = "Cancel";
groupNum = "-1";
buttonType = "PushButton";
useMouseEvents = "0";
isContainer = "0";
Profile = "GuiButtonProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "184 184";
Extent = "73 24";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
Command = "GuiEaseEditDlg.onCancel();";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
};
new GuiEaseViewCtrl() {
wrap = "0";
isContainer = "0";
Profile = "GuiDefaultProfile";
HorizSizing = "right";
VertSizing = "bottom";
Position = "107 28";
Extent = "150 150";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "easeView";
canSaveDynamicFields = "0";
ease = "1 2 -1 -1";
easeColor = "0.537255 0.537255 0.537255 1";
easeWidth = "4";
axisColor = "0.509804 0.509804 0.509804 1";
};
};
};
//--- OBJECT WRITE END ---

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,523 @@
//--- OBJECT WRITE BEGIN ---
%guiContent = new GuiColorPickerCtrl(ColorPickerDlg,EditorGuiGroup) {
canSaveDynamicFields = "0";
isContainer = "1";
Profile = "GuiDefaultProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "0 0";
Extent = "800 600";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
hovertime = "1000";
DisplayMode = "Dropper"; // this makes the background visible
ActionOnMove = "1";
new GuiWindowCtrl(GuiPickerDlg) {
canSaveDynamicFields = "0";
isContainer = "1";
Profile = "GuiWindowProfile";
HorizSizing = "windowRelative";
VertSizing = "windowRelative";
position = "170 100";
Extent = "348 347";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
hovertime = "1000";
text = "Color Picker";
maxLength = "255";
resizeWidth = "0";
resizeHeight = "0";
canMove = "1";
canClose = "1";
canMinimize = "0";
canMaximize = "0";
minSize = "50 50";
closeCommand = "DoColorPickerCancelCallback(); ColorPickerDlg.getRoot().popDialog(ColorPickerDlg);";
new GuiBitmapBorderCtrl(){ // color blend
Profile = "GuiGroupBorderProfile";
position = "3 24";
Extent = "255 258";
};
new GuiBitmapBorderCtrl(){ // Hue
Profile = "GuiGroupBorderProfile";
position = "263 23";
Extent = "25 261";
};
new GuiBitmapBorderCtrl(){ // new old color
Profile = "GuiGroupBorderProfile";
position = "292 37";
Extent = "52 99";
};
new GuiBitmapBorderCtrl(){ // rgb
Profile = "GuiGroupBorderProfile";
position = "292 209";
Extent = "52 75";
};
new GuiBitmapBorderCtrl(){ // alpha
Profile = "GuiGroupBorderProfile";
position = "3 287";
Extent = "341 24";
};
new GuiColorPickerCtrl(ColorBlendSelect) {
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiDefaultProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "3 24";
Extent = "255 258";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
command = "updateRGBValues(1);";
hovertime = "1000";
baseColor = "1 0 0 1";
PickColor = "0 0 0 1";
SelectorGap = "1";
DisplayMode = "BlendColor";
ActionOnMove = "1";
};
new GuiColorPickerCtrl(ColorRangeSelect) {
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiDefaultProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "264 24";
Extent = "21 257";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
Command = "updatePickerBaseColor(1);";
hovertime = "1000";
baseColor = "1 0 0 1";
PickColor = "1 0 0 1";
SelectorGap = "1";
DisplayMode = "VertColor";
ActionOnMove = "1";
};
new GuiTextCtrl() {
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiTextProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "298 215";
Extent = "8 18";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
hovertime = "1000";
text = "R";
maxLength = "255";
};
new GuiTextEditCtrl(Channel_R_Val) { // Red Channal
Profile = "GuiTextEditProfileNumbersOnly";
HorizSizing = "right";
VertSizing = "bottom";
position = "307 215";
Extent = "34 18";
text = "0";
maxLength = "4";
altCommand = "setColorInfo();";
};
new GuiTextCtrl() {
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiTextProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "297 238";
Extent = "8 18";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
hovertime = "1000";
text = "G";
maxLength = "255";
};
new GuiTextEditCtrl(Channel_G_Val) { // Green Channal
Profile = "GuiTextEditProfileNumbersOnly";
HorizSizing = "right";
VertSizing = "bottom";
position = "307 238";
Extent = "34 18";
text = "0";
maxLength = "4";
altCommand = "setColorInfo();";
};
new GuiTextCtrl() {
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiTextProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "298 261";
Extent = "8 18";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
hovertime = "1000";
text = "B";
maxLength = "255";
};
new GuiTextEditCtrl(Channel_B_Val) { // Blue Channal
Profile = "GuiTextEditProfileNumbersOnly";
HorizSizing = "right";
VertSizing = "bottom";
position = "307 261";
Extent = "34 18";
text = "0";
maxLength = "4";
altCommand = "setColorInfo();";
};
new GuiControl() {
class = "AggregateControl";
position = "2 290";
Extent = "341 18";
new GuiTextCtrl() {
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiTextProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "267 0";
Extent = "29 18";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
hovertime = "1000";
text = "Alpha";
maxLength = "255";
};
new GuiSliderCtrl(ColorAlphaSelect) {
internalName = "slider";
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiSliderProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "5 3";
Extent = "251 13";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
altCommand = "$ThisControl.getParent().updateFromChild($ThisControl); updateColorPickerAlpha( $ThisControl.getValue() );";
hovertime = "1000";
range = "0 1";
ticks = "0";
value = "1";
};
new GuiTextEditCtrl(Channel_A_Val) { // Alpha Channal
internalName = "textEdit";
Profile = "GuiTextEditProfileNumbersOnly";
HorizSizing = "right";
VertSizing = "bottom";
position = "305 0";
Extent = "34 18";
text = "0";
maxLength = "4";
altCommand = "$ThisControl.getParent().updateFromChild($ThisControl); updateColorPickerAlpha( $ThisControl.getValue() );";
};
};
new GuiSwatchButtonCtrl(myColor){ // New Color //
Profile = "GuiDefaultProfile";
position = "293 38";
Extent = "50 50";
};
new GuiTextCtrl(){
Profile = "GuiDefaultProfile";
text = "New";
position = "306 22";
Extent = "26 14";
};
new GuiSwatchButtonCtrl(oldColor){ // Old Color //
Profile = "GuiDefaultProfile";
position = "293 85";
Extent = "50 50";
};
new GuiTextCtrl(){
Profile = "GuiDefaultProfile";
text = "Old";
position = "310 138";
Extent = "26 14";
};
new GuiButtonCtrl() {
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiButtonProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "144 316";
Extent = "115 24";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
Command = "DoColorPickerCallback();";
hovertime = "1000";
text = "Select";
groupNum = "-1";
buttonType = "PushButton";
useMouseEvents = "0";
};
new GuiButtonCtrl() {
canSaveDynamicFields = "0";
isContainer = "0";
Profile = "GuiButtonProfile";
HorizSizing = "right";
VertSizing = "bottom";
position = "268 316";
Extent = "73 24";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
Command = "DoColorPickerCancelCallback();";
hovertime = "1000";
text = "Cancel";
groupNum = "-1";
buttonType = "PushButton";
useMouseEvents = "0";
};
};
};
//--- OBJECT WRITE END ---
$ColorPickerCallback = ""; // Control that we need to update
$ColorPickerCancelCallback = "";
$ColorPickerUpdateCallback = "";
$ColorCallbackType = 1; // ColorI
function ColorFloatToInt( %color )
{
%red = getWord( %color, 0 );
%green = getWord( %color, 1 );
%blue = getWord( %color, 2 );
%alpha = getWord( %color, 3 );
return mCeil( %red * 255 ) SPC mCeil( %green * 255 ) SPC mCeil( %blue * 255 ) SPC mCeil( %alpha * 255 );
}
function ColorIntToFloat( %color )
{
%red = getWord( %color, 0 );
%green = getWord( %color, 1 );
%blue = getWord( %color, 2 );
%alpha = getWord( %color, 3 );
return ( %red / 255 ) SPC ( %green / 255 ) SPC ( %blue / 255 ) SPC ( %alpha / 255 );
}
// This function pushes the color picker dialog and returns to a callback the selected value
function GetColorI( %currentColor, %callback, %root, %updateCallback, %cancelCallback )
{
$ColorPickerSignal = 1;
$ColorPickerCallback = %callback;
$ColorPickerCancelCallback = %cancelCallback;
$ColorPickerUpdateCallback = %updateCallback;
$ColorCallbackType = 1; // ColorI
oldColor.color = ColorIntToFloat( %currentColor );
myColor.color = ColorIntToFloat( %currentColor );
ColorRangeSelect.showReticle = true;
ColorBlendSelect.showReticle = true;
// Set the range according to int
ColorAlphaSelect.range = "0 255";
// Set the RGBA displays accordingly
%red = getWord(%currentColor, 0) / 255;
%green = getWord(%currentColor, 1) / 255;
%blue = getWord(%currentColor, 2) / 255;
%alpha = getWord(%currentColor, 3);
// set the initial range blend to correct color, no alpha needed
// this should also set the color blend select right now
ColorRangeSelect.baseColor = %red SPC %green SPC %blue SPC "1.0";
ColorRangeSelect.updateColor();
if(!isObject(%root))
%root = Canvas;
%root.pushDialog(ColorPickerDlg);
// update the alpha value first
ColorAlphaSelect.setValue( %alpha );
Channel_A_Val.setText( %alpha );
}
function GetColorF( %currentColor, %callback, %root, %updateCallback, %cancelCallback )
{
$ColorPickerSignal = 1;
$ColorPickerCallback = %callback;
$ColorPickerCancelCallback = %cancelCallback;
$ColorPickerUpdateCallback = %updateCallback;
$ColorCallbackType = 2; // ColorF
oldColor.color = %currentColor;
myColor.color = %currentColor;
ColorRangeSelect.showReticle = true;
ColorBlendSelect.showReticle = true;
// Set the range according to float
ColorAlphaSelect.range = "0 1";
// Set the RGBA displays accordingly
%red = getWord(%currentColor, 0);
%green = getWord(%currentColor, 1);
%blue = getWord(%currentColor, 2);
%alpha = getWord(%currentColor, 3);
// set the initial range blend to correct color, no alpha needed
// this should also set the color blend select right now
ColorRangeSelect.baseColor = %red SPC %green SPC %blue SPC "1.0";
ColorRangeSelect.updateColor();
if(!isObject(%root))
%root = Canvas;
%root.pushDialog(ColorPickerDlg);
// update the alpha value first
ColorAlphaSelect.setValue( %alpha );
Channel_A_Val.setText( %alpha );
}
// This function is used to update the text controls at the top
function setColorInfo()
{
%red = Channel_R_Val.getValue();
%green = Channel_G_Val.getValue();
%blue = Channel_B_Val.getValue();
if( $ColorCallbackType == 1)
{
%red = (%red / 255);
%green = (%green / 255);
%blue = (%blue / 255);
}
$ColorPickerSignal = 1;
ColorBlendSelect.baseColor = %red SPC %green SPC %blue SPC "1.0";
ColorBlendSelect.updateColor();
}
// return mycolor.color
function DoColorPickerCallback()
{
eval( $ColorPickerCallback @ "(\"" @ constructNewColor(mycolor.color, $ColorCallbackType) @"\");" );
ColorPickerDlg.getRoot().popDialog(ColorPickerDlg);
}
function DoColorPickerCancelCallback()
{
ColorPickerDlg.getRoot().popDialog( ColorPickerDlg );
if( $ColorPickerCancelCallback !$= "" )
eval( $ColorPickerCancelCallback @ "(\"" @ constructNewColor( oldColor.color, $ColorCallbackType ) @ "\");" );
}
function DoColorPickerUpdateCallback()
{
if( $ColorPickerUpdateCallback !$= "" )
eval( $ColorPickerUpdateCallback @ "(\"" @ constructNewColor( myColor.color, $ColorCallbackType ) @ "\");" );
}
// this is called from ColorRangeSelect.updateColor
function updatePickerBaseColor( %location )
{
if( $ColorPickerSignal && %location )
%pickColor = ColorRangeSelect.baseColor;
else
%pickColor = ColorRangeSelect.pickColor;
$ColorPickerSignal = 1;
%red = getWord(%pickColor, 0);
%green = getWord(%pickColor, 1);
%blue = getWord(%pickColor, 2);
%alpha = getWord(%pickColor, 3);
ColorBlendSelect.baseColor = %red SPC %green SPC %blue SPC "1.0";
ColorBlendSelect.updateColor();
}
// this is called from ColorBlendSelect.updateColor
function updateRGBValues( %location )
{
//update the color based on where it came from
if( $ColorPickerSignal && %location )
%pickColor = ColorBlendSelect.baseColor;
else
%pickColor = ColorBlendSelect.pickColor;
//lets prepare the color
%red = getWord(%pickColor, 0);
%green = getWord(%pickColor, 1);
%blue = getWord(%pickColor, 2);
//the alpha should be grabbed from mycolor
%alpha = getWord(myColor.color, 3);
// set the color!
myColor.color = %red SPC %green SPC %blue SPC %alpha ;
DoColorPickerUpdateCallback();
//update differently depending on type
if( $ColorCallbackType == 1 )
{
%red = mCeil(%red * 255);
%blue = mCeil(%blue * 255);
%green = mCeil(%green * 255);
}
else
{
%red = mFloatLength(%red, 3);
%blue = mFloatLength(%blue, 3);
%green = mFloatLength(%green, 3);
}
// changes current color values
Channel_R_Val.setValue(%red);
Channel_G_Val.setValue(%green);
Channel_B_Val.setValue(%blue);
$ColorPickerSignal = 0;
}
function updateColorPickerAlpha( %alphaVal )
{
//lets prepare the color
%red = getWord(myColor.color, 0);
%green = getWord(myColor.color, 1);
%blue = getWord(myColor.color, 2);
%alpha = %alphaVal;
if( $ColorCallbackType == 1 )
%alpha = (%alpha / 255);
myColor.color = %red SPC %green SPC %blue SPC %alpha ;
DoColorPickerUpdateCallback();
}
function constructNewColor(%pickColor, %colorType )
{
%red = getWord(%pickColor, 0);
%green = getWord(%pickColor, 1);
%blue = getWord(%pickColor, 2);
%alpha = ColorAlphaSelect.getValue();
// Update the text controls to reflect new color
//setColorInfo(%red, %green, %blue, %alpha);
if ( %colorType == 1 ) // ColorI
return mCeil( %red * 255 ) SPC mCeil( %green * 255 ) SPC mCeil( %blue * 255 ) SPC %alpha;
else // ColorF
return %red SPC %green SPC %blue SPC %alpha;
}

View file

@ -0,0 +1,63 @@
//-----------------------------------------------------------------------------
// Copyright (c) 2012 GarageGames, LLC
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
// IN THE SOFTWARE.
//-----------------------------------------------------------------------------
new GuiCursor(LeftRightCursor)
{
hotSpot = "0.5 0";
renderOffset = "0.5 0";
bitmapName = "./Images/leftRight";
};
new GuiCursor(UpDownCursor)
{
hotSpot = "1 1";
renderOffset = "0 1";
bitmapName = "./Images/upDown";
};
new GuiCursor(NWSECursor)
{
hotSpot = "1 1";
renderOffset = "0.5 0.5";
bitmapName = "./Images/NWSE";
};
new GuiCursor(NESWCursor)
{
hotSpot = "1 1";
renderOffset = "0.5 0.5";
bitmapName = "./Images/NESW";
};
new GuiCursor(MoveCursor)
{
hotSpot = "1 1";
renderOffset = "0.5 0.5";
bitmapName = "./Images/move";
};
new GuiCursor(TextEditCursor)
{
hotSpot = "1 1";
renderOffset = "0.5 0.5";
bitmapName = "./Images/textEdit";
};

View file

@ -0,0 +1,331 @@
//-----------------------------------------------------------------------------
// Copyright (c) 2012 GarageGames, LLC
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
// IN THE SOFTWARE.
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// File Dialog Base - Add to Sim Callback
// Purpose : Intitialize Variables and Setup State.
//-----------------------------------------------------------------------------
function FileDialogBase::onAdd( %this )
{
// Callback function Succeed
%this.SuccessCallback = 0;
// Callback function Cancel
%this.CancelCallback = 0;
// Multiple Select Flag
%this.MultipleSelect = false;
// File Extensions Group
%this.FileExtensions = new SimGroup();
%this.AddFilter("*.*","All Files");
}
//-----------------------------------------------------------------------------
// File Dialog Base - Remove from Sim Callback
// Purpose : Destroy Resources.
//-----------------------------------------------------------------------------
function FileDialogBase::onRemove( %this )
{
// Remove FileExtensions Group
if ( isObject( %this.FileExtensions ) )
%this.FileExtensions.delete();
// Remove Returned Files Group
if( isObject( %this.ReturnFiles ) )
%this.ReturnFiles.delete();
}
//-----------------------------------------------------------------------------
// File Dialog Base - Show on Screen Callback
// Purpose : Destroy Resources.
//-----------------------------------------------------------------------------
function FileDialogBase::onWake( %this )
{
// Necessary
%dirTree = %this.findObjectByInternalName("DirectoryTree", true);
%fileList = %this.findObjectByInternalName("FileList", true);
%filterList = %this.findObjectByInternalName("FilterList", true);
%cancelButton = %this.findObjectByInternalName("CancelButton", true);
%okButton = %this.findObjectByInternalName("OkButton", true);
// Optional
%fileName = %this.findObjectByInternalName("FileName", true);
// Check for functionality Components.
if( !isObject( %dirTree ) || !isObject( %fileList ) || !isObject( %filterList ) )
{
error("FileDialogBase::onWake - Unable to find NECESSARY child controls.");
return false;
}
// Check for button components.
if( !isObject( %cancelButton ) || !isObject( %okButton ) )
{
error("FileDialogBase::onWake - Unable to find accept and cancel buttons!");
return false;
}
// Tag controls so that they can navigate our dialog.
%dirTree.parent = %this;
%fileList.parent = %this;
%filterList.parent = %this;
%okButton.parent = %this;
%cancelButton.parent = %this;
// Tag optionals
if( isObject( %fileName ) )
%fileName.parent = %this;
// Finally, make sure our ReturnFiles group is empty.
if( isObject( %this.ReturnFiles ) )
%this.ReturnFiles.delete();
%this.ReturnFiles = new SimGroup();
%this.add( %this.ReturnFiles );
// If no filters
if( %this.GetFilterCount() == 0 )
%this.addfilter("*.*","All Files");
%this.PopulateFilters();
}
//-----------------------------------------------------------------------------
// File Dialog Base - Add a file extension filter to the list
//-----------------------------------------------------------------------------
function FileDialogBase::AddFilter( %this, %extension, %caption )
{
if( !isObject( %this.FileExtensions ) )
{
error("OpenFileDialog::AddFilter - FileExtensions Group does not exist!");
return false;
}
%filter = new ScriptObject()
{
extension = %extension;
caption = %caption;
};
// Add to filter list
%this.FileExtensions.add( %filter );
return %filter;
}
//-----------------------------------------------------------------------------
// File Dialog Base - Clear filters by file extension
//-----------------------------------------------------------------------------
function FileDialogBase::ClearFilters( %this )
{
if( isObject( %this.FileExtensions ) )
%this.FileExtensions.delete();
%this.FileExtensions = new SimGroup();
}
//-----------------------------------------------------------------------------
// File Dialog Base - Get number of filters
//-----------------------------------------------------------------------------
function FileDialogBase::GetFilterCount( %this )
{
if( !isObject( %this.FileExtensions ) )
return 0;
// Return Count
return %this.FileExtensions.getCount();
}
//-----------------------------------------------------------------------------
// File Dialog Base - Populate dropdown with filter options
//-----------------------------------------------------------------------------
function FileDialogBase::PopulateFilters( %this )
{
%fileExtensions = %this.FileExtensions;
if( !isObject( %fileExtensions ) )
{
error("OpenFileDialog::PopulateFilters - FileExtensions Group does not exist!");
return false;
}
%filterList = %this.findObjectByInternalName("FilterList", true);
if( !isObject( %filterList ) )
{
error("FileDialogBase::PopulateFilters - Filter List Dropdown not found!");
return false;
}
// Clear filter list
%filterList.clear();
// Populate List
for( %i = 0; %i < %fileExtensions.getCount(); %i++ )
{
// Fetch Filter Script Object
%filter = %fileExtensions.getObject( %i );
// Add item to list
%filterList.add( %filter.Caption SPC "(" SPC %filter.Extension SPC ")", %filter.getID() );
}
// Set First Item to Selected.
%filterList.setFirstSelected();
}
function FileDialogOkButton::onClick( %this )
{
if( !isObject( %this.parent ) )
{
error("FileDialogBase->FileDialogOkButton::onClick - Unable to find proper parent control! Functionality Compromised!");
return;
}
%dirTree = %this.parent.findObjectByInternalName("DirectoryTree", true);
%fileList = %this.parent.findObjectByInternalName("FileList", true);
%filterList = %this.parent.findObjectByInternalName("FilterList", true);
// Check for functionality Components.
if( !isObject( %dirTree ) || !isObject( %fileList ) || !isObject( %filterList ) )
{
error("FileDialogOkButton::onClick - Unable to find NECESSARY sibling controls.");
return;
}
//
// Fetch Path
//
%path = %dirTree.getSelectedPath();
//
// Compose File Name
//
%fileNameCtrl = %this.parent.findObjectByInternalName("FileName", true);
// FileName TextEdit?
if( isObject( %fileNameCtrl ) )
{
// Get FileName from TextEdit
%fileName = %fileNameCtrl.getText();
// Get Filter Object from dropdown list
%filterObj = %filterList.getSelected();
// Validate File Extension
if( fileExt( %fileName ) $= "" && isObject( %filterObj ) )
{
// Append Extension to FileName
%fileName = %fileName @ fileExt( %filterObj.Extension );
}
}
else
%fileName = %fileList.getSelectedFile();
//
// Build Full Path
//
%fullPath = %path @ "/" @ %fileName;
Canvas.popDialog( %this.parent );
// Callback
eval( %this.parent.SuccessCallback @ "(\"" @ %fullPath @"\");" );
%parent.SuccessCallback = 0;
//error("Ok");
}
function FileDialogCancelButton::onClick( %this )
{
Canvas.popDialog( %this.parent );
//error("Cancel");
}
function FileDialogDirectoryTree::onSelectPath( %this, %path )
{
%fileList = %this.parent.findObjectByInternalName("FileList", true);
%filterList = %this.parent.findObjectByInternalName("FilterList", true);
%filterObj = %filterList.getSelected();
if( !isObject( %filterObj ) )
%filter = "*.*";
else
%filter = %filterObj.Extension;
%fileList.setPath( %path, %filter );
}
function FileDialogFilterList::onSelect( %this, %id, %text )
{
if( !isObject( %id ) )
{
error("FileDialogFilterList::onSelect - Invalid Filter Object!");
return;
}
%fileList = %this.parent.findObjectByInternalName("FileList", true);
%fileList.setFilter( %id.Extension );
}
function FileDialogFileList::onDoubleClick( %this )
{
//error("DoubleClick");
%okButton = %this.parent.findObjectByInternalName("OkButton", true);
if( isObject( %okButton ) )
%okButton.performClick();
}
function FileDialogFileList::onSelect( %this, %listid, %file )
{
%fileNameCtrl = %this.parent.findObjectByInternalName("FileName", true);
// FileName TextEdit?
if( !isObject( %fileNameCtrl ) )
return;
// Update our file name to the one selected
%fileNameCtrl.setText( %file );
}
function FileDialogFileName::onReturn( %this )
{
//error("onReturn");
%okButton = %this.parent.findObjectByInternalName("OkButton", true);
if( isObject( %okButton ) )
%okButton.performClick();
}

View file

@ -0,0 +1,40 @@
//-----------------------------------------------------------------------------
// Copyright (c) 2012 GarageGames, LLC
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
// IN THE SOFTWARE.
//-----------------------------------------------------------------------------
exec("./fileDialogBase.ed.cs");
exec("./openFileDialog.ed.cs");
exec("./saveFileDialog.ed.cs");
exec("./saveChangesMBDlg.ed.gui");
exec("./simViewDlg.ed.gui");
exec("./colorPicker.ed.gui");
exec("./materialSelector.ed.gui");
exec("./scriptEditorDlg.ed.gui");
exec("./colladaImport.ed.gui");
exec("./EditorLoadingGui.gui");
exec("./GuiEaseEditDlg.ed.gui");
exec("./GuiEaseEditDlg.ed.cs");
exec("./guiObjectInspector.ed.cs");
exec("./uvEditor.ed.gui");
exec("./objectSelection.ed.cs");
if (isDemo())
exec("./messageBoxOKBuy.ed.gui");

View file

@ -0,0 +1,248 @@
//-----------------------------------------------------------------------------
// Copyright (c) 2012 GarageGames, LLC
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
// IN THE SOFTWARE.
//-----------------------------------------------------------------------------
// The "Object Inspector" is a useful little window for browsing and editing SimObject
// hierarchies. Be aware that there is no undo in the inspector.
//---------------------------------------------------------------------------------------------
/// Bring up a new inspector window on the given object.
function inspectObject( %object )
{
if( !isObject( %object ) )
{
error( "inspectObject: no object '" @ %object @ "'" );
return;
}
// Create a new object inspector window.
exec( "./guiObjectInspector.ed.gui" );
if( !isObject( %guiContent) )
{
error( "InspectObject: failed to create GUI from 'guiObjectInspector.ed.gui'" );
return;
}
// Initialize the inspector.
%guiContent.init( %object );
Canvas.getContent().add( %guiContent );
}
//=============================================================================================
// GuiObjectInspector
//=============================================================================================
//---------------------------------------------------------------------------------------------
function GuiObjectInspector::init( %this, %object )
{
if( !%object.isMemberOfClass( "SimSet" ) )
{
// Complete deletely the splitter and the left-side part of the inspector
// leaving only the field inspector.
%this.add( %this-->panel2 );
%this-->splitter.delete();
%this-->inspector.inspect( %object );
%this-->methodList.init( %object );
}
else
{
%treeView = %this-->treeView;
%treeView.inspectorCtrl = %this-->inspector;
%treeView.methodList = %this-->methodList;
%treeView.open( %object );
}
// Set window caption.
%caption = "Object Inspector - " @ %object.getId() @ " : " @ %object.getClassName();
%name = %object.getName();
if( %name !$= "" )
%caption = %caption @ " - " @ %name;
%this.text = %caption;
}
//---------------------------------------------------------------------------------------------
function GuiObjectInspector::onClose( %this )
{
// Delete us.
%this.schedule( 1, "delete" );
}
//=============================================================================================
// GuiObjectInspectorTree
//=============================================================================================
//---------------------------------------------------------------------------------------------
function GuiObjectInspectorTree::onSelect( %this, %object )
{
if( isObject( %object ) )
{
%this.inspectorCtrl.inspect( %object );
%this.methodList.init( %object );
}
}
//---------------------------------------------------------------------------------------------
function GuiObjectInspectorTree::onRightMouseUp( %this, %itemId, %mousePos, %object )
{
if( !isObject( GuiObjectInspectorTreePopup ) )
new PopupMenu( GuiObjectInspectorTreePopup )
{
superClass = "MenuBuilder";
isPopup = true;
item[ 0 ] = "Jump to Definition in Torsion" TAB "" TAB "EditorOpenDeclarationInTorsion( %this.object );";
object = "";
};
GuiObjectInspectorTreePopup.object = %object;
GuiObjectInspectorTreePopup.showPopup( Canvas );
}
//=============================================================================================
// GuiObjectInspectorMethodList
//=============================================================================================
//---------------------------------------------------------------------------------------------
function GuiObjectInspectorMethodList::init( %this, %object )
{
%this.clear();
%methods = %object.dumpMethods();
%count = %methods.count();
%methodsGroup = %this.insertItem( 0, "Methods" );
%parentScripted = %this.insertItem( %methodsGroup, "Scripted" );
%parentNative = %this.insertItem( %methodsGroup, "Native" );
for( %i = 0; %i < %count; %i ++ )
{
%name = %methods.getKey( %i );
%value = %methods.getValue( %i );
%prototype = getRecord( %value, 2 );
%fileName = getRecord( %value, 3 );
%lineNumber = getRecord( %value, 4 );
%usage = getRecords( %value, 5 );
%tooltip = %prototype;
if( isFile( %fileName ) )
{
%parent = %parentScripted;
%tooltip = %tooltip NL "Declared in: " @ %fileName @ ":" @ %lineNumber;
}
else
%parent = %parentNative;
%tooltip = %tooltip @ "\n\n" @ %usage;
%id = %this.insertItem( %parent, %prototype, %fileName NL %lineNumber );
%this.setItemTooltip( %id, %tooltip );
}
%methods.delete();
if( %object.isMethod( "getDebugInfo" ) )
{
%debugInfo = %object.getDebugInfo();
%count = %debugInfo.count();
%parent = %this.insertItem( 0, "Debug Info" );
for( %i = 0; %i < %count; %i ++ )
%id = %this.insertItem( %parent, %debugInfo.getKey( %i ) @ ": " @ %debugInfo.getValue( %i ) );
%debugInfo.delete();
}
%this.sort( 0, true );
}
//---------------------------------------------------------------------------------------------
function GuiObjectInspectorMethodList::onRightMouseUp( %this, %item, %mousePos )
{
%value = %this.getItemValue( %item );
if( %value $= "" )
return;
%fileName = getRecord( %value, 0 );
%lineNumber = getRecord( %value, 1 );
if( isFile( %fileName ) )
{
if( !isObject( GuiInspectorMethodListPopup ) )
new PopupMenu( GuiInspectorMethodListPopup )
{
superClass = "MenuBuilder";
isPopup = true;
item[ 0 ] = "Jump to Definition in Torsion" TAB "" TAB "EditorOpenFileInTorsion( %this.jumpFileName, %this.jumpLineNumber );";
jumpFileName = "";
jumpLineNumber = "";
};
GuiInspectorMethodListPopup.jumpFileName = %fileName;
GuiInspectorMethodListPopup.jumpLineNumber = %lineNumber;
GuiInspectorMethodListPopup.showPopup( Canvas );
}
}
//=============================================================================================
// GuiObjectInspectorTreeFilter
//=============================================================================================
//---------------------------------------------------------------------------------------------
function GuiObjectInspectorTreeFilter::onWake( %this )
{
%treeView = %this.getParent()-->TreeView;
if( isObject( %treeView ) )
%this.treeView = %treeView;
Parent::onWake( %this );
}
//=============================================================================================
// GuiObjectInspectorTreeFilter
//=============================================================================================
//---------------------------------------------------------------------------------------------
function GuiObjectInspectorTreeFilterClearButton::onWake( %this )
{
%filterText = %this.getParent()-->FilterText;
if( isObject( %filterText ) )
%this.textCtrl = %filterText;
}

View file

@ -0,0 +1,401 @@
//--- OBJECT WRITE BEGIN ---
%guiContent = new GuiWindowCollapseCtrl() {
collapseGroup = "-1";
collapseGroupNum = "-1";
resizeWidth = "1";
resizeHeight = "1";
canMove = "1";
canClose = "1";
canMinimize = "1";
canMaximize = "1";
minSize = "50 50";
closeCommand = "$ThisControl.onClose();";
edgeSnap = "1";
text = "Object Inspector";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "1";
profile = "GuiWindowProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "152 130";
extent = "658 472";
minExtent = "8 2";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "1";
class = "GuiObjectInspector";
className = "GuiObjectInspector";
new GuiSplitContainer() {
orientation = "Vertical";
splitterSize = "2";
splitPoint = "300 100";
fixedPanel = "None";
fixedSize = "100";
docking = "Client";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "0";
profile = "GuiDefaultProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "1 21";
extent = "656 448";
minExtent = "64 64";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "Splitter";
canSaveDynamicFields = "0";
new GuiPanel() {
docking = "Client";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "1";
profile = "GuiDefaultProfile";
horizSizing = "width";
vertSizing = "bottom";
position = "0 0";
extent = "298 448";
minExtent = "16 16";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "Panel1";
canSaveDynamicFields = "0";
new GuiTextEditCtrl() {
position = "2 3";
extent = "278 18";
profile = "GuiTextEditProfile";
horizSizing = "width";
vertSizing = "bottom";
superClass = "GuiTreeViewFilterText";
class = "GuiObjectInspectorTreeFilter";
internalName = "FilterText";
};
new GuiBitmapButtonCtrl() {
bitmap = "tools/gui/images/clear-icon";
groupNum = "-1";
buttonType = "PushButton";
useMouseEvents = "0";
isContainer = "0";
Profile = "GuiDefaultProfile";
HorizSizing = "left";
VertSizing = "bottom";
position = "281 4";
Extent = "17 17";
MinExtent = "8 2";
canSave = "1";
Visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
superClass = "GuiTreeViewFilterClearButton";
class = "GuiObjectInspectorTreeFilterClearButton";
};
new GuiScrollCtrl() {
willFirstRespond = "1";
hScrollBar = "dynamic";
vScrollBar = "dynamic";
lockHorizScroll = "0";
lockVertScroll = "0";
constantThumbHeight = "0";
childMargin = "0 0";
mouseWheelScrollSpeed = "-1";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "1";
profile = "GuiScrollProfile";
horizSizing = "width";
vertSizing = "height";
position = "1 22";
extent = "297 426";
minExtent = "8 2";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
new GuiTreeViewCtrl() {
tabSize = "16";
textOffset = "2";
fullRowSelect = "0";
itemHeight = "21";
destroyTreeOnSleep = "0";
mouseDragging = "0";
multipleSelections = "0";
deleteObjectAllowed = "0";
dragToItemAllowed = "0";
clearAllOnSingleSelection = "1";
showRoot = "1";
internalNamesOnly = "0";
objectNamesOnly = "0";
useInspectorTooltips = "0";
tooltipOnWidthOnly = "0";
compareToObjectID = "1";
canRenameObjects = "1";
renameInternal = "0";
isContainer = "1";
profile = "GuiTreeViewProfile";
horizSizing = "width";
vertSizing = "bottom";
position = "1 1";
extent = "166 21";
minExtent = "8 2";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "TreeView";
canSaveDynamicFields = "0";
class = "GuiObjectInspectorTree";
};
};
};
new GuiPanel() {
docking = "Client";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "1";
profile = "GuiDefaultProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "302 0";
extent = "354 448";
minExtent = "16 16";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "panel2";
canSaveDynamicFields = "0";
new GuiSplitContainer() {
orientation = "Horizontal";
splitterSize = "2";
splitPoint = "100 300";
fixedPanel = "None";
fixedSize = "100";
docking = "Client";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "0";
profile = "GuiDefaultProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "0 2";
extent = "354 448";
minExtent = "64 64";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
new GuiPanel() {
docking = "Client";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "1";
profile = "GuiDefaultProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "0 0";
extent = "354 298";
minExtent = "16 16";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "Panel1";
canSaveDynamicFields = "0";
new GuiScrollCtrl() {
willFirstRespond = "1";
hScrollBar = "alwaysOff";
vScrollBar = "dynamic";
lockHorizScroll = "0";
lockVertScroll = "0";
constantThumbHeight = "0";
childMargin = "0 0";
mouseWheelScrollSpeed = "-1";
docking = "Client";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "1";
profile = "GuiScrollProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "0 0";
extent = "354 298";
minExtent = "8 2";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
new GuiInspector() {
dividerMargin = "5";
showCustomFields = "1";
stackingType = "Vertical";
horizStacking = "Left to Right";
vertStacking = "Top to Bottom";
padding = "1";
dynamicSize = "1";
changeChildSizeToFit = "1";
changeChildPosition = "1";
isContainer = "1";
profile = "GuiInspectorProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "1 1";
extent = "337 16";
minExtent = "16 16";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "inspector";
canSaveDynamicFields = "0";
class = "GuiObjectInspectorFields";
className = "GuiObjectInspectorFields";
superClass = "EditorInspectorBase";
};
};
};
new GuiPanel() {
docking = "Client";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "1";
profile = "GuiDefaultProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "0 302";
extent = "354 146";
minExtent = "16 50";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "panel2";
canSaveDynamicFields = "0";
new GuiScrollCtrl() {
willFirstRespond = "1";
hScrollBar = "dynamic";
vScrollBar = "dynamic";
lockHorizScroll = "0";
lockVertScroll = "0";
constantThumbHeight = "0";
childMargin = "0 0";
mouseWheelScrollSpeed = "-1";
docking = "Client";
margin = "0 0 0 0";
padding = "0 0 0 0";
anchorTop = "1";
anchorBottom = "0";
anchorLeft = "1";
anchorRight = "0";
isContainer = "1";
profile = "GuiScrollProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "0 0";
extent = "354 146";
minExtent = "8 2";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
canSaveDynamicFields = "0";
new GuiTreeViewCtrl() {
tabSize = "16";
textOffset = "2";
fullRowSelect = "0";
itemHeight = "21";
destroyTreeOnSleep = "1";
mouseDragging = "0";
multipleSelections = "0";
deleteObjectAllowed = "0";
dragToItemAllowed = "0";
clearAllOnSingleSelection = "1";
showRoot = "1";
internalNamesOnly = "0";
objectNamesOnly = "0";
useInspectorTooltips = "0";
tooltipOnWidthOnly = "0";
compareToObjectID = "1";
canRenameObjects = "1";
renameInternal = "0";
isContainer = "1";
profile = "GuiTreeViewProfile";
horizSizing = "right";
vertSizing = "bottom";
position = "1 1";
extent = "109 42";
minExtent = "8 2";
canSave = "1";
visible = "1";
tooltipprofile = "GuiToolTipProfile";
hovertime = "1000";
internalName = "methodList";
canSaveDynamicFields = "0";
class = "GuiObjectInspectorMethodList";
className = "GuiObjectInspectorMethodList";
};
};
};
};
};
};
};
//--- OBJECT WRITE END ---

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 918 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 853 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 503 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 767 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 917 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 375 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 376 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 384 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 382 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 384 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 356 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 323 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 325 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 621 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 821 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 443 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 470 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 474 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 476 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 475 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 462 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 552 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 773 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 864 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 665 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 325 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 326 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 653 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 904 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 683 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 393 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 391 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 373 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 191 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 547 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 551 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 497 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 621 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 670 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 651 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 542 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 536 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 496 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 622 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 638 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 633 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 670 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 696 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 696 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 917 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 847 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 853 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 477 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 846 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 918 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 813 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 611 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 873 B

Some files were not shown because too many files have changed in this diff Show more