Merged in GZDB r2488

This commit is contained in:
MascaraSnake 2016-01-30 00:04:41 +01:00
parent 9ccea639bf
commit e7ad3d4bb2
40 changed files with 3688 additions and 3082 deletions

Binary file not shown.

BIN
Build/ScintillaNET.3.5.dll Normal file

Binary file not shown.

View file

@ -16,6 +16,10 @@ insertcase = 0; // 0=Normal, 1=Lowercase, 2=Uppercase
lexer = 35; // CPP-style, case-insensitive lexer = 35; // CPP-style, case-insensitive
functionopen = "("; functionopen = "(";
functionclose = ")"; functionclose = ")";
codeblockopen = "{";
codeblockclose = "}";
arrayopen = "[";
arrayclose = "]";
argumentdelimiter = ","; argumentdelimiter = ",";
terminator = ";"; terminator = ";";
keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K"; keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K";

View file

@ -7,6 +7,8 @@ description = "GZDoom MODELDEF";
codepage = 0; codepage = 0;
extensions = "mdd"; extensions = "mdd";
casesensitive = false; casesensitive = false;
codeblockopen = "{";
codeblockclose = "}";
insertcase = 1; // 0=Normal, 1=Lowercase, 2=Uppercase insertcase = 1; // 0=Normal, 1=Lowercase, 2=Uppercase
lexer = 35; // CPP-style, case-insensitive lexer = 35; // CPP-style, case-insensitive
keywordhelp = "http://zdoom.org/wiki/MODELDEF"; keywordhelp = "http://zdoom.org/wiki/MODELDEF";

View file

@ -16,6 +16,10 @@ insertcase = 0; // 0=Normal, 1=Lowercase, 2=Uppercase
lexer = 35; // CPP-style, case-insensitive lexer = 35; // CPP-style, case-insensitive
functionopen = "("; functionopen = "(";
functionclose = ")"; functionclose = ")";
codeblockopen = "{";
codeblockclose = "}";
arrayopen = "[";
arrayclose = "]";
argumentdelimiter = ","; argumentdelimiter = ",";
terminator = ";"; terminator = ";";
keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K"; keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K";

View file

@ -16,6 +16,10 @@ insertcase = 0; // 0=Normal, 1=Lowercase, 2=Uppercase
lexer = 35; // CPP-style, case-insensitive lexer = 35; // CPP-style, case-insensitive
functionopen = "("; functionopen = "(";
functionclose = ")"; functionclose = ")";
codeblockopen = "{";
codeblockclose = "}";
arrayopen = "[";
arrayclose = "]";
argumentdelimiter = ","; argumentdelimiter = ",";
terminator = ";"; terminator = ";";
keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K"; keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K";
@ -24,12 +28,12 @@ scripttype = 1; //0 = unknown script, 1 = acc, 2 = modeldef, 3 = decorate
keywords keywords
{ {
#Define = "#Define identifier expression"; #define = "#Define identifier expression";
#EncryptStrings = "#EncryptStrings"; #encryptstrings = "#EncryptStrings";
#Import = "#Import"; #import = "#Import";
#Include = "#Include"; #include = "#Include";
#LibDefine = "#LibDefine identifier expression"; #libdefine = "#LibDefine identifier expression";
#Library = "#Library"; #library = "#Library";
#NoCompact = "#NoCompact"; #NoCompact = "#NoCompact";
#NoWadAuthor = "#NoWadAuthor"; #NoWadAuthor = "#NoWadAuthor";
#WadAuthor = "#WadAuthor"; #WadAuthor = "#WadAuthor";
@ -59,11 +63,11 @@ keywords
//BlueScore = "BlueScore()"; //BlueScore = "BlueScore()";
//BlueTeamCount = "BlueTeamCount()"; //BlueTeamCount = "BlueTeamCount()";
//BlueTeamScore = "BlueTeamScore()"; //BlueTeamScore = "BlueTeamScore()";
Bool = "Bool expression"; bool = "Bool expression";
Break = "Break"; break = "Break";
CancelFade = "void CancelFade(void)\nIf either FadeTo or FadeRange is currently in progress,\nCancelFade stops it and turns off the palette flash."; CancelFade = "void CancelFade(void)\nIf either FadeTo or FadeRange is currently in progress,\nCancelFade stops it and turns off the palette flash.";
CanRaiseActor = "bool CanRaiseActor(int tid)\nChecks to see if the actor or actors with the specified tid are viable for resurrection.\nIf tid is 0, the check is done on the activator of the script."; CanRaiseActor = "bool CanRaiseActor(int tid)\nChecks to see if the actor or actors with the specified tid are viable for resurrection.\nIf tid is 0, the check is done on the activator of the script.";
Case = "Case expression"; case = "Case expression";
Ceiling_CrushAndRaise = "Ceiling_CrushAndRaise(tag, speed, crush, crushmode)"; Ceiling_CrushAndRaise = "Ceiling_CrushAndRaise(tag, speed, crush, crushmode)";
Ceiling_CrushAndRaiseA = "Ceiling_CrushAndRaiseA(tag, dspeed, uspeed, crush, crushmode)"; Ceiling_CrushAndRaiseA = "Ceiling_CrushAndRaiseA(tag, dspeed, uspeed, crush, crushmode)";
Ceiling_CrushAndRaiseDist = "Ceiling_CrushAndRaiseDist(tag, dist, speed, damage, crushmode)"; Ceiling_CrushAndRaiseDist = "Ceiling_CrushAndRaiseDist(tag, dist, speed, damage, crushmode)";
@ -113,16 +117,16 @@ keywords
ClearInventory = "void ClearInventory(void)\nClears the player's inventory of weapons, ammo, armor and usable items."; ClearInventory = "void ClearInventory(void)\nClears the player's inventory of weapons, ammo, armor and usable items.";
ClearLineSpecial = "void ClearLineSpecial(void)\nClears the special of the line that activated the script."; ClearLineSpecial = "void ClearLineSpecial(void)\nClears the special of the line that activated the script.";
//ConsoleCommand = "void ConsoleCommand(str command)"; //ConsoleCommand = "void ConsoleCommand(str command)";
Const = "const"; const = "const";
Continue = "continue"; continue = "continue";
cos = "fixed Cos(int angle)"; Cos = "fixed Cos(int angle)";
CreateTranslation = "void CreateTranslation(int transnumber, a:b=c:d, ...)"; CreateTranslation = "void CreateTranslation(int transnumber, a:b=c:d, ...)";
DamageThing = "DamageThing(amount, mod)"; DamageThing = "DamageThing(amount, mod)";
Death = "Script expression Death"; DEATH = "Script expression Death";
Default = "default:"; default = "default:";
Delay = "void Delay(int tics)"; Delay = "void Delay(int tics)";
Disconnect = "Script expression Disconnect"; DISCONNECT = "Script expression Disconnect";
Do = "do"; do = "do";
Door_Animated = "Door_Animated(tag, speed, delay, lock)"; Door_Animated = "Door_Animated(tag, speed, delay, lock)";
Door_Close = "Door_Close(tag, speed, lighttag)"; Door_Close = "Door_Close(tag, speed, lighttag)";
Door_CloseWaitOpen = "Door_CloseWaitOpen(tag, speed, delay, lighttag)"; Door_CloseWaitOpen = "Door_CloseWaitOpen(tag, speed, delay, lighttag)";
@ -134,8 +138,8 @@ keywords
Elevator_LowerToNearest = "Elevator_LowerToNearest(tag, speed)"; Elevator_LowerToNearest = "Elevator_LowerToNearest(tag, speed)";
Elevator_MoveToFloor = "Elevator_MoveToFloor(tag, speed)"; Elevator_MoveToFloor = "Elevator_MoveToFloor(tag, speed)";
Elevator_RaiseToNearest = "Elevator_RaiseToNearest(tag, speed)"; Elevator_RaiseToNearest = "Elevator_RaiseToNearest(tag, speed)";
Else = "Else"; else = "Else";
Enter = "Script expression Enter"; ENTER = "Script expression Enter";
Exit_Normal = "Exit_Normal(pos)"; Exit_Normal = "Exit_Normal(pos)";
Exit_Secret = "Exit_Secret(pos)"; Exit_Secret = "Exit_Secret(pos)";
FadeRange = "void FadeRange(int red1, int green1, int blue1, fixed amount1, int red2, int green2, int blue2, fixed amount2, fixed seconds)\nSets the current flash to the first color set and then fades it to the second color set over the specified number of seconds."; FadeRange = "void FadeRange(int red1, int green1, int blue1, fixed amount1, int red2, int green2, int blue2, fixed amount2, fixed seconds)\nSets the current flash to the first color set and then fades it to the second color set over the specified number of seconds.";
@ -170,10 +174,10 @@ keywords
FloorAndCeiling_LowerByValue = "FloorAndCeiling_LowerByValue(tag, speed, height)"; FloorAndCeiling_LowerByValue = "FloorAndCeiling_LowerByValue(tag, speed, height)";
FloorAndCeiling_LowerRaise = "FloorAndCeiling_LowerRaise(tag, fspeed, cspeed, boomemu)"; FloorAndCeiling_LowerRaise = "FloorAndCeiling_LowerRaise(tag, fspeed, cspeed, boomemu)";
FloorAndCeiling_RaiseByValue = "FloorAndCeiling_RaiseByValue(tag, speed, height)"; FloorAndCeiling_RaiseByValue = "FloorAndCeiling_RaiseByValue(tag, speed, height)";
For = "for(initialization, condition, iteration)"; for = "for(initialization, condition, iteration)";
ForceField = "ForceField"; ForceField = "ForceField";
FS_Execute = "FS_Execute(script, side, keynum, message)"; FS_Execute = "FS_Execute(script, side, keynum, message)";
Function = "function void expression(void)"; function = "function void expression(void)";
GameSkill = "int GameSkill(void)"; GameSkill = "int GameSkill(void)";
GameType = "int GameType(void)"; GameType = "int GameType(void)";
Generic_Ceiling = "Generic_Ceiling(tag, speed, height, target, flag)"; Generic_Ceiling = "Generic_Ceiling(tag, speed, height, target, flag)";
@ -242,8 +246,8 @@ keywords
HealThing = "HealThing(amount)"; HealThing = "HealThing(amount)";
HudMessage = "void hudmessage(s:text; int type, int id, int color, fixed x, fixed y, fixed holdTime)"; HudMessage = "void hudmessage(s:text; int type, int id, int color, fixed x, fixed y, fixed holdTime)";
HudMessageBold = "void HudMessageBold(s:text; int type, int id, int color, fixed x, fixed y, fixed holdTime)"; HudMessageBold = "void HudMessageBold(s:text; int type, int id, int color, fixed x, fixed y, fixed holdTime)";
If = "if(expression)"; if = "if(expression)";
Int = "int expression"; int = "int expression";
//IsMultiplayer = "int IsMultiplayer(void)"; //IsMultiplayer = "int IsMultiplayer(void)";
//IsOneFlagCTF = "int IsOneFlagCTF(void)"; //IsOneFlagCTF = "int IsOneFlagCTF(void)";
IsPointerEqual = "bool IsPointerEqual(int ptr_select1, int ptr_select2[, int tid1[, int tid2]])"; IsPointerEqual = "bool IsPointerEqual(int ptr_select1, int ptr_select2[, int tid1[, int tid2]])";
@ -260,7 +264,7 @@ keywords
Light_Stop = "Light_Stop(tag)"; Light_Stop = "Light_Stop(tag)";
Light_Strobe = "Light_Strobe(tag, upper, lower, u-tics, l-tics)"; Light_Strobe = "Light_Strobe(tag, upper, lower, u-tics, l-tics)";
Light_StrobeDoom = "Light_StrobeDoom(tag, u-tics, l-tics)"; Light_StrobeDoom = "Light_StrobeDoom(tag, u-tics, l-tics)";
Lightning = "Script expression Lightning"; LIGHTNING = "Script expression Lightning";
LineAttack = "LineAttack(int tid, fixed angle, fixed pitch, int damage[, str pufftype = 'BulletPuff'[, str damagetype = 'None'[, fixed range = 2048[, int flags = 0[, int pufftid = 0]]]]])\nFires a hitscan attack. If tid is 0, the activator of the script is the source of the attack."; LineAttack = "LineAttack(int tid, fixed angle, fixed pitch, int damage[, str pufftype = 'BulletPuff'[, str damagetype = 'None'[, fixed range = 2048[, int flags = 0[, int pufftid = 0]]]]])\nFires a hitscan attack. If tid is 0, the activator of the script is the source of the attack.";
Line_AlignCeiling = "Line_AlignCeiling(lineid, side)"; Line_AlignCeiling = "Line_AlignCeiling(lineid, side)";
Line_AlignFloor = "Line_AlignFloor(lineid, side)"; Line_AlignFloor = "Line_AlignFloor(lineid, side)";
@ -273,11 +277,11 @@ keywords
Log = "void Log(type:expression)\nLog will print something in the log area of the screen (top left), as well as logging it to the console.\nIt uses the same parameter format as the Print function."; Log = "void Log(type:expression)\nLog will print something in the log area of the screen (top left), as well as logging it to the console.\nIt uses the same parameter format as the Print function.";
MorphActor = "int MorphActor(int tid, [str playerclass, [str monsterclass, [int duration, [int style, [str morphflash, [str unmorphflash]]]]]])"; MorphActor = "int MorphActor(int tid, [str playerclass, [str monsterclass, [int duration, [int style, [str morphflash, [str unmorphflash]]]]]])";
NamedScriptWait = "void NamedScriptWait(str script)"; NamedScriptWait = "void NamedScriptWait(str script)";
Net = "Script expression Net"; NET = "Script expression Net";
NoiseAlert = "NoiseAlert(target_tid, emiter_tid)"; NoiseAlert = "NoiseAlert(target_tid, emiter_tid)";
Open = "Script expression Open"; OPEN = "Script expression Open";
PickActor = "bool PickActor(int source_tid, fixed angle, fixed pitch, fixed distance, int tid[, int actorMask = MF_SHOOTABLE[, int wallMask = ML_BLOCKEVERYTHING | ML_BLOCKHITSCAN[, bool forcetid = false]]])"; PickActor = "bool PickActor(int source_tid, fixed angle, fixed pitch, fixed distance, int tid[, int actorMask = MF_SHOOTABLE[, int wallMask = ML_BLOCKEVERYTHING | ML_BLOCKHITSCAN[, bool forcetid = false]]])";
Pickup = "Script expression Pickup"; //PICKUP = "Script expression Pickup";
Pillar_Build = "Pillar_Build(tag, speed, height)"; Pillar_Build = "Pillar_Build(tag, speed, height)";
Pillar_BuildAndCrush = "Pillar_BuildAndCrush(tag, speed, height, crush, crushmode)"; Pillar_BuildAndCrush = "Pillar_BuildAndCrush(tag, speed, height, crush, crushmode)";
Pillar_Open = "Pillar_Open(tag, speed, fdist, cdist)"; Pillar_Open = "Pillar_Open(tag, speed, fdist, cdist)";
@ -324,10 +328,10 @@ keywords
Radius_Quake2 = "void Radius_Quake2(int tid, int intensity, int duration, int damrad, int tremrad, str sound)"; Radius_Quake2 = "void Radius_Quake2(int tid, int intensity, int duration, int damrad, int tremrad, str sound)";
Random = "int Random(int min, int max)"; Random = "int Random(int min, int max)";
ReplaceTextures = "void ReplaceTextures(str oldtexturename, str newtexturename[, int flags])\nReplaces all occurences of oldtexturename with newtexturename.\nNOT_ flags can be used."; ReplaceTextures = "void ReplaceTextures(str oldtexturename, str newtexturename[, int flags])\nReplaces all occurences of oldtexturename with newtexturename.\nNOT_ flags can be used.";
Respawn = "Script expression Respawn"; RESPAWN = "Script expression Respawn";
Restart = "Restart"; Restart = "Restart";
Return = "Return"; return = "Return";
Script = "Script expression"; script = "Script expression";
ScriptWait = "void ScriptWait(int script)"; ScriptWait = "void ScriptWait(int script)";
Scroll_Ceiling = "Scroll_Ceiling(tag, x-move, y-move, unused)"; Scroll_Ceiling = "Scroll_Ceiling(tag, x-move, y-move, unused)";
Scroll_Floor = "Scroll_Floor(tag, x-move, y-move, type)"; Scroll_Floor = "Scroll_Floor(tag, x-move, y-move, type)";
@ -400,7 +404,7 @@ keywords
SetUserCVarString = "bool SetUserCVarString(int playernumber, str cvar, str value)\nSets the console variable of a particular player.\nOnly mod-defined console variables through CVARINFO can be changed by using this function.\nReturns FALSE if cvar is invalid, it is not writable, or the player doesn't exist."; SetUserCVarString = "bool SetUserCVarString(int playernumber, str cvar, str value)\nSets the console variable of a particular player.\nOnly mod-defined console variables through CVARINFO can be changed by using this function.\nReturns FALSE if cvar is invalid, it is not writable, or the player doesn't exist.";
SetUserVariable = "void SetUserVariable(int tid, str name, int value)\nSets one of the affected actor's user variables."; SetUserVariable = "void SetUserVariable(int tid, str name, int value)\nSets one of the affected actor's user variables.";
SetWeapon = "bool SetWeapon(str weaponname)\nSets the player's current weapon to weaponname.\nReturns TRUE if the weapon was set successfully, and FALSE if not."; SetWeapon = "bool SetWeapon(str weaponname)\nSets the player's current weapon to weaponname.\nReturns TRUE if the weapon was set successfully, and FALSE if not.";
sin = "fixed Sin(int angle)"; Sin = "fixed Sin(int angle)";
SoundSequence = "void SoundSequence(str sndseq)\nPlays a sound sequence defined in SNDSEQ lump."; SoundSequence = "void SoundSequence(str sndseq)\nPlays a sound sequence defined in SNDSEQ lump.";
SoundSequenceOnActor = "void SoundSequenceOnActor(int tid, str sndseq)\nPlays a sound sequence defined in SNDSEQ lump."; SoundSequenceOnActor = "void SoundSequenceOnActor(int tid, str sndseq)\nPlays a sound sequence defined in SNDSEQ lump.";
SoundSequenceOnPolyObj = "void SoundSequenceOnPolyobj(int polynum, str sndseq)\nPlays a sound sequence defined in SNDSEQ lump."; SoundSequenceOnPolyObj = "void SoundSequenceOnPolyobj(int polynum, str sndseq)\nPlays a sound sequence defined in SNDSEQ lump.";
@ -435,7 +439,7 @@ keywords
StrRight = "str StrRight(str string, int length)\nCreates a new string containing the length last characters of string.\nIf string does not exist, an empty string is returned.\nIf string is shorter than length characters, the entire string is returned."; StrRight = "str StrRight(str string, int length)\nCreates a new string containing the length last characters of string.\nIf string does not exist, an empty string is returned.\nIf string is shorter than length characters, the entire string is returned.";
Suspend = "Suspend"; Suspend = "Suspend";
SwapActorTeleFog = "int SwapActorTeleFog(int tid)"; SwapActorTeleFog = "int SwapActorTeleFog(int tid)";
Switch = "Switch(expression)"; switch = "Switch(expression)";
TagWait = "void TagWait(int tag)"; TagWait = "void TagWait(int tag)";
TakeActorInventory = "void TakeActorInventory(int tid, str inventory_item, int amount)\nThis function will take the amount of items from the specified actor.\nTakeActorInventory can remove items that are flagged as undroppable."; TakeActorInventory = "void TakeActorInventory(int tid, str inventory_item, int amount)\nThis function will take the amount of items from the specified actor.\nTakeActorInventory can remove items that are flagged as undroppable.";
TakeInventory = "void TakeInventory(str inventory_item, int amount)\nThis function will take the number of items specified from the activator.\nTakeInventory can remove items that are flagged as undroppable."; TakeInventory = "void TakeInventory(str inventory_item, int amount)\nThis function will take the number of items specified from the activator.\nTakeInventory can remove items that are flagged as undroppable.";
@ -482,19 +486,19 @@ keywords
Timer = "int Timer(void)"; Timer = "int Timer(void)";
TranslucentLine = "TranslucentLine(lineid, amount, additive, moreflags)"; TranslucentLine = "TranslucentLine(lineid, amount, additive, moreflags)";
UniqueTID = "int UniqueTID([int tid[, int limit]])"; UniqueTID = "int UniqueTID([int tid[, int limit]])";
Unloading = "Script expression Unloading"; UNLOADING = "Script expression Unloading";
UnMorphActor = "int UnMorphActor(int tid[, bool force])"; UnMorphActor = "int UnMorphActor(int tid[, bool force])";
Until = "Until(expression)"; until = "Until(expression)";
UseActorInventory = "int UseActorInventory(int tid, str classname)\nForces the actor(s) with the specified tid to use an item from their inventory, if they have one.\nReturns TRUE if the item was used successfully."; UseActorInventory = "int UseActorInventory(int tid, str classname)\nForces the actor(s) with the specified tid to use an item from their inventory, if they have one.\nReturns TRUE if the item was used successfully.";
UseInventory = "int UseInventory(str classname)\nForces the activator to use the specified inventory item, if he has it.\nReturns TRUE if the item was used successfully."; UseInventory = "int UseInventory(str classname)\nForces the activator to use the specified inventory item, if he has it.\nReturns TRUE if the item was used successfully.";
UsePuzzleItem = "UsePuzzleItem(item, script, arg1, arg2, arg3)"; UsePuzzleItem = "UsePuzzleItem(item, script, arg1, arg2, arg3)";
VectorAngle = "fixed VectorAngle(int x, int y)"; VectorAngle = "fixed VectorAngle(int x, int y)";
VectorLength = "int VectorLength(int x, int y)"; VectorLength = "int VectorLength(int x, int y)";
Void = "void"; void = "void";
Warp = "bool Warp(int destinationtid, fixed xofs, fixed yofs, fixed zofs, int angle, int flags[, str success_state[, bool exactstate[, fixed heightoffset]]])"; Warp = "bool Warp(int destinationtid, fixed xofs, fixed yofs, fixed zofs, int angle, int flags[, str success_state[, bool exactstate[, fixed heightoffset]]])";
While = "while(expression)"; while = "while(expression)";
WhiteReturn = "Script expression WhiteReturn"; //WHITERETURN = "Script expression WhiteReturn";
World = "World Int expression:identifier"; world = "World Int expression:identifier";
} }
constants constants

