Browse Source

Refactored command indenting control functions

master
chrisgregan 10 years ago
parent
commit
ce9b6de524
  1. 11
      Assets/Fungus/FungusScript/Editor/SequenceEditor.cs
  2. 12
      Assets/Fungus/FungusScript/Scripts/Command.cs
  3. 10
      Assets/Fungus/FungusScript/Scripts/Commands/Else.cs
  4. 4
      Assets/Fungus/FungusScript/Scripts/Commands/End.cs
  5. 4
      Assets/Fungus/FungusScript/Scripts/Commands/EndIf.cs
  6. 4
      Assets/Fungus/FungusScript/Scripts/Commands/If.cs

11
Assets/Fungus/FungusScript/Editor/SequenceEditor.cs

@ -208,9 +208,16 @@ namespace Fungus
continue; continue;
} }
indentLevel += command.GetPreIndent(); if (command.CloseBlock())
{
indentLevel--;
}
command.indentLevel = Math.Max(indentLevel, 0); command.indentLevel = Math.Max(indentLevel, 0);
indentLevel += command.GetPostIndent();
if (command.OpenBlock())
{
indentLevel++;
}
} }
} }

12
Assets/Fungus/FungusScript/Scripts/Command.cs

@ -158,19 +158,19 @@ namespace Fungus
} }
/** /**
* Indent offset for this command. * This command starts a block of commands.
*/ */
public virtual int GetPreIndent() public virtual bool OpenBlock()
{ {
return 0; return false;
} }
/** /**
* Indent offset for subsequent commands. * This command ends a block of commands.
*/ */
public virtual int GetPostIndent() public virtual bool CloseBlock()
{ {
return 0; return false;
} }
/** /**

10
Assets/Fungus/FungusScript/Scripts/Commands/Else.cs

@ -43,15 +43,15 @@ namespace Fungus
// No matching EndIf command found, so just stop the sequence // No matching EndIf command found, so just stop the sequence
Stop(); Stop();
} }
public override int GetPreIndent() public override bool OpenBlock()
{ {
return -1; return true;
} }
public override int GetPostIndent() public override bool CloseBlock()
{ {
return 1; return true;
} }
public override Color GetButtonColor() public override Color GetButtonColor()

4
Assets/Fungus/FungusScript/Scripts/Commands/End.cs

@ -15,9 +15,9 @@ namespace Fungus
Continue(); Continue();
} }
public override int GetPreIndent() public override bool CloseBlock()
{ {
return -1; return true;
} }
public override Color GetButtonColor() public override Color GetButtonColor()

4
Assets/Fungus/FungusScript/Scripts/Commands/EndIf.cs

@ -16,9 +16,9 @@ namespace Fungus
Continue(); Continue();
} }
public override int GetPreIndent() public override bool CloseBlock()
{ {
return -1; return true;
} }
public override Color GetButtonColor() public override Color GetButtonColor()

4
Assets/Fungus/FungusScript/Scripts/Commands/If.cs

@ -235,9 +235,9 @@ namespace Fungus
return (variable == this.variable); return (variable == this.variable);
} }
public override int GetPostIndent() public override bool OpenBlock()
{ {
return 1; return true;
} }
public override Color GetButtonColor() public override Color GetButtonColor()

Loading…
Cancel
Save