From f40a8163ffb942ebc45cb4fb0a63c1d8dfa65152 Mon Sep 17 00:00:00 2001 From: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> Date: Thu, 15 Oct 2020 18:22:52 +0100 Subject: [PATCH] Codebase Cleanup - 2020-09-27 (#14472) * Codebase Cleanup - 2020-09-27 * Endings * Forgot meta * Farie Tweaks --- DLLSocket/DLLSocket.cbp | 50 -- DLLSocket/compile.sh | 1 - DLLSocket/main.cpp | 133 ----- DLLSocket/server_controller.py | 51 -- _maps/map_files/MetaStation/z2.dmm | 2 +- _maps/map_files/cyberiad/z2.dmm | 2 +- .../{Dynamic areas.dm => dynamic_areas.dm} | 0 ...pace Station 13 areas.dm => ss13_areas.dm} | 0 .../devil_agent.dm | 0 code/game/gamemodes/heist/heist.dm | 6 +- .../game/objects/items/stacks/stack_recipe.dm | 8 +- code/game/objects/items/weapons/fireworks.dm | 67 --- code/game/objects/random/random.dm | 1 + .../admin/{DB ban => db_ban}/functions.dm | 0 .../{client defines.dm => client_defines.dm} | 0 .../{client procs.dm => client_procs.dm} | 0 code/modules/economy/POS.dm | 537 ------------------ ...ntication.dm => keycard_authentication.dm} | 0 ...{security levels.dm => security_levels.dm} | 0 paradise.dme | 18 +- .../UnstandardnessTestForDM.sln | 20 - .../UnstandardnessTestForDM.suo | Bin 23040 -> 0 bytes .../UnstandardnessTestForDM/Form1.Designer.cs | 160 ------ .../UnstandardnessTestForDM/Form1.cs | 484 ---------------- .../UnstandardnessTestForDM/Form1.resx | 120 ---- .../UnstandardnessTestForDM/Program.cs | 21 - .../Properties/AssemblyInfo.cs | 36 -- .../Properties/Resources.Designer.cs | 71 --- .../Properties/Resources.resx | 117 ---- .../Properties/Settings.Designer.cs | 30 - .../Properties/Settings.settings | 7 - .../UnstandardnessTestForDM.csproj | 87 --- .../bin/Debug/UnstandardnessTestForDM.exe | Bin 17920 -> 0 bytes .../bin/Debug/UnstandardnessTestForDM.pdb | Bin 38400 -> 0 bytes .../Debug/UnstandardnessTestForDM.vshost.exe | Bin 11600 -> 0 bytes ...nstandardnessTestForDM.vshost.exe.manifest | 11 - ...gnTimeResolveAssemblyReferencesInput.cache | Bin 6426 -> 0 bytes .../x86/Debug/GenerateResource.read.1.tlog | Bin 416 -> 0 bytes .../x86/Debug/GenerateResource.write.1.tlog | Bin 994 -> 0 bytes .../UnstandardnessTestForDM.Form1.resources | Bin 180 -> 0 bytes ...ssTestForDM.Properties.Resources.resources | Bin 180 -> 0 bytes ...dnessTestForDM.csproj.FileListAbsolute.txt | 18 - .../obj/x86/Debug/UnstandardnessTestForDM.exe | Bin 17920 -> 0 bytes .../obj/x86/Debug/UnstandardnessTestForDM.pdb | Bin 38400 -> 0 bytes .../Input.txt | 0 .../Main.cpp | 0 .../Output.txt | 0 .../RuntimeCondenser.exe | Bin 48 files changed, 18 insertions(+), 2040 deletions(-) delete mode 100644 DLLSocket/DLLSocket.cbp delete mode 100755 DLLSocket/compile.sh delete mode 100644 DLLSocket/main.cpp delete mode 100644 DLLSocket/server_controller.py rename code/game/area/{Dynamic areas.dm => dynamic_areas.dm} (100%) rename code/game/area/{Space Station 13 areas.dm => ss13_areas.dm} (100%) rename code/game/gamemodes/devil/{devil agent => devil_agent}/devil_agent.dm (100%) delete mode 100644 code/game/objects/items/weapons/fireworks.dm rename code/modules/admin/{DB ban => db_ban}/functions.dm (100%) rename code/modules/client/{client defines.dm => client_defines.dm} (100%) rename code/modules/client/{client procs.dm => client_procs.dm} (100%) delete mode 100644 code/modules/economy/POS.dm rename code/modules/security_levels/{keycard authentication.dm => keycard_authentication.dm} (100%) rename code/modules/security_levels/{security levels.dm => security_levels.dm} (100%) delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM.sln delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM.suo delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.Designer.cs delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.cs delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.resx delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Program.cs delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/AssemblyInfo.cs delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.Designer.cs delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.resx delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.Designer.cs delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.settings delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/UnstandardnessTestForDM.csproj delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin/Debug/UnstandardnessTestForDM.exe delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin/Debug/UnstandardnessTestForDM.pdb delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin/Debug/UnstandardnessTestForDM.vshost.exe delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin/Debug/UnstandardnessTestForDM.vshost.exe.manifest delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/GenerateResource.read.1.tlog delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/GenerateResource.write.1.tlog delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.Form1.resources delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.Properties.Resources.resources delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.csproj.FileListAbsolute.txt delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.exe delete mode 100644 tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.pdb rename tools/{Runtime Condenser => runtimeCondensor}/Input.txt (100%) rename tools/{Runtime Condenser => runtimeCondensor}/Main.cpp (100%) rename tools/{Runtime Condenser => runtimeCondensor}/Output.txt (100%) rename tools/{Runtime Condenser => runtimeCondensor}/RuntimeCondenser.exe (100%) diff --git a/DLLSocket/DLLSocket.cbp b/DLLSocket/DLLSocket.cbp deleted file mode 100644 index 6415a5ebd67..00000000000 --- a/DLLSocket/DLLSocket.cbp +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - diff --git a/DLLSocket/compile.sh b/DLLSocket/compile.sh deleted file mode 100755 index 0ff309bdb9f..00000000000 --- a/DLLSocket/compile.sh +++ /dev/null @@ -1 +0,0 @@ -g++ -static -shared -O3 -fPIC main.cpp -o DLLSocket.so diff --git a/DLLSocket/main.cpp b/DLLSocket/main.cpp deleted file mode 100644 index e3aafb8791a..00000000000 --- a/DLLSocket/main.cpp +++ /dev/null @@ -1,133 +0,0 @@ -// OS-specific networking includes -// ------------------------------- -#ifdef __WIN32 - #include - typedef int socklen_t; -#else - extern "C" { - #include - #include - #include - #include - #include - #include - #include - #include - } - - typedef int SOCKET; - typedef sockaddr_in SOCKADDR_IN; - typedef sockaddr SOCKADDR; - #define SOCKET_ERROR -1 -#endif - -// Socket used for all communications -SOCKET sock; - -// Address of the remote server -SOCKADDR_IN addr; - -// Buffer used to return dynamic strings to the caller -#define BUFFER_SIZE 1024 -char return_buffer[BUFFER_SIZE]; - -// exposed functions -// ------------------------------ - -const char* SUCCESS = "1\0"; // string representing success - -#ifdef __WIN32 - #define DLL_EXPORT __declspec(dllexport) -#else - #define DLL_EXPORT __attribute__ ((visibility ("default"))) -#endif - -// arg1: ip(in the xx.xx.xx.xx format) -// arg2: port(a short) -// return: NULL on failure, SUCCESS otherwise -extern "C" DLL_EXPORT const char* establish_connection(int n, char *v[]) -{ - // extract args - // ------------ - if(n < 2) return 0; - const char* ip = v[0]; - const char* port_s = v[1]; - unsigned short port = atoi(port_s); - - // set up network stuff - // -------------------- - #ifdef __WIN32 - WSADATA wsa; - WSAStartup(MAKEWORD(2,0),&wsa); - #endif - sock = socket(AF_INET,SOCK_DGRAM,0); - - // make the socket non-blocking - // ---------------------------- - #ifdef __WIN32 - unsigned long iMode=1; - ioctlsocket(sock,FIONBIO,&iMode); - #else - fcntl(sock, F_SETFL, O_NONBLOCK); - #endif - - // establish a connection to the server - // ------------------------------------ - memset(&addr,0,sizeof(SOCKADDR_IN)); - addr.sin_family=AF_INET; - addr.sin_port=htons(port); - - // convert the string representation of the ip to a byte representation - addr.sin_addr.s_addr=inet_addr(ip); - - return SUCCESS; -} - -// arg1: string message to send -// return: NULL on failure, SUCCESS otherwise -extern "C" DLL_EXPORT const char* send_message(int n, char *v[]) -{ - // extract the args - if(n < 1) return 0; - const char* msg = v[0]; - - // send the message - int rc = sendto(sock,msg,strlen(msg),0,(SOCKADDR*)&addr,sizeof(SOCKADDR)); - - // check for errors - if (rc != -1) { - return SUCCESS; - } - else { - return 0; - } -} - -// no args -// return: message if any received, NULL otherwise -extern "C" DLL_EXPORT const char* recv_message(int n, char *v[]) -{ - SOCKADDR_IN sender; // we will store the sender address here - - socklen_t sender_byte_length = sizeof(sender); - - // Try receiving messages until we receive one that's valid, or there are no more messages - while(1) { - int rc = recvfrom(sock, return_buffer, BUFFER_SIZE,0,(SOCKADDR*) &sender,&sender_byte_length); - if(rc > 0) { - // we could read something - - if(sender.sin_addr.s_addr != addr.sin_addr.s_addr) { - continue; // not our connection, ignore and try again - } else { - return_buffer[rc] = 0; // 0-terminate the string - return return_buffer; - } - } - else { - break; // no more messages, stop trying to receive - } - } - - return 0; -} diff --git a/DLLSocket/server_controller.py b/DLLSocket/server_controller.py deleted file mode 100644 index 943f37f6777..00000000000 --- a/DLLSocket/server_controller.py +++ /dev/null @@ -1,51 +0,0 @@ -import subprocess -import socket -import urlparse - -UDP_IP="127.0.0.1" -UDP_PORT=8019 - -sock = socket.socket( socket.AF_INET, # Internet - socket.SOCK_DGRAM ) # UDP -sock.bind( (UDP_IP,UDP_PORT) ) - -last_ticker_state = None - -def handle_message(data, addr): - global last_ticker_state - - params = urlparse.parse_qs(data) - print(data) - - try: - if params["type"][0] == "log" and str(params["log"][0]) and str(params["message"][0]): - open(params["log"][0],"a+").write(params["message"][0]+"\n") - except IOError: - pass - except KeyError: - pass - - try: - if params["type"][0] == "ticker_state" and str(params["message"][0]): - last_ticker_state = str(params["message"][0]) - except KeyError: - pass - - try: - if params["type"][0] == "startup" and last_ticker_state: - open("crashlog.txt","a+").write("Server exited, last ticker state was: "+last_ticker_state+"\n") - except KeyError: - pass - -sock.settimeout(60*6) # 10 minute timeout -while True: - try: - data, addr = sock.recvfrom( 1024 ) # buffer size is 1024 bytes - handle_message(data,addr) - except socket.timeout: - # try to start the server again - print("Server timed out.. attempting restart.") - if last_ticker_state: - open("crashmsg.txt","a+").write("Server crashed, trying to reboot. last ticker state: "+last_ticker_state+"\n") - subprocess.call("killall -9 DreamDaemon") - subprocess.call("./start") \ No newline at end of file diff --git a/_maps/map_files/MetaStation/z2.dmm b/_maps/map_files/MetaStation/z2.dmm index fe4c3a6e2e3..79367d5c073 100644 --- a/_maps/map_files/MetaStation/z2.dmm +++ b/_maps/map_files/MetaStation/z2.dmm @@ -1312,7 +1312,7 @@ }, /area/vox_station) "dA" = ( -/obj/vox/win_button, +/obj/machinery/vox_win_button, /turf/unsimulated/floor{ tag = "icon-light_on"; icon_state = "light_on" diff --git a/_maps/map_files/cyberiad/z2.dmm b/_maps/map_files/cyberiad/z2.dmm index 987c1ee28b4..4950ddf2763 100644 --- a/_maps/map_files/cyberiad/z2.dmm +++ b/_maps/map_files/cyberiad/z2.dmm @@ -109,7 +109,7 @@ }, /area/holodeck/source_wildlife) "ay" = ( -/obj/vox/win_button, +/obj/machinery/vox_win_button, /turf/unsimulated/floor/vox{ icon_state = "light_on" }, diff --git a/code/game/area/Dynamic areas.dm b/code/game/area/dynamic_areas.dm similarity index 100% rename from code/game/area/Dynamic areas.dm rename to code/game/area/dynamic_areas.dm diff --git a/code/game/area/Space Station 13 areas.dm b/code/game/area/ss13_areas.dm similarity index 100% rename from code/game/area/Space Station 13 areas.dm rename to code/game/area/ss13_areas.dm diff --git a/code/game/gamemodes/devil/devil agent/devil_agent.dm b/code/game/gamemodes/devil/devil_agent/devil_agent.dm similarity index 100% rename from code/game/gamemodes/devil/devil agent/devil_agent.dm rename to code/game/gamemodes/devil/devil_agent/devil_agent.dm diff --git a/code/game/gamemodes/heist/heist.dm b/code/game/gamemodes/heist/heist.dm index f95702e7f28..ff4d1720de6 100644 --- a/code/game/gamemodes/heist/heist.dm +++ b/code/game/gamemodes/heist/heist.dm @@ -287,17 +287,17 @@ GLOBAL_LIST_EMPTY(cortical_stacks) //Stacks for 'leave nobody behind' objective. return ..() -/obj/vox/win_button +/obj/machinery/vox_win_button name = "shoal contact computer" desc = "Used to contact the Vox Shoal, generally to arrange for pickup." icon = 'icons/obj/computer.dmi' icon_state = "tcstation" -/obj/vox/win_button/New() +/obj/machinery/vox_win_button/New() . = ..() overlays += icon('icons/obj/computer.dmi', "syndie") -/obj/vox/win_button/attack_hand(mob/user) +/obj/machinery/vox_win_button/attack_hand(mob/user) if(!GAMEMODE_IS_HEIST || (world.time < 10 MINUTES)) //has to be heist, and at least ten minutes into the round to_chat(user, "\The [src] does not appear to have a connection.") return 0 diff --git a/code/game/objects/items/stacks/stack_recipe.dm b/code/game/objects/items/stacks/stack_recipe.dm index 2a2e91ef599..51970297281 100644 --- a/code/game/objects/items/stacks/stack_recipe.dm +++ b/code/game/objects/items/stacks/stack_recipe.dm @@ -24,27 +24,27 @@ src.on_floor = on_floor src.window_checks = window_checks -/datum/stack_recipe/proc/post_build(var/obj/item/stack/S, var/obj/result) +/datum/stack_recipe/proc/post_build(obj/item/stack/S, obj/result) return /* Special Recipes */ /datum/stack_recipe/cable_restraints -/datum/stack_recipe/cable_restraints/post_build(var/obj/item/stack/S, var/obj/result) +/datum/stack_recipe/cable_restraints/post_build(obj/item/stack/S, obj/result) if(istype(result, /obj/item/restraints/handcuffs/cable)) result.color = S.color ..() /datum/stack_recipe/dangerous -/datum/stack_recipe/dangerous/post_build(/obj/item/stack/S, /obj/result) +/datum/stack_recipe/dangerous/post_build(obj/item/stack/S, obj/result) var/turf/targ = get_turf(usr) message_admins("[title] made by [key_name_admin(usr)](?) in [get_area(usr)] [ADMIN_COORDJMP(targ)]!",0,1) log_game("[title] made by [key_name_admin(usr)] at [get_area(usr)] [targ.x], [targ.y], [targ.z].") ..() /datum/stack_recipe/rods -/datum/stack_recipe/rods/post_build(var/obj/item/stack/S, var/obj/result) +/datum/stack_recipe/rods/post_build(obj/item/stack/S, obj/result) if(istype(result, /obj/item/stack/rods)) var/obj/item/stack/rods/R = result R.update_icon() diff --git a/code/game/objects/items/weapons/fireworks.dm b/code/game/objects/items/weapons/fireworks.dm deleted file mode 100644 index 906c4f3fef7..00000000000 --- a/code/game/objects/items/weapons/fireworks.dm +++ /dev/null @@ -1,67 +0,0 @@ -/obj/item/firework - name = "fireworks" - icon = 'icons/obj/fireworks.dmi' - icon_state = "rocket_0" - var/litzor = 0 - var/datum/effect_system/sparkle_spread/S - -/obj/item/firework/attackby(obj/item/W,mob/user, params) - if(litzor) - return - if(is_hot(W)) - for(var/mob/M in viewers(user)) - to_chat(M, "[user] lits \the [src]") - litzor = 1 - icon_state = "rocket_1" - S = new() - S.set_up(5,0,src.loc) - sleep(30) - if(ismob(src.loc) || isobj(src.loc)) - S.attach(src.loc) - S.start() - qdel(src) - -/obj/item/sparkler - name = "sparkler" - icon = 'icons/obj/fireworks.dmi' - icon_state = "sparkler_0" - var/litzor = 0 - -/obj/item/sparkler/attackby(obj/item/W,mob/user, params) - if(litzor) - return - if(is_hot(W)) - for(var/mob/M in viewers(user)) - to_chat(M, "[user] lits \the [src]") - litzor = 1 - icon_state = "sparkler_1" - var/b = rand(5,9) - for(var/xy, xy<=b, xy++) - do_sparks(1, 0, loc) - sleep(10) - qdel(src) - -// TODO: Refactor this into a proper locker or something -// Or just axe the system. This code is 7 years old -/obj/crate/fireworks - name = "Fireworks!" - -/obj/crate/fireworks/New() - new /obj/item/sparkler(src) - new /obj/item/sparkler(src) - new /obj/item/sparkler(src) - new /obj/item/sparkler(src) - new /obj/item/sparkler(src) - new /obj/item/sparkler(src) - new /obj/item/sparkler(src) - new /obj/item/sparkler(src) - new /obj/item/firework(src) - new /obj/item/firework(src) - new /obj/item/firework(src) - new /obj/item/firework(src) - new /obj/item/firework(src) - new /obj/item/firework(src) - new /obj/item/firework(src) - new /obj/item/firework(src) - new /obj/item/firework(src) - new /obj/item/firework(src) diff --git a/code/game/objects/random/random.dm b/code/game/objects/random/random.dm index 52b70590ee4..715c3754fc6 100644 --- a/code/game/objects/random/random.dm +++ b/code/game/objects/random/random.dm @@ -1,3 +1,4 @@ +// TODO: Refactor these into spawners /obj/random name = "Random Object" desc = "This item type is used to spawn random objects at round-start" diff --git a/code/modules/admin/DB ban/functions.dm b/code/modules/admin/db_ban/functions.dm similarity index 100% rename from code/modules/admin/DB ban/functions.dm rename to code/modules/admin/db_ban/functions.dm diff --git a/code/modules/client/client defines.dm b/code/modules/client/client_defines.dm similarity index 100% rename from code/modules/client/client defines.dm rename to code/modules/client/client_defines.dm diff --git a/code/modules/client/client procs.dm b/code/modules/client/client_procs.dm similarity index 100% rename from code/modules/client/client procs.dm rename to code/modules/client/client_procs.dm diff --git a/code/modules/economy/POS.dm b/code/modules/economy/POS.dm deleted file mode 100644 index 60b774a2a3d..00000000000 --- a/code/modules/economy/POS.dm +++ /dev/null @@ -1,537 +0,0 @@ -/************************ -* Point Of Sale -* -* Takes cash or credit. -*************************/ - -/line_item - parent_type = /datum - - var/name = "" - var/price = 0 // Per unit - var/units = 0 - -GLOBAL_VAR_INIT(current_pos_id, 1) -GLOBAL_VAR_INIT(pos_sales, 0) - -#define RECEIPT_HEADER {" - - - - -"} -#define POS_HEADER {" - - - - -"} - -#define POS_TAX_RATE 0.10 // 10% - -#define POS_SCREEN_LOGIN 0 -#define POS_SCREEN_ORDER 1 -#define POS_SCREEN_FINALIZE 2 -#define POS_SCREEN_PRODUCTS 3 -#define POS_SCREEN_IMPORT 4 -#define POS_SCREEN_EXPORT 5 -#define POS_SCREEN_SETTINGS 6 -/obj/machinery/pos - icon = 'icons/obj/machines/pos.dmi' - icon_state = "pos" - density = 0 - name = "point of sale" - desc = "Also known as a cash register, or, more commonly, \"robbery magnet\"." - - var/id = 0 - var/sales = 0 - var/department - var/mob/logged_in - var/datum/money_account/linked_account - - var/credits_held = 0 - var/credits_needed = 0 - - var/list/products = list() // name = /line_item - var/list/line_items = list() // # = /line_item - - var/screen=POS_SCREEN_LOGIN - -/obj/machinery/pos/New() - ..() - id = GLOB.current_pos_id++ - if(department) - linked_account = GLOB.department_accounts[department] - else - linked_account = GLOB.station_account - update_icon() - -/obj/machinery/pos/proc/AddToOrder(var/name, var/units) - if(!(name in products)) - return 0 - var/line_item/LI = products[name] - var/line_item/LIC = new - LIC.name=LI.name - LIC.price=LI.price - LIC.units=units - line_items.Add(LIC) - -/obj/machinery/pos/proc/RemoveFromOrder(var/order_id) - line_items.Cut(order_id,order_id+1) - -/obj/machinery/pos/proc/NewOrder() - line_items.Cut() - -/obj/machinery/pos/proc/PrintReceipt(var/order_id) - var/receipt = {"[RECEIPT_HEADER]
POINT OF SALE #[id]
- Paying to: [linked_account.owner_name]
- Cashier: [logged_in]
"} - if(myArea) - receipt += myArea.name - receipt += "
" - receipt += {"
-
[station_time_timestamp()], [GLOB.current_date_string]
- - - - - - - "} - var/subtotal=0 - for(var/i=1;i<=line_items.len;i++) - var/line_item/LI = line_items[i] - var/linetotal=LI.units*LI.price - receipt += "" - subtotal += linetotal - var/taxes = POS_TAX_RATE*subtotal - receipt += {" - - - - - - "} - receipt += {" - - "} - receipt += "
ItemAmountUnit PriceLine Total
[LI.name][LI.units]$[num2septext(LI.price)]$[num2septext(linetotal)]
SUBTOTAL$[num2septext(subtotal)]
TAXES$[num2septext(taxes)]
TOTAL$[num2septext(taxes+subtotal)] -
" - - playsound(loc, 'sound/goonstation/machines/printer_thermal.ogg', 50, 1) - var/obj/item/paper/P = new(loc) - P.name="Receipt #[id]-[++sales]" - P.info=receipt - - P = new(loc) - P.name="Receipt #[id]-[sales] (Cashier Copy)" - P.info=receipt - - -/obj/machinery/pos/proc/LoginScreen() - return "
Please swipe ID to log in.
" - -/obj/machinery/pos/proc/OrderScreen() - var/receipt = {"
- POS Info - POINT OF SALE #[id]
- Paying to: [linked_account.owner_name]
- Cashier: [logged_in]
"} - if(myArea) - receipt += myArea.name - receipt += "
" - receipt += {"
Order Data -
- - - - - - - - - "} - var/subtotal=0 - if(line_items.len>0) - for(var/i=1;i<=line_items.len;i++) - var/line_item/LI = line_items[i] - var/linetotal=LI.units*LI.price - receipt += {" - - - - - - "} - subtotal += linetotal - var/taxes = POS_TAX_RATE*subtotal - var/presets = "(No presets available)" - if(products.len>0) - presets = {"" - receipt += {" - - - - - - - - - - - "} - receipt += {" - - "} - receipt += {"
ItemAmountUnit PriceLine Total...
[LI.name][LI.units]$[num2septext(LI.price)]$[num2septext(linetotal)]×
[presets] units
SUBTOTAL$[num2septext(subtotal)]
TAXES$[num2septext(taxes)]
TOTAL$[num2septext(taxes+subtotal)] -
- - -
-
"} - return receipt - -/obj/machinery/pos/proc/ProductsScreen() - var/dat={"
Product List -
- - - - - - - - "} - for(var/i in products) - var/line_item/LI = products[i] - dat += {" - - - - - "} - dat += {"
ItemUnit Price# Sold...
[LI.name]$[num2septext(LI.price)][LI.units]×
- New Product:
-
- $
-
- Import | Export -
-
"} - return dat - -/obj/machinery/pos/proc/ExportScreen() - var/dat={"
Export Products as CSV - - OK -
"} - return dat - -/obj/machinery/pos/proc/ImportScreen() - var/dat={"
- Import Products as CSV -
- - -

Data must be in the form of a CSV, with no headers or quotation marks.

-

First column must be product names, second must be prices as an unformatted number (####.##)

-

Deviations from this format will result in your import being rejected.

- -
-
"} - return dat - -/obj/machinery/pos/proc/FinalizeScreen() - return "
Waiting for Credit
Cancel
" - -/obj/machinery/pos/proc/SettingsScreen() - var/dat={"
- -
- Account Settings -
- Payable Account: -
-
-
- Locality Settings -
- Tax Rate: % (LOCKED) -
-
- -
"} - return dat - -/obj/machinery/pos/update_icon() - overlays = 0 - if(stat & (NOPOWER|BROKEN)) return - if(logged_in) - overlays += "pos-working" - else - overlays += "pos-standby" - -/obj/machinery/pos/attack_hand(var/mob/user) - user.set_machine(src) - var/logindata="" - if(logged_in) - logindata={"[logged_in.name]"} - var/dat = POS_HEADER + {" - "} - switch(screen) - if(POS_SCREEN_LOGIN) dat += LoginScreen() - if(POS_SCREEN_ORDER) dat += OrderScreen() - if(POS_SCREEN_FINALIZE) dat += FinalizeScreen() - if(POS_SCREEN_PRODUCTS) dat += ProductsScreen() - if(POS_SCREEN_EXPORT) dat += ExportScreen() - if(POS_SCREEN_IMPORT) dat += ImportScreen() - if(POS_SCREEN_SETTINGS) dat += SettingsScreen() - - dat += "" - // END AUTOFIX - user << browse(dat, "window=pos") - onclose(user, "pos") - return - -/obj/machinery/pos/proc/say(var/text) - src.visible_message("[bicon(src)] [name] states, \"[text]\"") - -/obj/machinery/pos/Topic(var/href, var/list/href_list) - if(..(href,href_list)) return - if("logout" in href_list) - if(alert(src, "You sure you want to log out?", "Confirm", "Yes", "No")!="Yes") return - logged_in=null - screen=POS_SCREEN_LOGIN - update_icon() - src.attack_hand(usr) - return - if(usr != logged_in) - to_chat(usr, "[logged_in.name] is already logged in. You cannot use this machine until they log out.") - return - if("act" in href_list) - switch(href_list["act"]) - if("Reset") - NewOrder() - screen=POS_SCREEN_ORDER - if("Finalize Sale") - var/subtotal=0 - if(line_items.len>0) - for(var/i=1;i<=line_items.len;i++) - var/line_item/LI = line_items[i] - subtotal += LI.units*LI.price - var/taxes = POS_TAX_RATE*subtotal - credits_needed=taxes+subtotal - say("Your total is $[num2septext(credits_needed)]. Please insert credit chips or swipe your ID.") - screen=POS_SCREEN_FINALIZE - if("Add Product") - var/line_item/LI = new - LI.name=sanitize(href_list["name"]) - LI.price=text2num(href_list["price"]) - products["[products.len+1]"]=LI - if("Add to Order") - AddToOrder(href_list["preset"],text2num(href_list["units"])) - if("Add Products") - for(var/list/line in splittext(href_list["csv"],"\n")) - var/list/cells = splittext(line,",") - if(cells.len<2) - to_chat(usr, "The CSV must have at least two columns: Product Name, followed by Price (as a number).") - src.attack_hand(usr) - return - var/line_item/LI = new - LI.name=sanitize(cells[1]) - LI.price=text2num(cells[2]) - products["[products.len+1]"]=LI - if("Export Products") - screen=POS_SCREEN_EXPORT - if("Import Products") - screen=POS_SCREEN_IMPORT - if("Save Settings") - var/datum/money_account/new_linked_account = get_money_account(text2num(href_list["payableto"]),z) - if(!new_linked_account) - to_chat(usr, "Unable to link new account.") - else - linked_account = new_linked_account - screen=POS_SCREEN_SETTINGS - else if("screen" in href_list) - screen=text2num(href_list["screen"]) - else if("rmproduct" in href_list) - products.Remove(href_list["rmproduct"]) - else if("removefromorder" in href_list) - RemoveFromOrder(text2num(href_list["removefromorder"])) - else if("setunits" in href_list) - var/lid = text2num(href_list["setunits"]) - var/newunits = input(usr,"Enter the units sold.") as num - if(!newunits) return - var/line_item/LI = line_items[lid] - LI.units = newunits - line_items[lid]=LI - else if("setpname" in href_list) - var/newtext = sanitize(input(usr,"Enter the product's name.")) - if(!newtext) return - var/pid = href_list["setpname"] - var/line_item/LI = products[pid] - LI.name = newtext - products[pid]=LI - else if("setprice" in href_list) - var/newprice = input(usr,"Enter the product's price.") as num - if(!newprice) return - var/pid = href_list["setprice"] - var/line_item/LI = products[pid] - LI.price = newprice - products[pid]=LI - src.attack_hand(usr) - -/obj/machinery/pos/attackby(var/atom/movable/A, var/mob/user, params) - if(istype(A,/obj/item/card/id)) - var/obj/item/card/id/I = A - if(!logged_in) - user.visible_message("The machine beeps, and logs you in","You hear a beep.") - logged_in = user - screen=POS_SCREEN_ORDER - update_icon() - src.attack_hand(user) //why'd you use usr nexis, why - return - else - if(!linked_account) - visible_message("The machine buzzes, and flashes \"NO LINKED ACCOUNT\" on the screen.","You hear a buzz.") - flick(src,"pos-error") - return - if(screen!=POS_SCREEN_FINALIZE) - visible_message("The machine buzzes.","You hear a buzz.") - flick(src,"pos-error") - return - var/datum/money_account/acct = get_card_account(I) - if(!acct) - visible_message("The machine buzzes, and flashes \"NO ACCOUNT\" on the screen.","You hear a buzz.") - flick(src,"pos-error") - return - if(credits_needed > acct.money) - visible_message("The machine buzzes, and flashes \"NOT ENOUGH FUNDS\" on the screen.","You hear a buzz.") - flick(src,"pos-error") - return - visible_message("The machine beeps, and begins printing a receipt","You hear a beep.") - PrintReceipt() - NewOrder() - acct.charge(credits_needed,linked_account,"Purchase at POS #[id].") - credits_needed=0 - screen=POS_SCREEN_ORDER - else if(istype(A, /obj/item/stack/spacecash)) - if(!linked_account) - visible_message("The machine buzzes, and flashes \"NO LINKED ACCOUNT\" on the screen.","You hear a buzz.") - flick(src,"pos-error") - return - if(!logged_in || screen!=POS_SCREEN_FINALIZE) - visible_message("The machine buzzes.","You hear a buzz.") - flick(src,"pos-error") - return - var/obj/item/stack/spacecash/C = A - credits_held += C.amount - if(credits_held >= credits_needed) - visible_message("The machine beeps, and begins printing a receipt","You hear a beep and the sound of paper being shredded.") - PrintReceipt() - NewOrder() - credits_held -= credits_needed - credits_needed=0 - screen=POS_SCREEN_ORDER - if(credits_held) - new /obj/item/stack/spacecash(loc, credits_held) - credits_held=0 - return - return ..() diff --git a/code/modules/security_levels/keycard authentication.dm b/code/modules/security_levels/keycard_authentication.dm similarity index 100% rename from code/modules/security_levels/keycard authentication.dm rename to code/modules/security_levels/keycard_authentication.dm diff --git a/code/modules/security_levels/security levels.dm b/code/modules/security_levels/security_levels.dm similarity index 100% rename from code/modules/security_levels/security levels.dm rename to code/modules/security_levels/security_levels.dm diff --git a/paradise.dme b/paradise.dme index ef51ec6d3a7..4352a07ef6c 100644 --- a/paradise.dme +++ b/paradise.dme @@ -469,8 +469,8 @@ #include "code\game\world.dm" #include "code\game\area\ai_monitored.dm" #include "code\game\area\areas.dm" -#include "code\game\area\Dynamic areas.dm" -#include "code\game\area\Space Station 13 areas.dm" +#include "code\game\area\dynamic_areas.dm" +#include "code\game\area\ss13_areas.dm" #include "code\game\area\areas\depot-areas.dm" #include "code\game\area\areas\mining.dm" #include "code\game\area\areas\ruins\lavaland.dm" @@ -548,7 +548,7 @@ #include "code\game\gamemodes\devil\game_mode.dm" #include "code\game\gamemodes\devil\objectives.dm" #include "code\game\gamemodes\devil\contracts\friend.dm" -#include "code\game\gamemodes\devil\devil agent\devil_agent.dm" +#include "code\game\gamemodes\devil\devil_agent\devil_agent.dm" #include "code\game\gamemodes\devil\imp\imp.dm" #include "code\game\gamemodes\devil\true_devil\_true_devil.dm" #include "code\game\gamemodes\devil\true_devil\inventory.dm" @@ -963,7 +963,6 @@ #include "code\game\objects\items\weapons\dnascrambler.dm" #include "code\game\objects\items\weapons\explosives.dm" #include "code\game\objects\items\weapons\extinguisher.dm" -#include "code\game\objects\items\weapons\fireworks.dm" #include "code\game\objects\items\weapons\flamethrower.dm" #include "code\game\objects\items\weapons\garrote.dm" #include "code\game\objects\items\weapons\gift_wrappaper.dm" @@ -1202,7 +1201,7 @@ #include "code\modules\admin\stickyban.dm" #include "code\modules\admin\topic.dm" #include "code\modules\admin\watchlist.dm" -#include "code\modules\admin\DB ban\functions.dm" +#include "code\modules\admin\db_ban\functions.dm" #include "code\modules\admin\permissionverbs\permissionedit.dm" #include "code\modules\admin\tickets\adminticketsverbs.dm" #include "code\modules\admin\tickets\mentorticketsverbs.dm" @@ -1324,8 +1323,8 @@ #include "code\modules\buildmode\submodes\throwing.dm" #include "code\modules\buildmode\submodes\variable_edit.dm" #include "code\modules\client\asset_cache.dm" -#include "code\modules\client\client defines.dm" -#include "code\modules\client\client procs.dm" +#include "code\modules\client\client_defines.dm" +#include "code\modules\client\client_procs.dm" #include "code\modules\client\message.dm" #include "code\modules\client\view.dm" #include "code\modules\client\preference\preferences.dm" @@ -1430,7 +1429,6 @@ #include "code\modules\economy\Economy_TradeDestinations.dm" #include "code\modules\economy\EFTPOS.dm" #include "code\modules\economy\Job_Departments.dm" -#include "code\modules\economy\POS.dm" #include "code\modules\economy\utils.dm" #include "code\modules\error_handler\error_handler.dm" #include "code\modules\error_handler\error_viewer.dm" @@ -2341,8 +2339,8 @@ #include "code\modules\ruins\lavalandruin_code\syndicate_base.dm" #include "code\modules\ruins\objects_and_mobs\gym.dm" #include "code\modules\ruins\objects_and_mobs\necropolis_gate.dm" -#include "code\modules\security_levels\keycard authentication.dm" -#include "code\modules\security_levels\security levels.dm" +#include "code\modules\security_levels\keycard_authentication.dm" +#include "code\modules\security_levels\security_levels.dm" #include "code\modules\shuttle\assault_pod.dm" #include "code\modules\shuttle\emergency.dm" #include "code\modules\shuttle\ert.dm" diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM.sln b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM.sln deleted file mode 100644 index 22ed586bbbf..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM.sln +++ /dev/null @@ -1,20 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnstandardnessTestForDM", "UnstandardnessTestForDM\UnstandardnessTestForDM.csproj", "{A0EEBFC9-41D4-474D-853D-126AFDFB82DE}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {A0EEBFC9-41D4-474D-853D-126AFDFB82DE}.Debug|x86.ActiveCfg = Debug|x86 - {A0EEBFC9-41D4-474D-853D-126AFDFB82DE}.Debug|x86.Build.0 = Debug|x86 - {A0EEBFC9-41D4-474D-853D-126AFDFB82DE}.Release|x86.ActiveCfg = Release|x86 - {A0EEBFC9-41D4-474D-853D-126AFDFB82DE}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM.suo b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM.suo deleted file mode 100644 index e62a5089375aa55ea8e93a9619aceeff27e5a495..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23040 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 - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.button1 = new System.Windows.Forms.Button(); - this.listBox1 = new System.Windows.Forms.ListBox(); - this.panel1 = new System.Windows.Forms.Panel(); - this.listBox2 = new System.Windows.Forms.ListBox(); - this.label4 = new System.Windows.Forms.Label(); - this.label3 = new System.Windows.Forms.Label(); - this.label2 = new System.Windows.Forms.Label(); - this.label1 = new System.Windows.Forms.Label(); - this.label5 = new System.Windows.Forms.Label(); - this.panel1.SuspendLayout(); - this.SuspendLayout(); - // - // button1 - // - this.button1.Location = new System.Drawing.Point(12, 12); - this.button1.Name = "button1"; - this.button1.Size = new System.Drawing.Size(222, 23); - this.button1.TabIndex = 0; - this.button1.Text = "Locate all #defines"; - this.button1.UseVisualStyleBackColor = true; - this.button1.Click += new System.EventHandler(this.button1_Click); - // - // listBox1 - // - this.listBox1.FormattingEnabled = true; - this.listBox1.Location = new System.Drawing.Point(12, 82); - this.listBox1.Name = "listBox1"; - this.listBox1.Size = new System.Drawing.Size(696, 160); - this.listBox1.TabIndex = 1; - this.listBox1.SelectedIndexChanged += new System.EventHandler(this.listBox1_SelectedIndexChanged); - // - // panel1 - // - this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.panel1.Controls.Add(this.listBox2); - this.panel1.Controls.Add(this.label4); - this.panel1.Controls.Add(this.label3); - this.panel1.Controls.Add(this.label2); - this.panel1.Controls.Add(this.label1); - this.panel1.Location = new System.Drawing.Point(12, 297); - this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(696, 244); - this.panel1.TabIndex = 2; - // - // listBox2 - // - this.listBox2.FormattingEnabled = true; - this.listBox2.Location = new System.Drawing.Point(8, 71); - this.listBox2.Name = "listBox2"; - this.listBox2.Size = new System.Drawing.Size(683, 160); - this.listBox2.TabIndex = 4; - // - // label4 - // - this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(5, 55); - this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(69, 13); - this.label4.TabIndex = 3; - this.label4.Text = "Referenced: "; - // - // label3 - // - this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(5, 42); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(40, 13); - this.label3.TabIndex = 2; - this.label3.Text = "Value: "; - // - // label2 - // - this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(5, 29); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(61, 13); - this.label2.TabIndex = 1; - this.label2.Text = "Defined in: "; - // - // label1 - // - this.label1.AutoSize = true; - this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 18F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); - this.label1.Location = new System.Drawing.Point(3, 0); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(79, 29); - this.label1.TabIndex = 0; - this.label1.Text = "label1"; - // - // label5 - // - this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(9, 38); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(81, 13); - this.label5.TabIndex = 3; - this.label5.Text = "Files searched: "; - // - // Form1 - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(720, 553); - this.Controls.Add(this.label5); - this.Controls.Add(this.panel1); - this.Controls.Add(this.listBox1); - this.Controls.Add(this.button1); - this.Name = "Form1"; - this.Text = "Unstandardness Test For DM"; - this.panel1.ResumeLayout(false); - this.panel1.PerformLayout(); - this.ResumeLayout(false); - this.PerformLayout(); - - } - - #endregion - - private System.Windows.Forms.Button button1; - private System.Windows.Forms.Panel panel1; - private System.Windows.Forms.Label label4; - private System.Windows.Forms.Label label3; - private System.Windows.Forms.Label label2; - private System.Windows.Forms.Label label1; - public System.Windows.Forms.ListBox listBox2; - public System.Windows.Forms.Label label5; - public System.Windows.Forms.ListBox listBox1; - } -} - diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.cs b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.cs deleted file mode 100644 index 4966c3f0c18..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.cs +++ /dev/null @@ -1,484 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Windows.Forms; -using System.Collections; -using System.IO; - -namespace UnstandardnessTestForDM -{ - public partial class Form1 : Form - { - DMSource source; - - public Form1() - { - InitializeComponent(); - source = new DMSource(); - source.mainform = this; - } - - private void button1_Click(object sender, EventArgs e) - { - source.find_all_defines(); - generate_define_report(); - } - - public void generate_define_report() - { - - TextWriter tw = new StreamWriter("DEFINES REPORT.txt"); - - tw.WriteLine("Unstandardness Test For DM report for DEFINES"); - tw.WriteLine("Generated on " + DateTime.Now); - tw.WriteLine("Total number of defines " + source.defines.Count()); - tw.WriteLine("Total number of Files " + source.filessearched); - tw.WriteLine("Total number of references " + source.totalreferences); - tw.WriteLine("Total number of errorous defines " + source.errordefines); - tw.WriteLine("------------------------------------------------"); - - foreach (Define d in source.defines) - { - tw.WriteLine(d.name); - tw.WriteLine("\tValue: " + d.value); - tw.WriteLine("\tComment: " + d.comment); - tw.WriteLine("\tDefined in: " + d.location + " : " + d.line); - tw.WriteLine("\tNumber of references: " + d.references.Count()); - foreach (String s in d.references) - { - tw.WriteLine("\t\t" + s); - } - } - - tw.WriteLine("------------------------------------------------"); - tw.WriteLine("SUCCESS"); - - tw.Close(); - - } - - private void listBox1_SelectedIndexChanged(object sender, EventArgs e) - { - try - { - Define d = (Define)listBox1.Items[listBox1.SelectedIndex]; - label1.Text = d.name; - label2.Text = "Defined in: " + d.location + " : " + d.line; - label3.Text = "Value: " + d.value; - label4.Text = "References: " + d.references.Count(); - listBox2.Items.Clear(); - foreach (String s in d.references) - { - listBox2.Items.Add(s); - } - - } - catch (Exception ex) { Console.WriteLine("ERROR HERE: " + ex.Message); } - } - - - } - - public class DMSource - { - public List defines; - public const int FLAG_DEFINE = 1; - public Form1 mainform; - - public int filessearched = 0; - public int totalreferences = 0; - public int errordefines = 0; - - public List filenames; - - public DMSource() - { - defines = new List(); - filenames = new List(); - } - - public void find_all_defines() - { - find_all_files(); - foreach(String filename in filenames){ - searchFileForDefines(filename); - } - - } - - public void find_all_files() - { - filenames = new List(); - String dmefilename = ""; - - foreach (string f in Directory.GetFiles(".")) - { - if (f.ToLower().EndsWith(".dme")) - { - dmefilename = f; - break; - } - } - - if (dmefilename.Equals("")) - { - MessageBox.Show("dme file not found"); - return; - } - - using (var reader = File.OpenText(dmefilename)) - { - String s; - while (true) - { - s = reader.ReadLine(); - - if (!(s is String)) - break; - - if (s.StartsWith("#include")) - { - int start = s.IndexOf("\"")+1; - s = s.Substring(start, s.Length - 11); - - if (s.EndsWith(".dm")) - { - filenames.Add(s); - } - } - - s = s.Trim(' '); - if (s == "") { continue; } - } - reader.Close(); - } - } - - - public void DirSearch(string sDir, int flag) - { - try - { - foreach (string d in Directory.GetDirectories(sDir)) - { - foreach (string f in Directory.GetFiles(d)) - { - if (f.ToLower().EndsWith(".dm")) - { - if ((flag & FLAG_DEFINE) > 0) - { - searchFileForDefines(f); - } - } - } - DirSearch(d, flag); - } - } - catch (System.Exception excpt) - { - Console.WriteLine("ERROR IN DIRSEARCH"); - Console.WriteLine(excpt.Message); - Console.WriteLine(excpt.Data); - Console.WriteLine(excpt.ToString()); - Console.WriteLine(excpt.StackTrace); - Console.WriteLine("END OF ERROR IN DIRSEARCH"); - } - } - - //DEFINES - public void searchFileForDefines(String fileName) - { - filessearched++; - FileInfo f = new FileInfo(fileName); - List lines = new List(); - List lines_without_comments = new List(); - - mainform.label5.Text = "Files searched: " + filessearched + "; Defines found: " + defines.Count() + "; References found: " + totalreferences + "; Errorous defines: " + errordefines; - mainform.label5.Refresh(); - - //This code segment reads the file and stores it into the lines variable. - using (var reader = File.OpenText(fileName)) - { - try - { - String s; - while (true) - { - s = reader.ReadLine(); - lines.Add(s); - s = s.Trim(' '); - if (s == "") { continue; } - } - } - catch { } - reader.Close(); - } - - mainform.listBox1.Items.Add("ATTEMPTING: " + fileName); - lines_without_comments = remove_comments(lines); - - /*TextWriter tw = new StreamWriter(fileName); - foreach (String s in lines_without_comments) - { - tw.WriteLine(s); - } - tw.Close(); - mainform.listBox1.Items.Add("REWRITE: "+fileName);*/ - - try - { - for (int i = 0; i < lines_without_comments.Count; i++) - { - String line = lines_without_comments[i]; - - if (!(line is string)) - continue; - - //Console.WriteLine("LINE: " + line); - - foreach (Define define in defines) - { - - if (line.IndexOf(define.name) >= 0) - { - define.references.Add(fileName + " : " + i); - totalreferences++; - } - } - - if( line.ToLower().IndexOf("#define") >= 0 ) - { - line = line.Trim(); - line = line.Replace('\t', ' '); - //Console.WriteLine("LINE = "+line); - String[] slist = line.Split(' '); - if(slist.Length >= 3){ - //slist[0] has the value of "#define" - String name = slist[1]; - String value = slist[2]; - - for (int j = 3; j < slist.Length; j++) - { - value += " " + slist[j]; - //Console.WriteLine("LISTITEM["+j+"] = "+slist[j]); - } - - value = value.Trim(); - - String comment = ""; - - if (value.IndexOf("//") >= 0) - { - comment = value.Substring(value.IndexOf("//")); - value = value.Substring(0, value.IndexOf("//")); - } - - comment = comment.Trim(); - value = value.Trim(); - - Define d = new Define(fileName,i,name,value,comment); - defines.Add(d); - mainform.listBox1.Items.Add(d); - mainform.listBox1.Refresh(); - }else{ - Define d = new Define(fileName, i, "ERROR ERROR", "Something went wrong here", line); - errordefines++; - defines.Add(d); - mainform.listBox1.Items.Add(d); - mainform.listBox1.Refresh(); - } - } - } - } - catch (Exception e) { - Console.WriteLine(e.Message); - Console.WriteLine(e.StackTrace); - MessageBox.Show("Exception: " + e.Message + " | " + e.ToString()); - } - } - - bool iscomment = false; - int ismultilinecomment = 0; - bool isstring = false; - bool ismultilinestring = false; - int escapesequence = 0; - int stringvar = 0; - - public List remove_comments(List lines) - { - List r = new List(); - - iscomment = false; - ismultilinecomment = 0; - isstring = false; - ismultilinestring = false; - - bool skiponechar = false; //Used so the / in */ doesn't get written; - - for (int i = 0; i < lines.Count(); i++) - { - - String line = lines[i]; - - if (!(line is String)) - continue; - - iscomment = false; - isstring = false; - char ca = ' '; - escapesequence = 0; - - String newline = ""; - - int k = line.Length; - - for (int j = 0; j < k; j++) - { - - char c = line.ToCharArray()[j]; - - if (escapesequence == 0) - if (normalstatus()) - { - if (ca == '/' && c == '/') - { - c = ' '; - iscomment = true; - - newline = newline.Remove(newline.Length - 1); - k = line.Length; - } - if (ca == '/' && c == '*') - { - c = ' '; - ismultilinecomment = 1; - newline = newline.Remove(newline.Length - 1); - k = line.Length; - } - if (c == '"') - { - isstring = true; - } - if (ca == '{' && c == '"') - { - ismultilinestring = true; - } - } - else if (isstring) - { - - if (c == '\\') - { - escapesequence = 2; - } - else if (stringvar > 0) - { - if (c == ']') - { - stringvar--; - } - else if (c == '[') - { - stringvar++; - } - } - else if (c == '"') - { - isstring = false; - } - else if (c == '[') - { - stringvar++; - } - } - else if (ismultilinestring) - { - if (ca == '"' && c == '}') - { - ismultilinestring = false; - } - } - else if (ismultilinecomment > 0) - { - if (ca == '/' && c == '*') - { - c = ' '; //These things are here to prevent /*/ from bieng interpreted as the start and end of a comment. - skiponechar = true; - ismultilinecomment++; - } - if (ca == '*' && c == '/') - { - c = ' '; //These things are here to prevent /*/ from bieng interpreted as the start and end of a comment. - skiponechar = true; - ismultilinecomment--; - } - } - - if (!iscomment && (ismultilinecomment==0) && !skiponechar) - { - newline += c; - } - - if (skiponechar) - { - skiponechar = false; - } - if (escapesequence > 0) - { - escapesequence--; - } - else - { - ca = c; - } - } - - r.Add(newline.TrimEnd()); - - } - - return r; - } - - private bool normalstatus() - { - return !isstring && !ismultilinestring && (ismultilinecomment==0) && !iscomment && (escapesequence == 0); - } - - - } - - public class Define - { - public String location; - public int line; - public String name; - public String value; - public String comment; - public List references; - - public Define(String location, int line, String name, String value, String comment) - { - this.location = location; - this.line = line; - this.name = name; - this.value = value; - this.comment = comment; - this.references = new List(); - } - - public override String ToString() - { - return "DEFINE: \""+name+"\" is defined as \""+value+"\" AT "+location+" : "+line; - } - - } - - - - -} diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.resx b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.resx deleted file mode 100644 index 1af7de150c9..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Program.cs b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Program.cs deleted file mode 100644 index 1e8ac829d9e..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Program.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Windows.Forms; - -namespace UnstandardnessTestForDM -{ - static class Program - { - /// - /// The main entry point for the application. - /// - [STAThread] - static void Main() - { - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Form1()); - } - } -} diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/AssemblyInfo.cs b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/AssemblyInfo.cs deleted file mode 100644 index 99c88721b31..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("UnstandardnessTestForDM")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("Microsoft")] -[assembly: AssemblyProduct("UnstandardnessTestForDM")] -[assembly: AssemblyCopyright("Copyright © Microsoft 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("c0e09000-1840-4416-8bb2-d86a8227adf1")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.Designer.cs b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.Designer.cs deleted file mode 100644 index 92534f43fed..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.Designer.cs +++ /dev/null @@ -1,71 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.239 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace UnstandardnessTestForDM.Properties -{ - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources - { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() - { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager - { - get - { - if ((resourceMan == null)) - { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("UnstandardnessTestForDM.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture - { - get - { - return resourceCulture; - } - set - { - resourceCulture = value; - } - } - } -} diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.resx b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.resx deleted file mode 100644 index af7dbebbace..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.Designer.cs b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.Designer.cs deleted file mode 100644 index ab81379593f..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.Designer.cs +++ /dev/null @@ -1,30 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.239 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace UnstandardnessTestForDM.Properties -{ - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase - { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default - { - get - { - return defaultInstance; - } - } - } -} diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.settings b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.settings deleted file mode 100644 index 39645652af6..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/UnstandardnessTestForDM.csproj b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/UnstandardnessTestForDM.csproj deleted file mode 100644 index 7cafd94f656..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/UnstandardnessTestForDM.csproj +++ /dev/null @@ -1,87 +0,0 @@ - - - - Debug - x86 - 8.0.30703 - 2.0 - {A0EEBFC9-41D4-474D-853D-126AFDFB82DE} - WinExe - Properties - UnstandardnessTestForDM - UnstandardnessTestForDM - v4.0 - Client - 512 - - - x86 - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - x86 - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - - - Form - - - Form1.cs - - - - - Form1.cs - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - - \ No newline at end of file diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin/Debug/UnstandardnessTestForDM.exe b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin/Debug/UnstandardnessTestForDM.exe deleted file mode 100644 index bb55cad8fd79a29b2bd20e19c06f1dc03af0c30f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17920 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 f!L1v;8A3spLJh!~a=*V>&iS81BEgcrT$<5` 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 z z&=#?g6V$=wK;MbkDI7SI!WeQ^CS`v~K!cP!6Ls~m0g03HCzBh+@8@%Usja`( zRUhEh9p)q@kq8zn0BMtae6H~x8XbD4CjSrk|1SY%$D7f!QUCv!`kxhkEdlC{lSV^$ z#(*)3eJrzmv)`&?O0<%U0XU$nXc)#;#rr5K4A-F31}PvsUQuPZBF4Zn9B3G$Bm$p^ z+xEg};-+*Al`u;U)AZq(Ape5E<&Z}jc}SDTg)8}o8}*{e(B;nwSKrv~9H~AQdwjF4 zytOrcZE;D4HXF}iOv5wi{v~u8Mx&{)%KP37{uH^cp}uRh0dOQ{563MO=@S^LIzzi} z*-Ueu1(WUMCW9mBJY@F8S7T}Q7cHV+lSJGOh0EM6pm>nUzHKpl6$ z9c>`lvT>V;0qSfUsM-S(QUsnti42G+>d+=|*gAM$lA^MX%6D98JY3pjA|YD~*C3Hf zI!d8LOrl5_)5VyI&Yv)5j2m?@HmHX&^2W*}Z{k3e8SLqfXJA8d^=>_4m;$0_V49#^ zOof(#VW>J~&gG~|Z>JyZwzIFlH?{XmuKzHk_$TifPtW_@znJ%9f`4fAtJSn01FrfB ztW8{r!)J`EReh`HB{h53l@(|NA2%KTqU3jV<00qWP1>SYpB?DEdD*xjtD7pVhyFNj zM5^doKSSp{CoQMuI*V7a&Lc3JPwm5ex9k;QIcq=E?BUJJcpq7ko;81Q#f$yRH=cFe z5b>h8C`l0N{0;jDkyEj#=T`F^;m(Gk`yGp8_z3auXm&^k}+WEW& zt7|si1E186D{>Cz=$(lTNh#Zrb28j@eMWGuP+_y>1}xWTU-akX<*7w!&MZO!KM`yl<0Iky_CdajPx~l`pPt| z$>+pR`I2Jekh!{h0v3O2*dY1m?JYwS9YKpmkIwCT-t`Ud(QP+eljKnc!#*(-a5`kT z0g2FH^k?Wc8k~_M@#J04uOACs6XM0%=*4@6tCG!{3|R?3Oanu+%XiKlXZGUE z!9ZE*#9=baq{{4%<^IcOqJRgdAL`xYAJ-^NeM$2?aXP2*9jEc=`nqt@GoIHrFZ877 z5D5;-{if^h*b5Dr3*JQX3MwLMovuvFn~*ig_O zk_@%dsf#MDsyA$ID8J6!cNiZypQ)>Ec`)>qd&?C3ZlO6p=ZN^1ms`uvq8sKAQ zfscvq^f6rQtSjXuHGA(P1@JTf#$8Q194GKG4mLJ+xQ!F(aM-wQcNI_1{9o}n>XhMt zUu6UY1&4MyDEgl`sDJ5u>hJ|0yd^(y5{efDA>;Z(7Y$r?PjYj7DP5Xj_FIuQ;#||u z&=`HjptkOe`hci{cqM?Z7vhf99GoD>l0v+ePeXBU3qPaY&~t<=wFG+B6+ z#7wd_Toon!sa($~gE+SJV0lvRz}B3Vx@ML0%;cLcIyzbFJj7-Qx%H5C{?KB zV)bs>V(P#!&?I*~Y-FW0>YOq#X6WJl)4sj!y~u4pgyDia<4z?GCHC32@iLisl(jWa zB48zUKl$@SiPqu-K8dx4=Na<-T59ddf#ZY)DBQQpJ7O4PG(HMRG=3gh!hRVYf4>Vg|mrXkTWVH8ZMCy}ER7;eB(l^wQ%yM`u5I9&Q(rmhn*QiiF;(9r&nOJ#V&GkQz7Xqj0TK z^O@lhdg@LU(>`AR#3-X}yxO*SV{P4$>0!?7srRge4bKBC^T#* z8ujN(wwQ*TObBqI$!owPV^5*ifid&vi=Rmq1C#e1#Vx2JfMM)~-!tV!vGuFB3ApEfFq{p}!dMD5Lx^n8<%5`h3 zY-+WGLQiHscD23c$1XJAw=||@NN`ro(edZ!DZG1{bZF5}KU~_$7st*V7JGkR_0#zW znx2$>)ZU~zX{d$uS+{H9jKT7~i7|=e!frG_zjb(h=1*z2=lRndmcOnqRt`6eAKP@T zULI*ZXP+sfDtz*Eecq?E)X`5aF-!xTl4VL!MXRyOUndaGYI)>Z zu(EiD##GB7z36E+#TPOIhYyX6_g-|%I!h~f&-=ZD@&!*!zt?%!pmk-w#;XjubmWN@ zvq~GMDLzuD$hNJ1w|sJzd)CDH%Y_v~tb7|qYdu@0-=Al;IHAMeWMJmtnN7asag_gW zL_1oFeLAlk{V+0wLA}Bq(fzv%BYsbNImS0lGAXnxP6jvn0VS z#1pxH9tnLFM)iuE;l!sL)bfD7?4zl{wS5Y+0p(P_1#@O>=Il@ACm``x-gY^mDc=9xt-l|Et>xj!WIP z1-I_UI^@3^TC}#YA~`H%)Mbg+9^*IQpvu5O6?TP3ipxh(;ZdJ2UDH1o9)0Bq$neM! zq9J>5O*U-GN0Gr1RM}(|Pp|wZ!lPlhDV(|55w>#zR?u zTwZiW!KDt92M?pa%c}05oj>hRl!evkvztGzim*2b>R<18)sQ>JWn^WzZolLe&RT7# zV%aZI4&}pYc~-u<=@ae>TDJ{fk)NwEcO%-IY@)QvQcT}(X|iO^t>dLb#~=2eq?jBg z@vLx-X0QbUz#${W|Dpclw{v_*5rdhcl@VV|HTHR zycK$~{f}QRhRQV}l%a z_&OAc+Zt`Rn&<6T-6zvAudYnGW7+4IMM1Y$jagZ3r=8xa)ogIHCgyBlu(SWdj{}=c zcU~&WX&ry;*JtnD2Si~HzssE?pY^M#J%_n{+1k7{ho=rI>4%%Nl+NWYHL$Sw(QnBp z&&&l+Ze7Z34zjX${@vXjD?@6kFE0BHKI4%;yW-`D{3we%hw|qw?I*9A_Ca@8nMj-G zVLoxxLgz(p_o|OK7JjGi6P{4eP#6%dfKI=|-Mj;D56rE5t@W&V&~0MpNl^k?eUsD@or(o=%<5Y<=i#wO)^B40xI9 zd0bOvYv8?G`+?W!9>`$BRsYAMOGaLJDR*7+mp%W0d-Wor22q<`$)Gg7 zKl^2B1Kb=sBlyp*1HDZPo{$(B7^<@0ds1VI&%VctZnxQM6_;AD?KkZ_-IB+AQuFR- z*T@4KKV+yLG;cjqr21gk0kg5c?SFGQ1q0uRBF8snjVnaH&pIK9b_#y4rru^YJE+h7&5x zs9AY=_}k`&Dd{i6GvD}@ZFQneOa0+~>&jEiPnP;qT3sG&zv|har+8omHf8dz22H=; z|G3?jRGN1{Sif4WDVp0bTj*@RtN(Vr;u|t(L+}jR;2s?)vNLFEfKvX)jqS?= z5R9$oSXSzMt1XGb^?I14vsJq*N*EYgw<#&GH6ftVGuOHLi0kD!oT# zDkga({4jf8)|P2o8}DIStxW-pd_APHW6y?rQ=9OU`%I(z6l^RuzPlq2jlZ((H}0Xz zol`F;9lGF}@iatK!0=jeLS@HJSJ!c7;z64O-#&Dg&#>pd-(SCc=u5RdrFLto)@OT1 zr0ohy+M*GwvZH-+f&1KvF_Z3; - - - - - - - - - - diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache deleted file mode 100644 index f4263115dfbb1263623b498558f2b704760184c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6426 zcmeHL-BTMk5VyfxFoZUyDM_G7E^Rsuse6NK2#^^bf{k0IA;Z`X=?v!~vQIWDvgAlQ zjKlEMxBe6T3p)K1+ugH$d<1A8Y!44UhDGROf7;bb`w@voB9VXK!@v059s%NQv5Jyf zR*kd6v`=`!_#Tr^M%L?6Y-Tr-_6}8=NwJn%aDtzto$t0fuzY8LatnawC*$RA>O7iRLRCWMH&sNoIFvRqTw4o1B)LJ z&SjH&ue7H1GH-1h87gpBdJ1M|q^Po5j&V9uA;M!GF|<1qd-Yt^=RBuKoi?R9=nfT0 z8OH9O8_P-VfxM5fvq)5pns8acFKcSv02BR`)r3?uOREG_u_?5H{hjWv&G`BCliKXs zQ}40MSv>rt|LiK8gPhu2*k+a~S}{^Fs_!&BLsWqhRoUMrW?xS>l&pe6P>5+oYfKx} zIvtOL9EPICW?|h~+0QVYxiGXP1v{YX$>rTyrW>5J5b)x{j$O^Q7j7$Ap;}Az3O36O zhyWJWSwg+MFAS^G&XS9q+Dg&Zh&5_ik;n+pXf%qyK>r*ow6vjhFfllzib11sexiaZ zR&ic~2HvN3cdwZOR=q>GPqztE?|%%Z7K~z|mbB}-A{A%l(|fY`zpu&iGFhrDy-2O5 z7wN*vYAJc$K5pn%`=N(YZ`FFk*+rv66YYl;g}136%x}0&_4oo|q!1qkG7*nqa|{W* zw2}BNAlN;Q|HP3@0I?>KWH_V3Shu0Qew^=ko0kQMHJU_GH;e~d=gmejbhF7rctDd~ zAKmfC8%HPB6!7^YntAEI)!?Dsb;9Moo2B}|$cAfbI+b>flw7-S(U}U5C{KV#DT0g4 zNtNBYvR{^ebB|VD0I#xNLyq9Mi{NeYR7-vsMiO~irHTshQci_b_G$bx6!LQ*^XCQV z226n<;MdUOu62}g2c|#9>2@fvy=b=w?ao{)0h405+M0&eDD2Jp0vZ$8<)jzVsnz&h z_&6L?Uldg~q#*$1`3ZXr%H5NEgrY7BTo?LdGOG_3mo zdI+E}sRnVE9fV=_GZ1Co4Hap3P8nI8T0^Lq^LF8)^vDm@>9#d?y2{BE_K9i)I(Pus zqW{=k&mUmU0_KPQV}@~xq5mjK{f zXvA_*^NV646Qnoic7mA=eu*Hvfrj-Rko(7(OUsQX)-xELKK_{rgLSu@g6byRkrQhk z`e%=emlxMsC)RTq??tZkJ@A=2&XXp_-B^4(v69eL0v+}`dnz;0$($0H5C!V|0UD(D j=XD|aPhb*+->u-R5E;MGzlQJ5e--G5?@m~BElvIldB}37 diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/GenerateResource.read.1.tlog b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/GenerateResource.read.1.tlog deleted file mode 100644 index 247c250f975958656053cca6e22ad8a5cf24ce20..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 416 zcmdUsI}XA?3`Adz#8r?G9bF*&M3Rk?jYJV~|5E_Z3k@YD&DtJ$#vbqUac9q#nTe4D zgYV3aiiX75ycQj~lC68|%*lGqrsPSqDV&MUm}PcyDwS%p;078obF@3~R_?F;Z*J@4 jl^UUUW66Sl*}r$|xM18kb14qykCWsz2LB;keY<-Bpfx{< diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/GenerateResource.write.1.tlog b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/GenerateResource.write.1.tlog deleted file mode 100644 index d100f54085bd324a4ba75bfa9efbbea9766b8d06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 994 zcmd^-%?^S<420)w;;WDt6JxxADEP@#laZ*00fHA+r}uZ0?!AUe|v5c2MDPqC|%&`YBs$wGeHNYq_z{Mtkjub}tc{ clG!^BhWi-rcis@O1_p+SK%5g?SzMBus~417oL^d$oLUTL1*ImYq!#HYR*8GxXUf^%t3Noi54ZC+|=Nl{{sjzU0bQch;FcWPxwes*e}ZIZcpqG__J onW3ezNveT`r81^vrFkWpxv4PQgHubGfR2KJ07n-P+5+SQ04Y>DD*ylh diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.Properties.Resources.resources b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.Properties.Resources.resources deleted file mode 100644 index 6c05a9776bd7cbae976fdcec7e3a254e93018279..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 180 zcmX?i>is@O1_p+SK%5g?SzMBus~417oL^d$oLUTL1*ImYq!#HYR*8GxXUf^%t3Noi54ZC+|=Nl{{sjzU0bQch;FcWPxwes*e}ZIZcpqG__J onW3ezNveT`r81^vrFkWpxv4PQgHubGfR2KJ07n-P+5+SQ04Y>DD*ylh diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.csproj.FileListAbsolute.txt b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.csproj.FileListAbsolute.txt deleted file mode 100644 index 1d36d1cd556..00000000000 --- a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.csproj.FileListAbsolute.txt +++ /dev/null @@ -1,18 +0,0 @@ -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\bin\Debug\UnstandardnessTestForDM.exe -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\bin\Debug\UnstandardnessTestForDM.pdb -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\ResolveAssemblyReference.cache -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\UnstandardnessTestForDM.Form1.resources -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\UnstandardnessTestForDM.Properties.Resources.resources -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\GenerateResource.read.1.tlog -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\GenerateResource.write.1.tlog -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\UnstandardnessTestForDM.exe -c:\users\baloh\documents\visual studio 2010\Projects\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\UnstandardnessTestForDM.pdb -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\bin\Debug\UnstandardnessTestForDM.exe -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\bin\Debug\UnstandardnessTestForDM.pdb -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\ResolveAssemblyReference.cache -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\UnstandardnessTestForDM.Form1.resources -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\UnstandardnessTestForDM.Properties.Resources.resources -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\GenerateResource.read.1.tlog -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\GenerateResource.write.1.tlog -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\UnstandardnessTestForDM.exe -C:\Users\Baloh\Desktop\tgs13\tools\UnstandardnessTestForDM\UnstandardnessTestForDM\obj\x86\Debug\UnstandardnessTestForDM.pdb diff --git a/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.exe b/tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.exe deleted file mode 100644 index bb55cad8fd79a29b2bd20e19c06f1dc03af0c30f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17920 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 f!L1v;8A3spLJh!~a=*V>&iS81BEgcrT$<5` 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