View file

@ -11,6 +11,10 @@ insertcase = 0; // 0=Normal, 1=Lowercase, 2=Uppercase
lexer = 35; lexer = 35;
functionopen = "("; functionopen = "(";
functionclose = ")"; functionclose = ")";
codeblockopen = "{";
codeblockclose = "}";
arrayopen = "[";
arrayclose = "]";
argumentdelimiter = ","; argumentdelimiter = ",";
terminator = ";"; terminator = ";";
keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K"; keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K";
@ -127,7 +131,7 @@ keywords
A_CheckFloor = "A_CheckFloor(int offset OR str state)"; A_CheckFloor = "A_CheckFloor(int offset OR str state)";
A_CheckFlag = "A_CheckFlag(str flagname, state label[, int check_pointer = AAPTR_DEFAULT])"; A_CheckFlag = "A_CheckFlag(str flagname, state label[, int check_pointer = AAPTR_DEFAULT])";
A_CheckLOF = "A_CheckLOF(state jump[, int flags = 0[, float range = 0.0[, float minrange = 0.0[, float angle = 0.0[, float pitch = 0.0[, float offsetheight = 0.0[, float offsetwidth = 0.0[, int ptr_target = AAPTR_DEFAULT]]]]]]]])"; A_CheckLOF = "A_CheckLOF(state jump[, int flags = 0[, float range = 0.0[, float minrange = 0.0[, float angle = 0.0[, float pitch = 0.0[, float offsetheight = 0.0[, float offsetwidth = 0.0[, int ptr_target = AAPTR_DEFAULT]]]]]]]])";
A_CheckProximity = "A_CheckProximity(str \"jump\", str classname, float distance[, int count = 1[, int flags = 0[, int pointer]]])"; A_CheckProximity = "A_CheckProximity(str jump, str classname, float distance[, int count = 1[, int flags = 0[, int pointer = AAPTR_DEFAULT]]])";
A_CheckRange = "A_CheckRange(float distance, int offset OR str state[, bool 2d_check])"; A_CheckRange = "A_CheckRange(float distance, int offset OR str state[, bool 2d_check])";
A_CheckSight = "A_CheckSight(int offset OR str state)"; A_CheckSight = "A_CheckSight(int offset OR str state)";
A_CheckSightOrRange = "A_CheckSightOrRange(float distance, int offset OR str state[, bool 2d_check])"; A_CheckSightOrRange = "A_CheckSightOrRange(float distance, int offset OR str state[, bool 2d_check])";
@ -1204,6 +1208,13 @@ constants
CPXF_DEADONLY; CPXF_DEADONLY;
CPXF_LESSOREQUAL; CPXF_LESSOREQUAL;
CPXF_EXACT; CPXF_EXACT;
CPXF_CHECKSIGHT;
CPXF_SETTARGET;
CPXF_SETMASTER;
CPXF_SETTRACER;
CPXF_FARTHEST;
CPXF_CLOSEST;
CPXF_SETONPTR;
//A_FaceTraget/Master/Tracer flags //A_FaceTraget/Master/Tracer flags
FAF_BOTTOM; FAF_BOTTOM;
FAF_MIDDLE; FAF_MIDDLE;

View file

@ -9,6 +9,8 @@ extensions = "txt";
casesensitive = false; casesensitive = false;
insertcase = 1; // 0=Normal, 1=Lowercase, 2=Uppercase insertcase = 1; // 0=Normal, 1=Lowercase, 2=Uppercase
lexer = 35; // CPP-style, case-insensitive lexer = 35; // CPP-style, case-insensitive
codeblockopen = "{";
codeblockclose = "}";
terminator = ";"; terminator = ";";
keywords keywords

View file

@ -16,6 +16,10 @@ insertcase = 0; // 0=Normal, 1=Lowercase, 2=Uppercase
lexer = 35; // CPP-style, case-insensitive lexer = 35; // CPP-style, case-insensitive
functionopen = "("; functionopen = "(";
functionclose = ")"; functionclose = ")";
codeblockopen = "{";
codeblockclose = "}";
arrayopen = "[";
arrayclose = "]";
argumentdelimiter = ","; argumentdelimiter = ",";
terminator = ";"; terminator = ";";
keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K"; keywordhelp = "http://www.zdoom.org/wiki/index.php?title=%K";

View file

@ -0,0 +1,3 @@
switch ([EP])[LB]{
}

View file

@ -305,6 +305,14 @@ colors
color46 = -16776961; color46 = -16776961;
color47 = -15671297; color47 = -15671297;
color48 = -16720128; color48 = -16720128;
color49 = -16711936;
color50 = -16711681;
color51 = -65536;
color52 = -8355712;
color53 = -1;
color54 = -13395457;
color55 = -6089451;
color56 = -9868951;
} }

View file

@ -44,7 +44,7 @@ Source: Updater.ini; DestDir: {app}; Flags: ignoreversion
Source: Refmanual.chm; DestDir: {app}; Flags: ignoreversion Source: Refmanual.chm; DestDir: {app}; Flags: ignoreversion
Source: DevIL.dll; DestDir: {app}; Flags: ignoreversion Source: DevIL.dll; DestDir: {app}; Flags: ignoreversion
Source: SharpCompress.3.5.dll; DestDir: {app}; Flags: ignoreversion Source: SharpCompress.3.5.dll; DestDir: {app}; Flags: ignoreversion
Source: Scintilla.dll; DestDir: {app}; Flags: ignoreversion Source: ScintillaNET.3.5.dll; DestDir: {app}; Flags: ignoreversion
Source: SlimDX.dll; DestDir: {app}; Flags: ignoreversion Source: SlimDX.dll; DestDir: {app}; Flags: ignoreversion
Source: GPL.txt; DestDir: {app}; Flags: ignoreversion Source: GPL.txt; DestDir: {app}; Flags: ignoreversion
Source: Compilers\*; DestDir: {app}\Compilers; Flags: ignoreversion recursesubdirs Source: Compilers\*; DestDir: {app}\Compilers; Flags: ignoreversion recursesubdirs

View file

@ -121,20 +121,10 @@
</Compile> </Compile>
<Compile Include="Controls\ArgumentBox.Designer.cs"> <Compile Include="Controls\ArgumentBox.Designer.cs">
<DependentUpon>ArgumentBox.cs</DependentUpon> <DependentUpon>ArgumentBox.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="Controls\ScriptEditorControl.cs">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="Controls\ScriptEditorControl.Designer.cs">
<DependentUpon>ScriptEditorControl.cs</DependentUpon>
</Compile>
<Compile Include="Controls\ScriptDocumentTab.cs"> <Compile Include="Controls\ScriptDocumentTab.cs">
<SubType>Component</SubType> <SubType>Component</SubType>
</Compile> </Compile>
<Compile Include="Controls\ScintillaConstants.cs" />
<Compile Include="Controls\ScintillaControl.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="Controls\ScriptEditorPanel.cs"> <Compile Include="Controls\ScriptEditorPanel.cs">
<SubType>UserControl</SubType> <SubType>UserControl</SubType>
</Compile> </Compile>
@ -539,6 +529,9 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Reference Include="JetBrains.Profiler.Core.Api, Version=1.3.1661.20096, Culture=neutral, PublicKeyToken=1010a0d8d6380325" Condition=" '$(Configuration)|$(Platform)' == 'Debug + Profiler|x86' Or '$(Configuration)|$(Platform)' == 'Release + Profiler|x86' " /> <Reference Include="JetBrains.Profiler.Core.Api, Version=1.3.1661.20096, Culture=neutral, PublicKeyToken=1010a0d8d6380325" Condition=" '$(Configuration)|$(Platform)' == 'Debug + Profiler|x86' Or '$(Configuration)|$(Platform)' == 'Release + Profiler|x86' " />
<Reference Include="ScintillaNET.3.5, Version=3.5.6.0, Culture=neutral, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="SharpCompress.3.5, Version=0.11.2.0, Culture=neutral, processorArchitecture=x86"> <Reference Include="SharpCompress.3.5, Version=0.11.2.0, Culture=neutral, processorArchitecture=x86">
<Private>False</Private> <Private>False</Private>
</Reference> </Reference>
@ -710,7 +703,9 @@
<None Include="Resources\zonebuilder.png" /> <None Include="Resources\zonebuilder.png" />
<None Include="Resources\ZoneBuilder.bmp" /> <None Include="Resources\ZoneBuilder.bmp" />
<None Include="app.manifest" /> <None Include="app.manifest" />
<None Include="Resources\ScriptSnippet.xpm" /> <EmbeddedResource Include="Controls\ScriptEditorControl.resx">
<DependentUpon>ScriptEditorControl.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Resources\SkySphere.md3" /> <EmbeddedResource Include="Resources\SkySphere.md3" />
<None Include="Resources\ThingStatistics.png" /> <None Include="Resources\ThingStatistics.png" />
<None Include="Resources\Copy.png" /> <None Include="Resources\Copy.png" />
@ -777,6 +772,12 @@
</Compile> </Compile>
<Compile Include="Controls\PasteOptionsControl.Designer.cs"> <Compile Include="Controls\PasteOptionsControl.Designer.cs">
<DependentUpon>PasteOptionsControl.cs</DependentUpon> <DependentUpon>PasteOptionsControl.cs</DependentUpon>
</Compile>
<Compile Include="Controls\ScriptEditorControl.cs">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="Controls\ScriptEditorControl.designer.cs">
<DependentUpon>ScriptEditorControl.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="Controls\SectorSlopeControl.cs"> <Compile Include="Controls\SectorSlopeControl.cs">
<SubType>UserControl</SubType> <SubType>UserControl</SubType>
@ -1140,6 +1141,13 @@
<None Include="Resources\ModelDisabled.png" /> <None Include="Resources\ModelDisabled.png" />
<None Include="Resources\ModelFiltered.png" /> <None Include="Resources\ModelFiltered.png" />
<Content Include="Resources\Model_selected.png" /> <Content Include="Resources\Model_selected.png" />
<None Include="Resources\TextWhitespace.png" />
<None Include="Resources\TextIndent.png" />
<None Include="Resources\TextUnindent.png" />
<None Include="Resources\ScriptSnippet.png" />
<None Include="Resources\ScriptKeyword.png" />
<None Include="Resources\ScriptError.png" />
<None Include="Resources\ScriptConstant.png" />
<None Include="Resources\Sky.png" /> <None Include="Resources\Sky.png" />
<None Include="Resources\Update.png" /> <None Include="Resources\Update.png" />
<None Include="Resources\Reload.png" /> <None Include="Resources\Reload.png" />
@ -1213,9 +1221,6 @@
<Compile Include="Windows\PreferencesController.cs" /> <Compile Include="Windows\PreferencesController.cs" />
<None Include="Resources\Script2.png" /> <None Include="Resources\Script2.png" />
<None Include="Resources\ScriptCompile.png" /> <None Include="Resources\ScriptCompile.png" />
<None Include="Resources\ScriptConstant.xpm" />
<None Include="Resources\ScriptError.xpm" />
<None Include="Resources\ScriptKeyword.xpm" />
<None Include="Resources\ScriptPalette.png" /> <None Include="Resources\ScriptPalette.png" />
<None Include="Resources\SaveAll.png" /> <None Include="Resources\SaveAll.png" />
<None Include="Resources\SaveScript.png" /> <None Include="Resources\SaveScript.png" />
@ -1231,10 +1236,6 @@
<None Include="Resources\ViewTextureFloor.png" /> <None Include="Resources\ViewTextureFloor.png" />
<None Include="Resources\ViewNormal.png" /> <None Include="Resources\ViewNormal.png" />
<None Include="Resources\KnownTextureSet.png" /> <None Include="Resources\KnownTextureSet.png" />
<EmbeddedResource Include="Controls\ScriptEditorControl.resx">
<SubType>Designer</SubType>
<DependentUpon>ScriptEditorControl.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Resources\Hourglass3D.png" /> <EmbeddedResource Include="Resources\Hourglass3D.png" />
<None Include="Resources\Failed.png" /> <None Include="Resources\Failed.png" />
<None Include="Resources\Grid2_arrowup.png" /> <None Include="Resources\Grid2_arrowup.png" />

View file

@ -67,7 +67,8 @@ namespace CodeImp.DoomBuilder.Config
private bool scriptfontbold; private bool scriptfontbold;
private bool scriptontop; private bool scriptontop;
private bool scriptautoindent; private bool scriptautoindent;
private bool snippetsallmanstyle; //mxd private bool scriptusetabs; //mxd
private bool snippetsallmanstyle; //mxd
private string screenshotspath; //mxd private string screenshotspath; //mxd
private int scripttabwidth; private int scripttabwidth;
private int previewimagesize; private int previewimagesize;
@ -167,7 +168,8 @@ namespace CodeImp.DoomBuilder.Config
public int ZoomFactor { get { return zoomfactor; } internal set { zoomfactor = value; } } public int ZoomFactor { get { return zoomfactor; } internal set { zoomfactor = value; } }
public bool ShowErrorsWindow { get { return showerrorswindow; } internal set { showerrorswindow = value; } } public bool ShowErrorsWindow { get { return showerrorswindow; } internal set { showerrorswindow = value; } }
public bool AnimateVisualSelection { get { return animatevisualselection; } internal set { animatevisualselection = value; } } public bool AnimateVisualSelection { get { return animatevisualselection; } internal set { animatevisualselection = value; } }
public int ScriptTabWidth { get { return scripttabwidth; } internal set { scripttabwidth = value; } } public bool ScriptUseTabs { get { return scriptusetabs; } internal set { scriptusetabs = value; } } //mxd
public int ScriptTabWidth { get { return scripttabwidth; } internal set { scripttabwidth = value; } }
public bool ScriptAutoIndent { get { return scriptautoindent; } internal set { scriptautoindent = value; } } public bool ScriptAutoIndent { get { return scriptautoindent; } internal set { scriptautoindent = value; } }
public bool SnippetsAllmanStyle { get { return snippetsallmanstyle; } internal set { snippetsallmanstyle = value; } } //mxd public bool SnippetsAllmanStyle { get { return snippetsallmanstyle; } internal set { snippetsallmanstyle = value; } } //mxd
internal string ScreenshotsPath { get { return screenshotspath; } set { screenshotspath = value; } } //mxd internal string ScreenshotsPath { get { return screenshotspath; } set { screenshotspath = value; } } //mxd
@ -277,14 +279,15 @@ namespace CodeImp.DoomBuilder.Config
movespeed = cfg.ReadSetting("movespeed", 100); movespeed = cfg.ReadSetting("movespeed", 100);
viewdistance = cfg.ReadSetting("viewdistance", 3000.0f); viewdistance = cfg.ReadSetting("viewdistance", 3000.0f);
invertyaxis = cfg.ReadSetting("invertyaxis", false); invertyaxis = cfg.ReadSetting("invertyaxis", false);
scriptfontname = cfg.ReadSetting("scriptfontname", "Lucida Console"); scriptfontname = cfg.ReadSetting("scriptfontname", "Courier New");
scriptfontsize = cfg.ReadSetting("scriptfontsize", 10); scriptfontsize = cfg.ReadSetting("scriptfontsize", 10);
scriptfontbold = cfg.ReadSetting("scriptfontbold", false); scriptfontbold = cfg.ReadSetting("scriptfontbold", false);
scriptautoindent = cfg.ReadSetting("scriptautoindent", true); scriptautoindent = cfg.ReadSetting("scriptautoindent", true);
snippetsallmanstyle = cfg.ReadSetting("snippetsallmanstyle", false); //mxd snippetsallmanstyle = cfg.ReadSetting("snippetsallmanstyle", false); //mxd
screenshotspath = cfg.ReadSetting("screenshotspath", General.DefaultScreenshotsPath); //mxd screenshotspath = cfg.ReadSetting("screenshotspath", General.DefaultScreenshotsPath); //mxd
scriptontop = cfg.ReadSetting("scriptontop", true); scriptontop = cfg.ReadSetting("scriptontop", true);
scripttabwidth = cfg.ReadSetting("scripttabwidth", 4); scriptusetabs = cfg.ReadSetting("scriptusetabs", true); //mxd
scripttabwidth = cfg.ReadSetting("scripttabwidth", 4);
previewimagesize = cfg.ReadSetting("previewimagesize", 1); previewimagesize = cfg.ReadSetting("previewimagesize", 1);
autoscrollspeed = cfg.ReadSetting("autoscrollspeed", 0); autoscrollspeed = cfg.ReadSetting("autoscrollspeed", 0);
zoomfactor = cfg.ReadSetting("zoomfactor", 3); zoomfactor = cfg.ReadSetting("zoomfactor", 3);
@ -381,7 +384,8 @@ namespace CodeImp.DoomBuilder.Config
cfg.WriteSetting("scriptfontsize", scriptfontsize); cfg.WriteSetting("scriptfontsize", scriptfontsize);
cfg.WriteSetting("scriptfontbold", scriptfontbold); cfg.WriteSetting("scriptfontbold", scriptfontbold);
cfg.WriteSetting("scriptontop", scriptontop); cfg.WriteSetting("scriptontop", scriptontop);
cfg.WriteSetting("scripttabwidth", scripttabwidth); cfg.WriteSetting("scriptusetabs", scriptusetabs); //mxd
cfg.WriteSetting("scripttabwidth", scripttabwidth);
cfg.WriteSetting("scriptautoindent", scriptautoindent); cfg.WriteSetting("scriptautoindent", scriptautoindent);
cfg.WriteSetting("snippetsallmanstyle", snippetsallmanstyle); //mxd cfg.WriteSetting("snippetsallmanstyle", snippetsallmanstyle); //mxd
cfg.WriteSetting("screenshotspath", screenshotspath); //mxd cfg.WriteSetting("screenshotspath", screenshotspath); //mxd

View file

@ -21,6 +21,7 @@ using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using CodeImp.DoomBuilder.IO; using CodeImp.DoomBuilder.IO;
using ScintillaNET;
#endregion #endregion
@ -54,28 +55,34 @@ namespace CodeImp.DoomBuilder.Config
private readonly string[] extensions; private readonly string[] extensions;
private readonly bool casesensitive; private readonly bool casesensitive;
private readonly int insertcase; private readonly int insertcase;
private readonly int lexer; private readonly Lexer lexer;
private readonly string keywordhelp; private readonly string keywordhelp;
private readonly string functionopen; private readonly string functionopen;
private readonly string functionclose; private readonly string functionclose;
private readonly string argumentdelimiter; private readonly string codeblockopen; //mxd
private readonly string codeblockclose; //mxd
private readonly string arrayopen; //mxd
private readonly string arrayclose; //mxd
private readonly string argumentdelimiter;
private readonly string terminator; private readonly string terminator;
private readonly string functionregex;
private readonly ScriptType scripttype; //mxd private readonly ScriptType scripttype; //mxd
// Collections // Collections
private readonly Dictionary<string, string> keywords; private readonly Dictionary<string, string> keywords;
private readonly Dictionary<string, string> lowerkeywords; private readonly Dictionary<string, string> lowerkeywords;
private readonly List<string> constants; private readonly List<string> keywordkeyssorted; //mxd
private readonly List<string> constants;
private readonly Dictionary<string, string> lowerconstants; private readonly Dictionary<string, string> lowerconstants;
private readonly Dictionary<string, string[]> snippets; //mxd private readonly Dictionary<string, string[]> snippets; //mxd
private readonly HashSet<string> snippetkeyssorted; //mxd
#endregion private readonly HashSet<char> braces; //mxd
#region ================== Properties #endregion
// Compiler settings #region ================== Properties
public CompilerInfo Compiler { get { return compiler; } }
// Compiler settings
public CompilerInfo Compiler { get { return compiler; } }
public string Parameters { get { return parameters; } } public string Parameters { get { return parameters; } }
public string ResultLump { get { return resultlump; } } public string ResultLump { get { return resultlump; } }
@ -85,37 +92,45 @@ namespace CodeImp.DoomBuilder.Config
public string[] Extensions { get { return extensions; } } public string[] Extensions { get { return extensions; } }
public bool CaseSensitive { get { return casesensitive; } } public bool CaseSensitive { get { return casesensitive; } }
public int InsertCase { get { return insertcase; } } public int InsertCase { get { return insertcase; } }
public int Lexer { get { return lexer; } } public Lexer Lexer { get { return lexer; } }
public string KeywordHelp { get { return keywordhelp; } } public string KeywordHelp { get { return keywordhelp; } }
public string FunctionOpen { get { return functionopen; } } public string FunctionOpen { get { return functionopen; } }
public string FunctionClose { get { return functionclose; } } public string FunctionClose { get { return functionclose; } }
public string ArgumentDelimiter { get { return argumentdelimiter; } } public string CodeBlockOpen { get { return codeblockopen; } } //mxd
public string CodeBlockClose { get { return codeblockclose; } } //mxd
public string ArrayOpen { get { return arrayopen; } } //mxd
public string ArrayClose { get { return arrayclose; } } //mxd
public string ArgumentDelimiter { get { return argumentdelimiter; } }
public string Terminator { get { return terminator; } } public string Terminator { get { return terminator; } }
public string FunctionRegEx { get { return functionregex; } }
public ScriptType ScriptType { get { return scripttype; } } //mxd public ScriptType ScriptType { get { return scripttype; } } //mxd
public Dictionary<string, string[]> Snippets { get { return snippets; } } //mxd
// Collections // Collections
public ICollection<string> Keywords { get { return keywords.Keys; } } public ICollection<string> Keywords { get { return keywordkeyssorted; } }
public ICollection<string> Constants { get { return constants; } } public ICollection<string> Constants { get { return constants; } }
public ICollection<string> Snippets { get { return snippetkeyssorted; } }
#endregion public HashSet<char> BraceChars { get { return braces; } } //mxd
#region ================== Constructor / Disposer #endregion
// This creates the default script configuration #region ================== Constructor / Disposer
// that is used for documents of unknown type
internal ScriptConfiguration() // This creates the default script configuration
// that is used for documents of unknown type
internal ScriptConfiguration()
{ {
// Initialize // Initialize
this.keywords = new Dictionary<string, string>(StringComparer.Ordinal); this.keywords = new Dictionary<string, string>(StringComparer.Ordinal);
this.constants = new List<string>(); this.constants = new List<string>();
this.lowerkeywords = new Dictionary<string, string>(StringComparer.Ordinal); this.lowerkeywords = new Dictionary<string, string>(StringComparer.Ordinal);
this.lowerconstants = new Dictionary<string, string>(StringComparer.Ordinal); this.lowerconstants = new Dictionary<string, string>(StringComparer.Ordinal);
this.keywordkeyssorted = new List<string>(); //mxd
this.snippets = new Dictionary<string, string[]>(StringComparer.OrdinalIgnoreCase); //mxd
this.snippetkeyssorted = new HashSet<string>(); //mxd
this.braces = new HashSet<char>(); //mxd
// Settings // Settings
lexer = 1; lexer = Lexer.Null;
casesensitive = false; casesensitive = false;
codepage = 65001; codepage = 65001;
parameters = ""; parameters = "";
resultlump = ""; resultlump = "";
@ -123,13 +138,15 @@ namespace CodeImp.DoomBuilder.Config
keywordhelp = ""; keywordhelp = "";
functionopen = ""; functionopen = "";
functionclose = ""; functionclose = "";
argumentdelimiter = ""; codeblockopen = ""; //mxd
codeblockclose = ""; //mxd
arrayopen = ""; //mxd
arrayclose = ""; //mxd
argumentdelimiter = "";
terminator = ""; terminator = "";
functionregex = "";
description = "Plain text"; description = "Plain text";
scripttype = ScriptType.UNKNOWN; //mxd scripttype = ScriptType.UNKNOWN; //mxd
extensions = new[] { "txt" }; extensions = new[] { "txt" };
snippets = new Dictionary<string, string[]>(StringComparer.Ordinal); //mxd
} }
// Constructor // Constructor
@ -140,10 +157,12 @@ namespace CodeImp.DoomBuilder.Config
this.constants = new List<string>(); this.constants = new List<string>();
this.lowerkeywords = new Dictionary<string, string>(StringComparer.Ordinal); this.lowerkeywords = new Dictionary<string, string>(StringComparer.Ordinal);
this.lowerconstants = new Dictionary<string, string>(StringComparer.Ordinal); this.lowerconstants = new Dictionary<string, string>(StringComparer.Ordinal);
this.snippets = new Dictionary<string, string[]>(StringComparer.Ordinal); //mxd this.keywordkeyssorted = new List<string>(); //mxd
this.snippets = new Dictionary<string, string[]>(StringComparer.OrdinalIgnoreCase); //mxd
// Read settings this.snippetkeyssorted = new HashSet<string>(); //mxd
description = cfg.ReadSetting("description", "Untitled script"); this.braces = new HashSet<char>(); //mxd
// Read settings
description = cfg.ReadSetting("description", "Untitled script");
codepage = cfg.ReadSetting("codepage", 0); codepage = cfg.ReadSetting("codepage", 0);
string extensionsstring = cfg.ReadSetting("extensions", ""); string extensionsstring = cfg.ReadSetting("extensions", "");
string compilername = cfg.ReadSetting("compiler", ""); string compilername = cfg.ReadSetting("compiler", "");
@ -151,17 +170,28 @@ namespace CodeImp.DoomBuilder.Config
resultlump = cfg.ReadSetting("resultlump", ""); resultlump = cfg.ReadSetting("resultlump", "");
casesensitive = cfg.ReadSetting("casesensitive", true); casesensitive = cfg.ReadSetting("casesensitive", true);
insertcase = cfg.ReadSetting("insertcase", 0); insertcase = cfg.ReadSetting("insertcase", 0);
lexer = cfg.ReadSetting("lexer", 0); lexer = (Lexer)cfg.ReadSetting("lexer", (int)Lexer.Container);
keywordhelp = cfg.ReadSetting("keywordhelp", ""); keywordhelp = cfg.ReadSetting("keywordhelp", "");
functionopen = cfg.ReadSetting("functionopen", ""); functionopen = cfg.ReadSetting("functionopen", "");
functionclose = cfg.ReadSetting("functionclose", ""); functionclose = cfg.ReadSetting("functionclose", "");
argumentdelimiter = cfg.ReadSetting("argumentdelimiter", ""); codeblockopen = cfg.ReadSetting("codeblockopen", ""); //mxd
codeblockclose = cfg.ReadSetting("codeblockclose", ""); //mxd
arrayopen = cfg.ReadSetting("arrayopen", ""); //mxd
arrayclose = cfg.ReadSetting("arrayclose", ""); //mxd
argumentdelimiter = cfg.ReadSetting("argumentdelimiter", "");
terminator = cfg.ReadSetting("terminator", ""); terminator = cfg.ReadSetting("terminator", "");
functionregex = cfg.ReadSetting("functionregex", "");
scripttype = (ScriptType)cfg.ReadSetting("scripttype", (int)ScriptType.UNKNOWN); //mxd scripttype = (ScriptType)cfg.ReadSetting("scripttype", (int)ScriptType.UNKNOWN); //mxd
// Make extensions array //mxd. Make braces array
extensions = extensionsstring.Split(','); if (!string.IsNullOrEmpty(functionopen)) braces.Add(functionopen[0]);
if (!string.IsNullOrEmpty(functionclose)) braces.Add(functionclose[0]);
if (!string.IsNullOrEmpty(codeblockopen)) braces.Add(codeblockopen[0]);
if (!string.IsNullOrEmpty(codeblockclose)) braces.Add(codeblockclose[0]);
if (!string.IsNullOrEmpty(arrayopen)) braces.Add(arrayopen[0]);
if (!string.IsNullOrEmpty(arrayclose)) braces.Add(arrayclose[0]);
// Make extensions array
extensions = extensionsstring.Split(',');
for(int i = 0; i < extensions.Length; i++) extensions[i] = extensions[i].Trim(); for(int i = 0; i < extensions.Length; i++) extensions[i] = extensions[i].Trim();
// Load keywords // Load keywords
@ -170,67 +200,82 @@ namespace CodeImp.DoomBuilder.Config
{ {
keywords.Add(de.Key.ToString(), de.Value.ToString()); keywords.Add(de.Key.ToString(), de.Value.ToString());
lowerkeywords.Add(de.Key.ToString().ToLowerInvariant(), de.Key.ToString()); lowerkeywords.Add(de.Key.ToString().ToLowerInvariant(), de.Key.ToString());
} keywordkeyssorted.Add(de.Key.ToString()); //mxd
}
// Load constants
dic = cfg.ReadSetting("constants", new Hashtable()); //mxd. Sort keywords lookup
keywordkeyssorted.Sort();
// Load constants
dic = cfg.ReadSetting("constants", new Hashtable());
foreach(DictionaryEntry de in dic) foreach(DictionaryEntry de in dic)
{ {
constants.Add(de.Key.ToString()); constants.Add(de.Key.ToString());
lowerconstants.Add(de.Key.ToString().ToLowerInvariant(), de.Key.ToString()); lowerconstants.Add(de.Key.ToString().ToLowerInvariant(), de.Key.ToString());
} }
// Compiler specified?
if(compilername.Length > 0)
{
// Find compiler
foreach(CompilerInfo c in General.Compilers)
{
// Compiler name matches?
if(c.Name == compilername)
{
// Apply compiler
this.compiler = c;
break;
}
}
// No compiler found?
if(this.compiler == null) throw new Exception("No such compiler defined: '" + compilername + "'");
}
//mxd. Load Snippets //mxd
string snippetsdir = cfg.ReadSetting("snippetsdir", ""); constants.Sort();
if(!string.IsNullOrEmpty(snippetsdir))
//mxd. Load Snippets
string snippetsdir = cfg.ReadSetting("snippetsdir", "");
if(!string.IsNullOrEmpty(snippetsdir))
{ {
string snippetspath = Path.Combine(General.SnippetsPath, snippetsdir); string snippetspath = Path.Combine(General.SnippetsPath, snippetsdir);
if(Directory.Exists(snippetspath)) if(Directory.Exists(snippetspath))
{ {
string[] files = Directory.GetFiles(snippetspath, "*.txt", SearchOption.TopDirectoryOnly); string[] files = Directory.GetFiles(snippetspath, "*.txt", SearchOption.TopDirectoryOnly);
List<string> sortedkeys = new List<string>();
foreach(string file in files) foreach (string file in files)
{ {
string name = Path.GetFileNameWithoutExtension(file); string name = Path.GetFileNameWithoutExtension(file);
if(name.Contains(" ")) if (string.IsNullOrEmpty(name))
{
General.ErrorLogger.Add(ErrorType.Warning, "Failed to load snippet '" + file + "' for '" + description + "' script configuration.");
}
else
{ {
General.ErrorLogger.Add(ErrorType.Warning, "Failed to load snippet '" + file + "' for '" + description + "' script configuration: snippet file name must not contain spaces!"); if (name.Contains(" ")) name = name.Replace(' ', '_');
} string[] lines = File.ReadAllLines(file);
else if(lines.Length > 0)
{
string[] lines = File.ReadAllLines(file);
if(lines.Length > 0)
{ {
snippets.Add(name, lines); snippets.Add(name, lines);
} sortedkeys.Add(name);
else }
else
{ {
General.ErrorLogger.Add(ErrorType.Warning, "Failed to load snippet '" + file + "' for '" + description + "' script configuration: file is empty!"); General.ErrorLogger.Add(ErrorType.Warning, "Failed to load snippet '" + file + "' for '" + description + "' script configuration: file is empty!");
} }
} }
} }
}
} //mxd. Sort snippets lookup
} sortedkeys.Sort();
snippetkeyssorted = new HashSet<string>(sortedkeys, StringComparer.OrdinalIgnoreCase);
}
}
// Compiler specified?
if (compilername.Length > 0)
{
// Find compiler
foreach (CompilerInfo c in General.Compilers)
{
// Compiler name matches?
if (c.Name == compilername)
{
// Apply compiler
this.compiler = c;
break;
}
}
// No compiler found?
if (this.compiler == null) throw new Exception("No such compiler defined: '" + compilername + "'");
}
}
#endregion #endregion
@ -278,9 +323,15 @@ namespace CodeImp.DoomBuilder.Config
else else
return null; return null;
} }
// This sorts by description //mxd
public int CompareTo(ScriptConfiguration other) public string[] GetSnippet(string name)
{
return (snippetkeyssorted.Contains(name) ? snippets[name] : null);
}
// This sorts by description
public int CompareTo(ScriptConfiguration other)
{ {
return string.Compare(this.description, other.description, true); return string.Compare(this.description, other.description, true);
} }

View file

@ -20,13 +20,13 @@ using System;
using System.IO; using System.IO;
using System.Collections.Generic; using System.Collections.Generic;
using System.Drawing; using System.Drawing;
using System.Text;
using System.Windows.Forms; using System.Windows.Forms;
using CodeImp.DoomBuilder.Windows; using CodeImp.DoomBuilder.Windows;
using CodeImp.DoomBuilder.Config; using CodeImp.DoomBuilder.Config;
using CodeImp.DoomBuilder.Compilers; using CodeImp.DoomBuilder.Compilers;
using CodeImp.DoomBuilder.GZBuilder.Data; using CodeImp.DoomBuilder.GZBuilder.Data;
using CodeImp.DoomBuilder.GZBuilder.GZDoom; using CodeImp.DoomBuilder.GZBuilder.GZDoom;
using ScintillaNET;
#endregion #endregion
@ -34,11 +34,10 @@ namespace CodeImp.DoomBuilder.Controls
{ {
internal abstract class ScriptDocumentTab : TabPage internal abstract class ScriptDocumentTab : TabPage
{ {
#region ================== Constants #region ================== Constants
private const int NAVIGATOR_BORDER_TOP = 8; //mxd private const int EDITOR_BORDER_TOP = 4;
private const int EDITOR_BORDER_TOP = 33; private const int EDITOR_BORDER_BOTTOM = 4;
private const int EDITOR_BORDER_BOTTOM = 4;
private const int EDITOR_BORDER_LEFT = 4; private const int EDITOR_BORDER_LEFT = 4;
private const int EDITOR_BORDER_RIGHT = 4; private const int EDITOR_BORDER_RIGHT = 4;
@ -48,7 +47,6 @@ namespace CodeImp.DoomBuilder.Controls
// The script edit control // The script edit control
protected readonly ScriptEditorControl editor; protected readonly ScriptEditorControl editor;
protected readonly ComboBox navigator; //mxd
private bool preventchanges; //mxd private bool preventchanges; //mxd
private string title; //mxd private string title; //mxd
@ -68,11 +66,15 @@ namespace CodeImp.DoomBuilder.Controls
public virtual bool IsReconfigurable { get { return true; } } public virtual bool IsReconfigurable { get { return true; } }
public virtual string Filename { get { return null; } } public virtual string Filename { get { return null; } }
public ScriptEditorPanel Panel { get { return panel; } } public ScriptEditorPanel Panel { get { return panel; } }
public new string Text { get { return title; } } //mxd internal Scintilla Scintilla { get { return editor.Scintilla; } } //mxd
public bool IsChanged { get { return editor.IsChanged; } internal set { editor.IsChanged = value; } } //mxd. Added setter public string Title { get { return title; } } //mxd
public int SelectionStart { get { return editor.SelectionStart; } set { editor.SelectionStart = value; } } public bool IsChanged { get { return editor.IsChanged; } }
public int SelectionStart { get { return editor.SelectionStart; } set { editor.SelectionStart = value; } }
public int SelectionEnd { get { return editor.SelectionEnd; } set { editor.SelectionEnd = value; } } public int SelectionEnd { get { return editor.SelectionEnd; } set { editor.SelectionEnd = value; } }
public ScriptConfiguration Config { get { return config; } } public bool ShowWhitespace { get { return editor.ShowWhitespace; } set { editor.ShowWhitespace = value; } } //mxd
public bool WrapLongLines { get { return editor.WrapLongLines; } set { editor.WrapLongLines = value; } } //mxd
public string SelectedText { get { return editor.SelectedText; } } //mxd
public ScriptConfiguration Config { get { return config; } }
#endregion #endregion
@ -90,19 +92,6 @@ namespace CodeImp.DoomBuilder.Controls
// Keep panel // Keep panel
this.panel = panel; this.panel = panel;
//mxd
navigator = new ComboBox();
navigator.Location = new Point(EDITOR_BORDER_LEFT, NAVIGATOR_BORDER_TOP);
navigator.Width = this.ClientSize.Width - EDITOR_BORDER_LEFT - EDITOR_BORDER_RIGHT;
navigator.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right;
navigator.DropDownStyle = ComboBoxStyle.DropDownList;
navigator.Name = "navigator";
navigator.TabStop = true;
navigator.TabIndex = 0;
navigator.DropDown += navigator_DropDown;
navigator.SelectedIndexChanged += navigator_SelectedIndexChanged;
this.Controls.Add(navigator);
// Make the script control // Make the script control
editor = new ScriptEditorControl(); editor = new ScriptEditorControl();
editor.Location = new Point(EDITOR_BORDER_LEFT, EDITOR_BORDER_TOP); editor.Location = new Point(EDITOR_BORDER_LEFT, EDITOR_BORDER_TOP);
@ -121,10 +110,14 @@ namespace CodeImp.DoomBuilder.Controls
editor.OnFindNext += panel.FindNext; editor.OnFindNext += panel.FindNext;
editor.OnFindPrevious += panel.FindPrevious; //mxd editor.OnFindPrevious += panel.FindPrevious; //mxd
editor.OnTextChanged += editor_TextChanged; //mxd editor.OnTextChanged += editor_TextChanged; //mxd
}
//mxd. Bind functionbar events
// Disposer editor.FunctionBar.DropDown += functionbar_DropDown;
protected override void Dispose(bool disposing) editor.FunctionBar.SelectedIndexChanged += functionbar_SelectedIndexChanged;
}
// Disposer
protected override void Dispose(bool disposing)
{ {
// Remove events // Remove events
editor.OnExplicitSaveTab -= panel.ExplicitSaveCurrentTab; editor.OnExplicitSaveTab -= panel.ExplicitSaveCurrentTab;
@ -263,134 +256,28 @@ namespace CodeImp.DoomBuilder.Controls
// Find next result // Find next result
public bool FindNext(FindReplaceOptions options, bool useselectionstart) public bool FindNext(FindReplaceOptions options, bool useselectionstart)
{ {
byte[] data = editor.GetText(); return editor.FindNext(options, useselectionstart);
string text = Encoding.GetEncoding(config.CodePage).GetString(data);
StringComparison mode = options.CaseSensitive ? StringComparison.CurrentCulture : StringComparison.CurrentCultureIgnoreCase;
int startpos = (useselectionstart ? Math.Min(editor.SelectionStart, editor.SelectionEnd) : Math.Max(editor.SelectionStart, editor.SelectionEnd)); //mxd
bool wrapped = false;
while(true)
{
int result = text.IndexOf(options.FindText, startpos, mode);
if(result > -1)
{
// Check to see if it is the whole word
if(options.WholeWord)
{
// Veryfy that we have found a whole word
string foundword = editor.GetWordAt(result + 1);
if(foundword.Length != options.FindText.Length)
{
startpos = result + 1;
result = -1;
}
}
// Still ok?
if(result > -1)
{
// Select the result
editor.SelectionStart = result;
editor.SelectionEnd = result + options.FindText.Length;
editor.EnsureLineVisible(editor.LineFromPosition(editor.SelectionEnd));
return true;
}
}
else
{
// If we haven't tried from the start, try from the start now
if((startpos > 0) && !wrapped)
{
startpos = 0;
wrapped = true;
}
else
{
// Can't find it
return false;
}
}
}
} }
// Find previous result (mxd) // Find previous result (mxd)
public bool FindPrevious(FindReplaceOptions options) public bool FindPrevious(FindReplaceOptions options)
{ {
bool wrapped = false; return editor.FindPrevious(options);
byte[] data = editor.GetText(); }
string text = Encoding.GetEncoding(config.CodePage).GetString(data);
StringComparison mode = options.CaseSensitive ? StringComparison.CurrentCulture : StringComparison.CurrentCultureIgnoreCase;
int endpos = Math.Min(editor.SelectionStart, editor.SelectionEnd) - 1;
if(endpos < 0)
{
endpos = text.Length - 1;
wrapped = true;
}
while(true)
{
int result = text.LastIndexOf(options.FindText, endpos, mode);
if(result > -1)
{
// Check to see if it is the whole word
if(options.WholeWord)
{
// Veryfy that we have found a whole word
string foundword = editor.GetWordAt(result + 1);
if(foundword.Length != options.FindText.Length)
{
endpos = result - 1;
result = -1;
}
}
// Still ok?
if(result > -1)
{
// Select the result
editor.SelectionStart = result;
editor.SelectionEnd = result + options.FindText.Length;
editor.EnsureLineVisible(editor.LineFromPosition(editor.SelectionEnd));
return true;
}
}
else
{
// If we haven't tried from the end, try from the end now
if(!wrapped)
{
endpos = Math.Max(0, text.Length - 2);
wrapped = true;
}
else
{
// Can't find it
return false;
}
}
}
}
// This replaces the selection with the given text // This replaces the selection with the given text
public void ReplaceSelection(string replacement) public void ReplaceSelection(string replacement)
{ {
editor.ReplaceSelection(replacement); editor.ReplaceSelection(replacement);
} }
// This returns the selected text
public string GetSelectedText()
{
byte[] data = editor.GetText();
string text = Encoding.GetEncoding(config.CodePage).GetString(data);
if(editor.SelectionStart < editor.SelectionEnd)
return text.Substring(editor.SelectionStart, editor.SelectionEnd - editor.SelectionStart);
return "";
}
//mxd //mxd
protected void UpdateNavigator() protected void UpdateNavigator()
{ {
switch(config.ScriptType) // Store currently selected item name
string prevtext = editor.FunctionBar.Text;
switch (config.ScriptType)
{ {
case ScriptType.ACS: case ScriptType.ACS:
UpdateNavigatorAcs(new MemoryStream(editor.GetText())); UpdateNavigatorAcs(new MemoryStream(editor.GetText()));
@ -405,17 +292,33 @@ namespace CodeImp.DoomBuilder.Controls
break; break;
default: // Unsupported script type. Just clear the items default: // Unsupported script type. Just clear the items
navigator.Items.Clear(); editor.FunctionBar.Items.Clear();
break; break;
} }
// Put some text in the navigator (but don't actually trigger selection event) // Put some text in the navigator (but don't actually trigger selection event)
navigator.Enabled = (navigator.Items.Count > 0); editor.FunctionBar.Enabled = (editor.FunctionBar.Items.Count > 0);
if(navigator.Items.Count > 0) if (editor.FunctionBar.Items.Count > 0)
{ {
preventchanges = true; preventchanges = true;
navigator.Text = navigator.Items[0].ToString();
preventchanges = false; // Put the text back if we still have the corresponding item
if (!string.IsNullOrEmpty(prevtext))
{
foreach (var item in editor.FunctionBar.Items)
{
if (item.ToString() == prevtext)
{
editor.FunctionBar.Text = item.ToString();
break;
}
}
}
// No dice. Use the first item
if (string.IsNullOrEmpty(editor.FunctionBar.Text))
editor.FunctionBar.Text = editor.FunctionBar.Items[0].ToString();
preventchanges = false;
} }
} }
@ -423,13 +326,13 @@ namespace CodeImp.DoomBuilder.Controls
private void UpdateNavigatorDecorate(MemoryStream stream) private void UpdateNavigatorDecorate(MemoryStream stream)
{ {
if(stream == null) return; if(stream == null) return;
navigator.Items.Clear(); editor.FunctionBar.Items.Clear();
DecorateParserSE parser = new DecorateParserSE(); DecorateParserSE parser = new DecorateParserSE();
if(parser.Parse(stream, "DECORATE", false)) if(parser.Parse(stream, "DECORATE", false))
{ {
navigator.Items.AddRange(parser.Actors.ToArray()); editor.FunctionBar.Items.AddRange(parser.Actors.ToArray());
} }
if(parser.HasError) if(parser.HasError)
{ {
@ -441,13 +344,13 @@ namespace CodeImp.DoomBuilder.Controls
private void UpdateNavigatorModeldef(MemoryStream stream) private void UpdateNavigatorModeldef(MemoryStream stream)
{ {
if(stream == null) return; if(stream == null) return;
navigator.Items.Clear(); editor.FunctionBar.Items.Clear();
ModeldefParserSE parser = new ModeldefParserSE(); ModeldefParserSE parser = new ModeldefParserSE();
if(parser.Parse(stream, "MODELDEF", false)) if(parser.Parse(stream, "MODELDEF", false))
{ {
navigator.Items.AddRange(parser.Models.ToArray()); editor.FunctionBar.Items.AddRange(parser.Models.ToArray());
} }
if(parser.HasError) if(parser.HasError)
{ {
@ -459,15 +362,15 @@ namespace CodeImp.DoomBuilder.Controls
private void UpdateNavigatorAcs(MemoryStream stream) private void UpdateNavigatorAcs(MemoryStream stream)
{ {
if(stream == null) return; if(stream == null) return;
navigator.Items.Clear(); editor.FunctionBar.Items.Clear();
AcsParserSE parser = new AcsParserSE { AddArgumentsToScriptNames = true, IsMapScriptsLump = this is ScriptLumpDocumentTab }; AcsParserSE parser = new AcsParserSE { AddArgumentsToScriptNames = true, IsMapScriptsLump = this is ScriptLumpDocumentTab };
if(parser.Parse(stream, "SCRIPTS", false)) if(parser.Parse(stream, "SCRIPTS", false))
{ {
navigator.Items.AddRange(parser.NamedScripts.ToArray()); editor.FunctionBar.Items.AddRange(parser.NamedScripts.ToArray());
navigator.Items.AddRange(parser.NumberedScripts.ToArray()); editor.FunctionBar.Items.AddRange(parser.NumberedScripts.ToArray());
navigator.Items.AddRange(parser.Functions.ToArray()); editor.FunctionBar.Items.AddRange(parser.Functions.ToArray());
} }
if(parser.HasError) if(parser.HasError)
{ {
@ -493,18 +396,25 @@ namespace CodeImp.DoomBuilder.Controls
return ScriptType.UNKNOWN; return ScriptType.UNKNOWN;
} }
//mxd //mxd
internal void InsertSnippet(string[] lines) internal void InsertSnippet(string name)
{ {
editor.InsertSnippet(lines); string[] lines = config.GetSnippet(name);
} if (lines != null) editor.InsertSnippet(lines);
}
#endregion //mxd
internal void IndentSelection(bool indent)
#region ================== Events {
editor.IndentSelection(indent);
// Mouse released }
protected override void OnMouseUp(MouseEventArgs e)
#endregion
#region ================== Events
// Mouse released
protected override void OnMouseUp(MouseEventArgs e)
{ {
base.OnMouseUp(e); base.OnMouseUp(e);
@ -523,13 +433,13 @@ namespace CodeImp.DoomBuilder.Controls
editor.GrabFocus(); editor.GrabFocus();
} }
//mxd //mxd
private void navigator_SelectedIndexChanged(object sender, EventArgs e) private void functionbar_SelectedIndexChanged(object sender, EventArgs e)
{ {
if(!preventchanges && navigator.SelectedItem is ScriptItem) if (!preventchanges && editor.FunctionBar.SelectedItem is ScriptItem)
{ {
ScriptItem si = navigator.SelectedItem as ScriptItem; ScriptItem si = editor.FunctionBar.SelectedItem as ScriptItem;
editor.EnsureLineVisible(editor.LineFromPosition(si.CursorPosition)); editor.EnsureLineVisible(editor.LineFromPosition(si.CursorPosition));
editor.SelectionStart = si.CursorPosition; editor.SelectionStart = si.CursorPosition;
editor.SelectionEnd = si.CursorPosition; editor.SelectionEnd = si.CursorPosition;
@ -539,9 +449,9 @@ namespace CodeImp.DoomBuilder.Controls
} }
} }
//mxd //mxd
private void navigator_DropDown(object sender, EventArgs e) private void functionbar_DropDown(object sender, EventArgs e)
{ {
if(!preventchanges && editor.IsChanged) UpdateNavigator(); if(!preventchanges && editor.IsChanged) UpdateNavigator();
} }

View file

@ -1,167 +1,106 @@
namespace CodeImp.DoomBuilder.Controls namespace CodeImp.DoomBuilder.Controls
{ {
partial class ScriptEditorControl partial class ScriptEditorControl
{ {
/// <summary> /// <summary>
/// Required designer variable. /// Required designer variable.
/// </summary> /// </summary>
private System.ComponentModel.IContainer components = null; private System.ComponentModel.IContainer components = null;
/// <summary> /// <summary>
/// Clean up any resources being used. /// Clean up any resources being used.
/// </summary> /// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) protected override void Dispose(bool disposing)
{ {
if(disposing && (components != null)) if (disposing && (components != null))
{ {
components.Dispose(); components.Dispose();
} }
base.Dispose(disposing); base.Dispose(disposing);
} }
#region Component Designer generated code #region Component Designer generated code
/// <summary> /// <summary>
/// Required method for Designer support - do not modify /// Required method for Designer support - do not modify
/// the contents of this method with the code editor. /// the contents of this method with the code editor.
/// </summary> /// </summary>
private void InitializeComponent() private void InitializeComponent()
{ {
this.functionbar = new System.Windows.Forms.ComboBox(); this.scriptedit = new ScintillaNET.Scintilla();
this.scriptedit = new CodeImp.DoomBuilder.Controls.ScintillaControl(); this.scriptpanel = new System.Windows.Forms.Panel();
this.scriptpanel = new System.Windows.Forms.Panel(); this.functionbar = new System.Windows.Forms.ComboBox();
this.scriptpanel.SuspendLayout(); this.scriptpanel.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
// functionbar // scriptedit
// //
this.functionbar.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) this.scriptedit.AutoCIgnoreCase = true;
| System.Windows.Forms.AnchorStyles.Right))); this.scriptedit.AutoCMaxHeight = 12;
this.functionbar.FormattingEnabled = true; this.scriptedit.AutoCOrder = ScintillaNET.Order.Custom;
this.functionbar.Items.AddRange(new object[] { this.scriptedit.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
"Function1", this.scriptedit.CaretWidth = 2;
"Function2", this.scriptedit.Dock = System.Windows.Forms.DockStyle.Fill;
"Function3"}); this.scriptedit.ExtraAscent = 1;
this.functionbar.Location = new System.Drawing.Point(0, 0); this.scriptedit.ExtraDescent = 1;
this.functionbar.Name = "functionbar"; this.scriptedit.FontQuality = ScintillaNET.FontQuality.LcdOptimized;
this.functionbar.Size = new System.Drawing.Size(474, 21); this.scriptedit.Location = new System.Drawing.Point(0, 0);
this.functionbar.TabIndex = 1; this.scriptedit.Name = "scriptedit";
this.functionbar.TabStop = false; this.scriptedit.ScrollWidth = 200;
// this.scriptedit.Size = new System.Drawing.Size(474, 381);
// scriptedit this.scriptedit.TabIndex = 0;
// this.scriptedit.TabStop = false;
this.scriptedit.AnchorPosition = 0; this.scriptedit.UseTabs = true;
this.scriptedit.AutoCMaximumHeight = 0; this.scriptedit.WhitespaceSize = 2;
this.scriptedit.AutoCMaximumWidth = 0; this.scriptedit.TextChanged += new System.EventHandler(this.scriptedit_TextChanged);
this.scriptedit.AutoCSeparator = 0; this.scriptedit.CharAdded += new System.EventHandler<ScintillaNET.CharAddedEventArgs>(this.scriptedit_CharAdded);
this.scriptedit.AutoCTypeSeparator = 0; this.scriptedit.AutoCCompleted += new System.EventHandler<ScintillaNET.AutoCSelectionEventArgs>(this.scriptedit_AutoCCompleted);
this.scriptedit.BackColor = System.Drawing.SystemColors.Window; this.scriptedit.InsertCheck += new System.EventHandler<ScintillaNET.InsertCheckEventArgs>(this.scriptedit_InsertCheck);
this.scriptedit.CaretFore = 0; this.scriptedit.KeyUp += new System.Windows.Forms.KeyEventHandler(this.scriptedit_KeyUp);
this.scriptedit.CaretLineBack = 0; this.scriptedit.UpdateUI += new System.EventHandler<ScintillaNET.UpdateUIEventArgs>(this.scriptedit_UpdateUI);
this.scriptedit.CaretPeriod = 0; this.scriptedit.KeyDown += new System.Windows.Forms.KeyEventHandler(this.scriptedit_KeyDown);
this.scriptedit.CaretWidth = 0; //
this.scriptedit.CodePage = 0; // scriptpanel
this.scriptedit.ControlCharSymbol = 0; //
this.scriptedit.CurrentPos = 0; this.scriptpanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
this.scriptedit.CursorType = 0; | System.Windows.Forms.AnchorStyles.Left)
this.scriptedit.Dock = System.Windows.Forms.DockStyle.Fill; | System.Windows.Forms.AnchorStyles.Right)));
this.scriptedit.DocPointer = 0; this.scriptpanel.Controls.Add(this.scriptedit);
this.scriptedit.EdgeColour = 0; this.scriptpanel.Location = new System.Drawing.Point(0, 27);
this.scriptedit.EdgeColumn = 0; this.scriptpanel.Name = "scriptpanel";
this.scriptedit.EdgeMode = 0; this.scriptpanel.Size = new System.Drawing.Size(474, 381);
this.scriptedit.EndAtLastLine = 0; this.scriptpanel.TabIndex = 2;
this.scriptedit.EndOfLineMode = CodeImp.DoomBuilder.Controls.ScriptEndOfLine.CRLF; //
this.scriptedit.EOLMode = 0; // functionbar
this.scriptedit.ExtraAscent = 0; //
this.scriptedit.ExtraDescent = 0; this.functionbar.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
this.scriptedit.HighlightGuide = 0; | System.Windows.Forms.AnchorStyles.Right)));
this.scriptedit.Indent = 0; this.functionbar.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.scriptedit.IndentationGuides = 0; this.functionbar.FormattingEnabled = true;
this.scriptedit.IsAutoCGetAutoHide = false; this.functionbar.Location = new System.Drawing.Point(0, 0);
this.scriptedit.IsAutoCGetCancelAtStart = false; this.functionbar.Name = "functionbar";
this.scriptedit.IsAutoCGetChooseSingle = false; this.functionbar.Size = new System.Drawing.Size(474, 21);
this.scriptedit.IsAutoCGetDropRestOfWord = false; this.functionbar.TabIndex = 2;
this.scriptedit.IsAutoCGetIgnoreCase = false; this.functionbar.TabStop = false;
this.scriptedit.IsBackSpaceUnIndents = false; //
this.scriptedit.IsBufferedDraw = false; // ScriptEditorControl
this.scriptedit.IsCaretLineVisible = false; //
this.scriptedit.IsFocus = false; this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.scriptedit.IsHScrollBar = false; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.scriptedit.IsMouseDownCaptures = false; this.Controls.Add(this.scriptpanel);
this.scriptedit.IsOvertype = false; this.Controls.Add(this.functionbar);
this.scriptedit.IsReadOnly = false; this.Name = "ScriptEditorControl";
this.scriptedit.IsTabIndents = false; this.Size = new System.Drawing.Size(474, 408);
this.scriptedit.IsTwoPhaseDraw = false; this.scriptpanel.ResumeLayout(false);
this.scriptedit.IsUndoCollection = false; this.ResumeLayout(false);
this.scriptedit.IsUsePalette = false;
this.scriptedit.IsUseTabs = false;
this.scriptedit.IsViewEOL = false;
this.scriptedit.IsVScrollBar = false;
this.scriptedit.LayoutCache = 0;
this.scriptedit.Lexer = 0;
this.scriptedit.Location = new System.Drawing.Point(0, 0);
this.scriptedit.MarginLeft = 0;
this.scriptedit.MarginRight = 0;
this.scriptedit.ModEventMask = 0;
this.scriptedit.MouseDwellTime = 0;
this.scriptedit.Name = "scriptedit";
this.scriptedit.PrintColourMode = 0;
this.scriptedit.PrintMagnification = 0;
this.scriptedit.PrintWrapMode = 0;
this.scriptedit.ScrollWidth = 0;
this.scriptedit.SearchFlags = 0;
this.scriptedit.SelectionEnd = 0;
this.scriptedit.SelectionMode = 0;
this.scriptedit.SelectionStart = 0;
this.scriptedit.Size = new System.Drawing.Size(470, 377);
this.scriptedit.Status = 0;
this.scriptedit.StyleBits = 0;
this.scriptedit.TabIndex = 0;
this.scriptedit.TabStop = false;
this.scriptedit.TabWidth = 0;
this.scriptedit.TargetEnd = 0;
this.scriptedit.TargetStart = 0;
this.scriptedit.ViewWhitespace = CodeImp.DoomBuilder.Controls.ScriptWhiteSpace.Invisible;
this.scriptedit.ViewWS = 0;
this.scriptedit.WrapMode = 0;
this.scriptedit.WrapStartIndent = 0;
this.scriptedit.WrapVisualFlags = 0;
this.scriptedit.WrapVisualFlagsLocation = 0;
this.scriptedit.XOffset = 0;
this.scriptedit.ZoomLevel = 0;
this.scriptedit.KeyUp += new System.Windows.Forms.KeyEventHandler(this.scriptedit_KeyUp);
this.scriptedit.KeyDown += new System.Windows.Forms.KeyEventHandler(this.scriptedit_KeyDown);
//
// scriptpanel
//
this.scriptpanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.scriptpanel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.scriptpanel.Controls.Add(this.scriptedit);
this.scriptpanel.Location = new System.Drawing.Point(0, 27);
this.scriptpanel.Name = "scriptpanel";
this.scriptpanel.Size = new System.Drawing.Size(474, 381);
this.scriptpanel.TabIndex = 2;
//
// ScriptEditorControl
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.Controls.Add(this.scriptpanel);
this.Controls.Add(this.functionbar);
this.Name = "ScriptEditorControl";
this.Size = new System.Drawing.Size(474, 408);
this.scriptpanel.ResumeLayout(false);
this.ResumeLayout(false);
} }
#endregion #endregion
private ScintillaControl scriptedit; private ScintillaNET.Scintilla scriptedit;
private System.Windows.Forms.ComboBox functionbar; private System.Windows.Forms.Panel scriptpanel;
private System.Windows.Forms.Panel scriptpanel; private System.Windows.Forms.ComboBox functionbar;
} }
} }

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -61,15 +61,15 @@ namespace CodeImp.DoomBuilder.Controls
if(config.Extensions.Length > 0) ext = "." + config.Extensions[0]; if(config.Extensions.Length > 0) ext = "." + config.Extensions[0];
SetTitle("Untitled" + ext); SetTitle("Untitled" + ext);
editor.ClearUndoRedo(); editor.ClearUndoRedo();
navigator.Enabled = (config.ScriptType != ScriptType.UNKNOWN); //mxd editor.FunctionBar.Enabled = (config.ScriptType != ScriptType.UNKNOWN); //mxd
} }
#endregion #endregion
#region ================== Methods #region ================== Methods
// This compiles the script file // This compiles the script file
public override void Compile() public override void Compile()
{ {
//mxd. ACS requires special handling... //mxd. ACS requires special handling...
if(config.ScriptType == ScriptType.ACS) if(config.ScriptType == ScriptType.ACS)
@ -287,11 +287,11 @@ namespace CodeImp.DoomBuilder.Controls
General.ShowErrorMessage("Unable to open file \"" + filepathname + "\" for writing. Make sure the path exists and that the file is not in use by another application.", MessageBoxButtons.OK); General.ShowErrorMessage("Unable to open file \"" + filepathname + "\" for writing. Make sure the path exists and that the file is not in use by another application.", MessageBoxButtons.OK);
return false; return false;
} }
// Done // Done
editor.IsChanged = false; editor.SetSavePoint(); //mxd
UpdateTitle(); //mxd UpdateTitle(); //mxd
return true; return true;
} }
// This saves the document to a new file // This saves the document to a new file
@ -317,10 +317,11 @@ namespace CodeImp.DoomBuilder.Controls
{ {
try try
{ {
// Read the file // Read the file
editor.SetText(File.ReadAllBytes(filepathname)); editor.Text = File.ReadAllText(filepathname); //mxd
} }
catch(Exception e)
catch (Exception e)
{ {
// Failed // Failed
General.ErrorLogger.Add(ErrorType.Error, "Cannot open file '" + filepathname + "' for reading. Make sure the path exists and that the file is not in use by another application."); General.ErrorLogger.Add(ErrorType.Error, "Cannot open file '" + filepathname + "' for reading. Make sure the path exists and that the file is not in use by another application.");
@ -332,7 +333,6 @@ namespace CodeImp.DoomBuilder.Controls
// Setup // Setup
this.filepathname = filepathname; this.filepathname = filepathname;
editor.ClearUndoRedo(); editor.ClearUndoRedo();
editor.IsChanged = false; //mxd. Not changed yet
SetTitle(Path.GetFileName(filepathname)); SetTitle(Path.GetFileName(filepathname));
UpdateNavigator(); //mxd UpdateNavigator(); //mxd

View file

@ -17,9 +17,9 @@
#region ================== Namespaces #region ================== Namespaces
using System.Collections.Generic; using System.Collections.Generic;
using CodeImp.DoomBuilder.Config;
using System.IO; using System.IO;
using CodeImp.DoomBuilder.Compilers; using CodeImp.DoomBuilder.Compilers;
using CodeImp.DoomBuilder.Config;
#endregion #endregion
@ -72,13 +72,12 @@ namespace CodeImp.DoomBuilder.Controls
MemoryStream stream = General.Map.GetLumpData(this.lumpname); MemoryStream stream = General.Map.GetLumpData(this.lumpname);
if(stream != null) if(stream != null)
{ {
editor.SetText(stream.ToArray()); editor.SetText(stream.ToArray()); //mxd
editor.ClearUndoRedo(); editor.ClearUndoRedo();
UpdateNavigator(); //mxd UpdateNavigator(); //mxd
} }
// Set title // Set title
IsChanged = false; //mxd. Not changed yet
SetTitle(ismapheader ? General.Map.Options.CurrentName : this.lumpname.ToUpper()); SetTitle(ismapheader ? General.Map.Options.CurrentName : this.lumpname.ToUpper());
} }
@ -116,9 +115,9 @@ namespace CodeImp.DoomBuilder.Controls
// Store the lump data // Store the lump data
MemoryStream stream = new MemoryStream(editor.GetText()); MemoryStream stream = new MemoryStream(editor.GetText());
General.Map.SetLumpData(lumpname, stream); General.Map.SetLumpData(lumpname, stream);
editor.IsChanged = false; editor.SetSavePoint(); //mxd
UpdateTitle(); //mxd UpdateTitle(); //mxd
return true; return true;
} }
// This checks if a script error applies to this script // This checks if a script error applies to this script

View file

@ -547,8 +547,8 @@ namespace CodeImp.DoomBuilder.Data
// This returns a preview image // This returns a preview image
public virtual Image GetPreview() public virtual Image GetPreview()
{ {
lock(this) //lock(this)
{ //{
// Preview ready? // Preview ready?
if(previewstate == ImageLoadState.Ready) if(previewstate == ImageLoadState.Ready)
{ {
@ -565,7 +565,7 @@ namespace CodeImp.DoomBuilder.Data
// Return loading bitmap // Return loading bitmap
return Properties.Resources.Hourglass; return Properties.Resources.Hourglass;
} //}
} }
//mxd. This greatly speeds up Dictionary lookups //mxd. This greatly speeds up Dictionary lookups

View file

@ -166,10 +166,10 @@ namespace CodeImp.DoomBuilder.GZBuilder.GZDoom
case "function": case "function":
{ {
SkipWhitespace(true); SkipWhitespace(true);
int startpos = (int)stream.Position;
string funcname = ReadToken(); //read return type string funcname = ReadToken(); //read return type
SkipWhitespace(true); SkipWhitespace(true);
funcname += " " + ReadToken(); //read function name int startpos = (int)stream.Position;
funcname += " " + ReadToken(); //read function name
// Try to parse argument names // Try to parse argument names
List<KeyValuePair<string, string>> args = ParseArgs(); List<KeyValuePair<string, string>> args = ParseArgs();

View file

@ -156,10 +156,12 @@ namespace CodeImp.DoomBuilder.GZBuilder.Windows
private static string GetExceptionDescription(Exception ex) private static string GetExceptionDescription(Exception ex)
{ {
//add to error logger // Add to error logger
General.ErrorLogger.Add(ErrorType.Error, "**** " + ex.Source + ": " + ex.Message + " ****"); General.WriteLogLine("***********************************************************");
General.ErrorLogger.Add(ErrorType.Error, ex.Source + ": " + ex.Message);
General.WriteLogLine("***********************************************************");
string message = "********EXCEPTION DETAILS********" string message = "********EXCEPTION DETAILS********"
+ Environment.NewLine + ex.Source + ": " + ex.Message + Environment.NewLine + ex.StackTrace; + Environment.NewLine + ex.Source + ": " + ex.Message + Environment.NewLine + ex.StackTrace;
if(File.Exists(General.LogFile)) if(File.Exists(General.LogFile))

View file

@ -30,16 +30,17 @@ namespace CodeImp.DoomBuilder
#region ================== Variables #region ================== Variables
private List<ErrorItem> errors; private readonly List<ErrorItem> errors;
private volatile bool changed; private volatile bool changed;
private volatile bool erroradded; private volatile bool erroradded;
private volatile bool warningadded; private volatile bool warningadded;
private object threadlock = new object(); //mxd
#endregion
#region ================== Properties #endregion
public bool HasErrors { get { return (errors.Count > 0); } } #region ================== Properties
public bool HasErrors { get { return (errors.Count > 0); } }
public int ErrorsCount { get { return errors.Count; } } //mxd public int ErrorsCount { get { return errors.Count; } } //mxd
public bool HasChanged { get { return changed; } set { changed = value; } } public bool HasChanged { get { return changed; } set { changed = value; } }
public bool IsErrorAdded { get { return erroradded; } set { erroradded = value; } } public bool IsErrorAdded { get { return erroradded; } set { erroradded = value; } }
@ -62,8 +63,8 @@ namespace CodeImp.DoomBuilder
// This clears the errors // This clears the errors
public void Clear() public void Clear()
{ {
lock(this) lock (threadlock)
{ {
changed = false; changed = false;
erroradded = false; erroradded = false;
warningadded = false; warningadded = false;
@ -78,9 +79,9 @@ namespace CodeImp.DoomBuilder
public void Add(ErrorType type, string message) public void Add(ErrorType type, string message)
{ {
string prefix = ""; string prefix = "";
lock(this) lock (threadlock)
{ {
//mxd. Don't add duplicate messages //mxd. Don't add duplicate messages
if(errors.Count == 0 || message != errors[errors.Count - 1].message || type != errors[errors.Count - 1].type) if(errors.Count == 0 || message != errors[errors.Count - 1].message || type != errors[errors.Count - 1].type)
{ {
@ -115,17 +116,28 @@ namespace CodeImp.DoomBuilder
} }
} }
} }
// This returns the list of errors // This returns the list of errors
internal List<ErrorItem> GetErrors() /*internal List<ErrorItem> GetErrors()
{ {
lock(this) lock(this)
{ {
List<ErrorItem> copylist = new List<ErrorItem>(errors); List<ErrorItem> copylist = new List<ErrorItem>(errors);
return copylist; return copylist;
} }
} }*/
#endregion //mxd. This returns the list of errors starting at given index
} internal IEnumerable<ErrorItem> GetErrors(int startindex)
{
if (startindex >= errors.Count) return new List<ErrorItem>();
ErrorItem[] result = new ErrorItem[errors.Count - startindex];
errors.CopyTo(startindex, result, 0, result.Length);
return result;
}
#endregion
}
} }

View file

@ -1059,24 +1059,26 @@ namespace CodeImp.DoomBuilder.Properties {
return ((System.Drawing.Bitmap)(obj)); return ((System.Drawing.Bitmap)(obj));
} }
} }
/// <summary> /// <summary>
/// Sucht eine lokalisierte Ressource vom Typ System.Byte[]. /// Sucht eine lokalisierte Ressource vom Typ System.Byte[].
/// </summary> /// </summary>
internal static byte[] ScriptConstant { internal static System.Drawing.Bitmap ScriptConstant
{
get { get {
object obj = ResourceManager.GetObject("ScriptConstant", resourceCulture); object obj = ResourceManager.GetObject("ScriptConstant", resourceCulture);
return ((byte[])(obj)); return ((System.Drawing.Bitmap)(obj));
} }
} }
/// <summary> /// <summary>
/// Sucht eine lokalisierte Ressource vom Typ System.Byte[]. /// Sucht eine lokalisierte Ressource vom Typ System.Byte[].
/// </summary> /// </summary>
internal static byte[] ScriptError { internal static System.Drawing.Bitmap ScriptError
{
get { get {
object obj = ResourceManager.GetObject("ScriptError", resourceCulture); object obj = ResourceManager.GetObject("ScriptError", resourceCulture);
return ((byte[])(obj)); return ((System.Drawing.Bitmap)(obj));
} }
} }
@ -1089,14 +1091,15 @@ namespace CodeImp.DoomBuilder.Properties {
return ((System.Drawing.Bitmap)(obj)); return ((System.Drawing.Bitmap)(obj));
} }
} }
/// <summary> /// <summary>
/// Sucht eine lokalisierte Ressource vom Typ System.Byte[]. /// Sucht eine lokalisierte Ressource vom Typ System.Byte[].
/// </summary> /// </summary>
internal static byte[] ScriptKeyword { internal static System.Drawing.Bitmap ScriptKeyword
{
get { get {
object obj = ResourceManager.GetObject("ScriptKeyword", resourceCulture); object obj = ResourceManager.GetObject("ScriptKeyword", resourceCulture);
return ((byte[])(obj)); return ((System.Drawing.Bitmap)(obj));
} }
} }
@ -1109,14 +1112,15 @@ namespace CodeImp.DoomBuilder.Properties {
return ((System.Drawing.Bitmap)(obj)); return ((System.Drawing.Bitmap)(obj));
} }
} }
/// <summary> /// <summary>
/// Sucht eine lokalisierte Ressource vom Typ System.Byte[]. /// Sucht eine lokalisierte Ressource vom Typ System.Byte[].
/// </summary> /// </summary>
internal static byte[] ScriptSnippet { internal static System.Drawing.Bitmap ScriptSnippet
{
get { get {
object obj = ResourceManager.GetObject("ScriptSnippet", resourceCulture); object obj = ResourceManager.GetObject("ScriptSnippet", resourceCulture);
return ((byte[])(obj)); return ((System.Drawing.Bitmap)(obj));
} }
} }
@ -1329,7 +1333,35 @@ namespace CodeImp.DoomBuilder.Properties {
return ((System.Drawing.Bitmap)(obj)); return ((System.Drawing.Bitmap)(obj));
} }
} }
internal static System.Drawing.Bitmap TextIndent
{
get
{
object obj = ResourceManager.GetObject("TextIndent", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Bitmap TextUnindent
{
get
{
object obj = ResourceManager.GetObject("TextUnindent", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Bitmap TextWhitespace
{
get
{
object obj = ResourceManager.GetObject("TextWhitespace", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary> /// <summary>
/// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
/// </summary> /// </summary>

View file

@ -154,6 +154,9 @@
<data name="SaveAll" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="SaveAll" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SaveAll.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\SaveAll.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Update" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Update.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Monster2" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Monster2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Monster2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Monster2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -175,15 +178,27 @@
<data name="MixedThings" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="MixedThings" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\MixedThings.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\MixedThings.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="TextUnindent" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TextUnindent.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Marine" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Marine" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Marine.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Marine.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="InfoPanelCollapse" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="InfoPanelCollapse" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\InfoPanelCollapse.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\InfoPanelCollapse.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="mergegeometry" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\mergegeometry.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Splash3_small" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Splash3_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Splash3_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Splash3_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Group" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Group.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="TagStatistics" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TagStatistics.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="VisualVertices" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="VisualVertices" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\VisualVertices.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\VisualVertices.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -196,6 +211,9 @@
<data name="ScriptHelp" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="ScriptHelp" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ScriptHelp.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\ScriptHelp.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Light_animate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Light_animate.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="CommentSmile" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="CommentSmile" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\CommentSmile.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\CommentSmile.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -217,17 +235,14 @@
<data name="Redo" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Redo" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Redo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Redo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Status0" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Brightness" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Status0.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Brightness.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Model" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Model" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Model.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Model.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="mergegeometry" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Configuration" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\mergegeometry.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Configuration.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ScriptSnippet" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ScriptSnippet.xpm;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="CommentProblem" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="CommentProblem" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\CommentProblem.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\CommentProblem.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -238,8 +253,8 @@
<data name="MLogo" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="MLogo" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\MLogo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\MLogo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="UnknownImage" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Reload" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\UnknownImage.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Reload.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Paste" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Paste" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Paste.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Paste.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -248,8 +263,8 @@
<value>..\Resources\LightDisabled.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\LightDisabled.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="ScriptConstant" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="ScriptConstant" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ScriptConstant.xpm;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>..\Resources\ScriptConstant.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="FolderExplore" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="FolderExplore" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\FolderExplore.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\FolderExplore.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -265,12 +280,18 @@
<data name="CLogo" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="CLogo" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\CLogo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\CLogo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Copy.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="WarningOff" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="WarningOff" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\WarningOff.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\WarningOff.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="List" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="List" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\List.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\List.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="TextWhitespace" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TextWhitespace.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="LinedefColorPresets" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="LinedefColorPresets" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\LinedefColorPresets.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\LinedefColorPresets.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -286,8 +307,8 @@
<data name="Cursor" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Cursor" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Cursor.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Cursor.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Grid2_arrowup" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Preferences" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Grid2_arrowup.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Preferences.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Reset" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Reset" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Reset.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Reset.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -313,6 +334,12 @@
<data name="NewMap" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="NewMap" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\NewMap2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\NewMap2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="About" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\About.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="GridDecrease" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GridDecrease.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="SearchClear" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="SearchClear" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SearchClear.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\SearchClear.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -331,6 +358,9 @@
<data name="InfoLine" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="InfoLine" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\InfoLine.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\InfoLine.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Status10" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Status10.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="MissingTexture" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="MissingTexture" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\MissingTexture.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\MissingTexture.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -338,7 +368,7 @@
<value>..\Resources\ErrorLarge.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\ErrorLarge.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="ScriptError" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="ScriptError" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ScriptError.xpm;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>..\Resources\ScriptError.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Lightbulb" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Lightbulb" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Lightbulb.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Lightbulb.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -370,6 +400,9 @@
<data name="Model_selected" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Model_selected" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Model_selected.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Model_selected.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="GridDynamic" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GridDynamic.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Collapse" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Collapse" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Collapse.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Collapse.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -382,11 +415,11 @@
<data name="Unlink" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Unlink" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Unlink.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Unlink.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Status10" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="TextIndent" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Status10.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\TextIndent.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Properties" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Status0" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Properties.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Status0.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Script2" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Script2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Script2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Script2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -406,6 +439,9 @@
<data name="Hourglass" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Hourglass" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Hourglass.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Hourglass.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="GridIncrease" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GridIncrease.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Folder" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Folder" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Folder.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Folder.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -424,17 +460,20 @@
<data name="Status2" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Status2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Status2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Status2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Link" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Link" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Link.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Link.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Brightness" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="InfoPanelExpand" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Brightness.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\InfoPanelExpand.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="TagStatistics" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="ScriptSnippet" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TagStatistics.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\ScriptSnippet.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Add" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Properties" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Properties.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Test" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Test" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Test.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Test.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -442,8 +481,8 @@
<data name="Undo" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Undo" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Undo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Undo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="InfoPanelExpand" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="UnknownImage" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\InfoPanelExpand.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\UnknownImage.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Unpin" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Unpin" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Unpin.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Unpin.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -454,8 +493,14 @@
<data name="ViewTextureFloor" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="ViewTextureFloor" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ViewTextureFloor.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\ViewTextureFloor.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Light_animate" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Grid2_arrowup" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Light_animate.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Grid2_arrowup.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="GroupRemove" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GroupRemove.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Sky" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Sky.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Pin" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Pin" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Pin.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Pin.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -464,7 +509,7 @@
<value>..\Resources\ViewNormal.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\ViewNormal.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="ScriptKeyword" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="ScriptKeyword" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ScriptKeyword.xpm;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>..\Resources\ScriptKeyword.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="MissingThing" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="MissingThing" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\MissingThing.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\MissingThing.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -472,11 +517,14 @@
<data name="Monster3" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Monster3" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Monster3.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Monster3.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="SkySphere" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SkySphere.md3;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="DockerCollapse" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="DockerCollapse" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\DockerCollapse.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\DockerCollapse.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="Copy" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="GroupAdd" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Copy.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\GroupAdd.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="ViewBrightness" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="ViewBrightness" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ViewBrightness.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\ViewBrightness.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -511,45 +559,6 @@
<data name="Check" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Check" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Check.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Check.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="GridDynamic" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GridDynamic.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="About" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\About.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Configuration" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Configuration.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Preferences" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Preferences.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Reload" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Reload.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Update" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Update.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Group" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Group.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="GroupAdd" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GroupAdd.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="GroupRemove" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GroupRemove.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="GridDecrease" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GridDecrease.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="GridIncrease" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GridIncrease.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Sky" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Sky.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="SkySphere" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SkySphere.md3;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="zonebuilder" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="zonebuilder" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\zonebuilder.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\zonebuilder.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>

View file

@ -20,7 +20,6 @@ using System;
using System.Globalization; using System.Globalization;
using System.Drawing; using System.Drawing;
using SlimDX; using SlimDX;
using Configuration = CodeImp.DoomBuilder.IO.Configuration; using Configuration = CodeImp.DoomBuilder.IO.Configuration;
#endregion #endregion
@ -38,7 +37,7 @@ namespace CodeImp.DoomBuilder.Rendering
private const float DARK_ADDITION = -0.2f; private const float DARK_ADDITION = -0.2f;
// Palette size // Palette size
private const int NUM_COLORS = 49; private const int NUM_COLORS = 57;
public const int NUM_THING_COLORS = 20; public const int NUM_THING_COLORS = 20;
public const int THING_COLORS_OFFSET = 20; public const int THING_COLORS_OFFSET = 20;
@ -92,14 +91,22 @@ namespace CodeImp.DoomBuilder.Rendering
public const int NIGHTSCOLORMARE6 = 46; public const int NIGHTSCOLORMARE6 = 46;
public const int NIGHTSCOLORMARE7 = 47; public const int NIGHTSCOLORMARE7 = 47;
public const int NIGHTSCOLORMARE8 = 48; public const int NIGHTSCOLORMARE8 = 48;
public const int SCRIPTINDICATOR = 49; //mxd. Additional Script Editor colors
public const int SCRIPTBRACEHIGHLIGHT = 50;
public const int SCRIPTBADBRACEHIGHLIGHT = 51;
public const int SCRIPTWHITESPACE = 52;
public const int SCRIPTSELECTIONFORE = 53;
public const int SCRIPTSELECTIONBACK = 54;
public const int STRINGS = 55;
public const int INCLUDES = 56;
#endregion #endregion
#region ================== Variables #region ================== Variables
// Colors // Colors
private PixelColor[] colors; private readonly PixelColor[] colors;
private PixelColor[] brightcolors; private readonly PixelColor[] brightcolors;
private PixelColor[] darkcolors; private readonly PixelColor[] darkcolors;
// Color-correction table // Color-correction table
private byte[] correctiontable; private byte[] correctiontable;
@ -131,7 +138,13 @@ namespace CodeImp.DoomBuilder.Rendering
public PixelColor Selection3D { get { return colors[SELECTION3D]; } internal set { colors[SELECTION3D] = value; } } public PixelColor Selection3D { get { return colors[SELECTION3D]; } internal set { colors[SELECTION3D] = value; } }
public PixelColor ScriptBackground { get { return colors[SCRIPTBACKGROUND]; } internal set { colors[SCRIPTBACKGROUND] = value; } } public PixelColor ScriptBackground { get { return colors[SCRIPTBACKGROUND]; } internal set { colors[SCRIPTBACKGROUND] = value; } }
public PixelColor LineNumbers { get { return colors[LINENUMBERS]; } internal set { colors[LINENUMBERS] = value; } } public PixelColor ScriptIndicator { get { return colors[SCRIPTINDICATOR]; } internal set { colors[SCRIPTINDICATOR] = value; } }
public PixelColor ScriptBraceHighlight { get { return colors[SCRIPTBRACEHIGHLIGHT]; } internal set { colors[SCRIPTBRACEHIGHLIGHT] = value; } }
public PixelColor ScriptBadBraceHighlight { get { return colors[SCRIPTBADBRACEHIGHLIGHT]; } internal set { colors[SCRIPTBADBRACEHIGHLIGHT] = value; } }
public PixelColor ScriptWhitespace { get { return colors[SCRIPTWHITESPACE]; } internal set { colors[SCRIPTWHITESPACE] = value; } }
public PixelColor ScriptSelectionForeColor { get { return colors[SCRIPTSELECTIONFORE]; } internal set { colors[SCRIPTSELECTIONFORE] = value; } }
public PixelColor ScriptSelectionBackColor { get { return colors[SCRIPTSELECTIONBACK]; } internal set { colors[SCRIPTSELECTIONBACK] = value; } }
public PixelColor LineNumbers { get { return colors[LINENUMBERS]; } internal set { colors[LINENUMBERS] = value; } }
public PixelColor PlainText { get { return colors[PLAINTEXT]; } internal set { colors[PLAINTEXT] = value; } } public PixelColor PlainText { get { return colors[PLAINTEXT]; } internal set { colors[PLAINTEXT] = value; } }
public PixelColor Comments { get { return colors[COMMENTS]; } internal set { colors[COMMENTS] = value; } } public PixelColor Comments { get { return colors[COMMENTS]; } internal set { colors[COMMENTS] = value; } }
public PixelColor Keywords { get { return colors[KEYWORDS]; } internal set { colors[KEYWORDS] = value; } } public PixelColor Keywords { get { return colors[KEYWORDS]; } internal set { colors[KEYWORDS] = value; } }
@ -153,9 +166,9 @@ namespace CodeImp.DoomBuilder.Rendering
// Read all colors from config // Read all colors from config
for(int i = 0; i < NUM_COLORS; i++) for(int i = 0; i < NUM_COLORS; i++)
{ {
// Read color // Read color
colors[i] = PixelColor.FromInt(cfg.ReadSetting("colors.color" + i.ToString(CultureInfo.InvariantCulture), -16711872)); //mxd. changed default color from transparent to light-green colors[i] = PixelColor.FromInt(cfg.ReadSetting("colors.color" + i.ToString(CultureInfo.InvariantCulture), 0));
} }
// Set new colors // Set new colors
if(colors[THINGCOLOR00].ToInt() == 0) colors[THINGCOLOR00] = PixelColor.FromColor(Color.DimGray); if(colors[THINGCOLOR00].ToInt() == 0) colors[THINGCOLOR00] = PixelColor.FromColor(Color.DimGray);

View file

@ -109,24 +109,37 @@ namespace CodeImp.DoomBuilder.Rendering
} }
catch(Exception) catch(Exception)
{ {
// Compiling failed, try with debug information string debugerrors = string.Empty; //mxd
try
{ // Compiling failed, try with debug information
try
{
//mxd. Rewind before use! //mxd. Rewind before use!
fxdata.Seek(0, SeekOrigin.Begin); fxdata.Seek(0, SeekOrigin.Begin);
// Compile effect // Compile effect
fx = Effect.FromStream(General.Map.Graphics.Device, fxdata, null, null, null, ShaderFlags.Debug, null, out errors); fx = Effect.FromStream(General.Map.Graphics.Device, fxdata, null, null, null, ShaderFlags.Debug, null, out debugerrors);
if(!string.IsNullOrEmpty(errors)) if (!string.IsNullOrEmpty(debugerrors))
{ {
throw new Exception("Errors in effect file " + fxfile + ": " + errors); throw new Exception("Errors in effect file " + fxfile + ": " + debugerrors);
} }
} }
catch(Exception e) catch(Exception e)
{ {
// No debug information, just crash //mxd. Try to get something. Anything!
throw new Exception(e.GetType().Name + " while loading effect " + fxfile + ": " + e.Message + "\nInitial message: " + errors); string message;
} if (!string.IsNullOrEmpty(debugerrors))
message = e.Message + "\nInitial message (debug mode): \"" + debugerrors + "\"";
else if (!string.IsNullOrEmpty(errors))
message = e.Message + "\nInitial message: \"" + errors + "\"";
else
message = e.ToString();
if (string.IsNullOrEmpty(message)) message = "No initial message...";
// No debug information, just crash
throw new Exception(e.GetType().Name + " while loading effect " + fxfile + ": " + message);
}
} }
fxdata.Dispose(); fxdata.Dispose();

View file

@ -33,6 +33,8 @@ lexer3 // CPP-style, case-sensitive
7 = 4; // literal 7 = 4; // literal
16 = 2; // constants 16 = 2; // constants
37 = 5; // ident guides 37 = 5; // ident guides
6 = 6; // strings
9 = 7; // includes
keywordsindex = 0; keywordsindex = 0;
constantsindex = 1; constantsindex = 1;
@ -87,10 +89,10 @@ lexer35 // CPP-style, case-insensitive
7 = 4; // literal 7 = 4; // literal
16 = 2; // constants 16 = 2; // constants
37 = 5; // ident guides 37 = 5; // ident guides
6 = 6; // strings
9 = 7; // includes
keywordsindex = 0; keywordsindex = 0;
constantsindex = 1; constantsindex = 1;
snippetindex = 2; snippetindex = 2;
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 351 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View file

@ -42,24 +42,24 @@ namespace CodeImp.DoomBuilder.Windows
FillList(); FillList();
checkerrors.Start(); checkerrors.Start();
checkshow.Checked = General.Settings.ShowErrorsWindow; checkshow.Checked = General.Settings.ShowErrorsWindow;
//mxd grid.Focus(); //mxd
grid.Focus(); }
}
#endregion #endregion
#region ================== Methods #region ================== Methods
// This sets up the list // This sets up the list
private void FillList() private void FillList()
{ {
// Fill the list with the items we don't have yet // Fill the list with the items we don't have yet
General.ErrorLogger.HasChanged = false; General.ErrorLogger.HasChanged = false;
List<ErrorItem> errors = General.ErrorLogger.GetErrors();
int startindex = grid.Rows.Count; //mxd. Rewritten to get only the new items from the ErrorLogger
for(int i = startindex; i < errors.Count; i++) int startindex = grid.Rows.Count;
{ IEnumerable<ErrorItem> errors = General.ErrorLogger.GetErrors(startindex);
ErrorItem e = errors[i]; foreach (ErrorItem e in errors)
{
Image icon = (e.type == ErrorType.Error) ? Properties.Resources.ErrorLarge : Properties.Resources.WarningLarge; Image icon = (e.type == ErrorType.Error) ? Properties.Resources.ErrorLarge : Properties.Resources.WarningLarge;
int index = grid.Rows.Add(); int index = grid.Rows.Add();
DataGridViewRow row = grid.Rows[index]; DataGridViewRow row = grid.Rows[index];
@ -145,7 +145,6 @@ namespace CodeImp.DoomBuilder.Windows
private void ErrorsForm_Shown(object sender, EventArgs e) private void ErrorsForm_Shown(object sender, EventArgs e)
{ {
if(grid.Rows.Count > 0) grid.Rows[0].Selected = false; if(grid.Rows.Count > 0) grid.Rows[0].Selected = false;
} }
private void grid_CellContentClick(object sender, DataGridViewCellEventArgs e) private void grid_CellContentClick(object sender, DataGridViewCellEventArgs e)