Button docs

This commit is contained in:
Cooldude2606
2019-08-27 21:08:48 +01:00
parent 32f41ff722
commit cb59cc0537
99 changed files with 982 additions and 138 deletions

View File

@@ -348,7 +348,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -349,7 +349,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -376,7 +376,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -585,7 +585,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -349,7 +349,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -404,7 +404,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -460,7 +460,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -404,7 +404,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -320,7 +320,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -404,7 +404,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -376,7 +376,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -388,7 +388,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -500,7 +500,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -361,7 +361,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -388,7 +388,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -365,7 +365,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -360,7 +360,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -404,7 +404,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -458,7 +458,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -416,7 +416,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -611,7 +611,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -389,7 +389,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -360,7 +360,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -388,7 +388,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -321,7 +321,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -585,7 +585,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -557,7 +557,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -389,7 +389,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -443,7 +443,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -484,7 +484,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -569,7 +569,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -23,8 +23,8 @@ new_type("gui", "Guis", true)
new_type("config", "Configs", true, "Settings")
new_type("dep", "Dependencies", false)
new_type("element", "Elements", false)
new_type("setting", "Settings", false)
new_type("element", "Elements", false, "Properties / Events")
new_type("event", "Events", false, "Event Parameters")
new_type("command", "Commands", false, "Command Parameters")

View File

@@ -506,7 +506,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -237,7 +237,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -485,7 +485,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -294,7 +294,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -320,7 +320,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -442,7 +442,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -354,7 +354,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -338,7 +338,7 @@ see ./expcore/commands.lua for more details</p>
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -354,7 +354,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -416,7 +416,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -237,7 +237,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -240,7 +240,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -295,7 +295,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -812,7 +812,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -384,7 +384,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -414,7 +414,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -324,7 +324,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -414,7 +414,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -834,7 +834,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -292,7 +292,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -354,7 +354,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -388,7 +388,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -744,7 +744,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -384,7 +384,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -355,7 +355,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -684,7 +684,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1208,7 +1208,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1329,7 +1329,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1110,7 +1110,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -984,7 +984,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1039,7 +1039,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1465,7 +1465,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1413,7 +1413,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1972,7 +1972,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -2480,7 +2480,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -41,9 +41,12 @@
<li class="nav-item">
<h2>Sections</h2>
<ul class="nav">
<li class="nav-item"><a href="#Elements"><span class="fragment-hashtag">#</span> Elements</a></li>
<li class="nav-item"><a href="#Core"><span class="fragment-hashtag">#</span> Core </a></li>
<li class="nav-item"><a href="#Concept_Base"><span class="fragment-hashtag">#</span> Concept Base </a></li>
<li class="nav-item"><a href="#Concept_Instances"><span class="fragment-hashtag">#</span> Concept Instances </a></li>
<li class="nav-item"><a href="#Concept_Data"><span class="fragment-hashtag">#</span> Concept Data </a></li>
<li class="nav-item"><a href="#Tests"><span class="fragment-hashtag">#</span> Tests </a></li>
</ul>
</li>
</ul>
@@ -203,9 +206,12 @@
<li class="nav-item">
<h4>Jump to Section</h4>
<ul class="nav">
<li class="nav-item"><a href="#Elements"><span class="fragment-hashtag">#</span> Elements</a></li>
<li class="nav-item"><a href="#Core"><span class="fragment-hashtag">#</span> Core </a></li>
<li class="nav-item"><a href="#Concept_Base"><span class="fragment-hashtag">#</span> Concept Base </a></li>
<li class="nav-item"><a href="#Concept_Instances"><span class="fragment-hashtag">#</span> Concept Instances </a></li>
<li class="nav-item"><a href="#Concept_Data"><span class="fragment-hashtag">#</span> Concept Data </a></li>
<li class="nav-item"><a href="#Tests"><span class="fragment-hashtag">#</span> Tests </a></li>
</ul>
</li>
</ul>
@@ -248,6 +254,31 @@ Gui.new_concept(<span class="string">'Button'</span>)
properties.image = value
properties.caption = <span class="keyword">nil</span>
properties.<span class="global">type</span> = <span class="string">'sprite-button'</span>
<span class="keyword">end</span>)
:define_draw(<span class="keyword">function</span>(properties,parent,element)
<span class="comment">-- Note that element might be nil if this is the first draw function
</span> <span class="comment">-- in this case button is a new concept so we know this is the first function and element is nil
</span> <span class="keyword">if</span> properties.<span class="global">type</span> == <span class="string">'button'</span> <span class="keyword">then</span>
element = parent.add{
<span class="global">type</span> = properties.<span class="global">type</span>,
name = properties.name,
caption = properties.caption,
tooltip = properties.tooltip
}
<span class="keyword">else</span>
element = parent.add{
<span class="global">type</span> = properties.<span class="global">type</span>,
name = properties.name,
sprite = properties.sprite,
tooltip = properties.tooltip
}
<span class="keyword">end</span>
<span class="comment">-- We must return the element or what we want to be seen as the instance, this is so other draw functions have access to it
</span> <span class="comment">-- for example if our custom button defined a draw function to change the font color to red
</span> <span class="keyword">return</span> element
<span class="keyword">end</span>)</code></pre>
<pre class="code" data-lang="Lua"><code><span class="comment">-- Makeing a alternative button based on the first
</span><span class="keyword">local</span> custom_button =
@@ -275,6 +306,50 @@ button:clone(<span class="string">'CustomButton'</span>)
<!-- module section list start -->
<table class="section-content-list">
<thead>
<h3><a href="#Elements">Elements</a></h3>
<span></span>
</thead>
<tbody>
<tr>
<td class="name"><a href="#button">button</a></td>
<td class="summary">The basic button element</td>
</tr>
<tr>
<td class="name"><a href="#frame">frame</a></td>
<td class="summary">The basic frame element</td>
</tr>
</tbody>
</table>
<table class="section-content-list">
<thead>
<h3><a href="#Core">Core </a></h3>
<span></span>
</thead>
<tbody>
<tr>
<td class="name"><a href="#require_concept">require_concept(concept)</a></td>
<td class="summary">Loads a concept from the concepts file, used internally</td>
</tr>
<tr>
<td class="name"><a href="#get_concept">get_concept(name)</a></td>
<td class="summary">Gets the gui concept with this name</td>
</tr>
<tr>
<td class="name"><a href="#Prototype:change_name">Prototype:change_name([new_name=self.name])</a></td>
<td class="summary">Used internally to save concept names to the core gui module</td>
</tr>
<tr>
<td class="name"><a href="#new_concept">new_concept(name)</a></td>
<td class="summary">Returns a new gui concept with no properties or events</td>
</tr>
<tr>
<td class="name"><a href="#clone_concept">clone_concept(name, new_name)</a></td>
<td class="summary">Making anew concept based on the properties and drawing of another</td>
</tr>
</tbody>
</table>
<table class="section-content-list">
<thead>
<h3><a href="#Concept_Base">Concept Base </a></h3>
<span></span>
</thead>
@@ -284,6 +359,10 @@ button:clone(<span class="string">'CustomButton'</span>)
<td class="summary">Used to copy all the settings from one concept to another and removing links to the orginal</td>
</tr>
<tr>
<td class="name"><a href="#Prototype:change_name">Prototype:change_name([new_name=self.name])</a></td>
<td class="summary">Used internally to save concept names to the core gui module</td>
</tr>
<tr>
<td class="name"><a href="#Prototype:new_event">Prototype:new_event(event_name[, factorio_event][, event_condition])</a></td>
<td class="summary">Adds a new event trigger to the concept which can be linked to a factorio event</td>
</tr>
@@ -377,11 +456,490 @@ button:clone(<span class="string">'CustomButton'</span>)
</tr>
</tbody>
</table>
<table class="section-content-list">
<thead>
<h3><a href="#Tests">Tests </a></h3>
<span></span>
</thead>
<tbody>
<tr>
<td class="name"><a href="#run_tests">run_tests(player[, category])</a></td>
<td class="summary">Runs a set of gui tests to ensure that the system is working</td>
</tr>
</tbody>
</table>
<!-- module section list end -->
<br />
<!-- section start -->
<h3><span id="Elements" class="section-title"><a href="#Elements">Elements</a></span></h3>
<dl class="section-body-container">
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#button" class="fragment-hashtag">#</a>
<span class="section-item-title" id="button">button</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">The basic button element</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Properties / Events:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>on_click</em></strong>
<strong> : </strong>
fired when the player clicks the button
</li>
<li class="section-subitem-li">
<strong><em>on_left_click</em></strong>
<strong> : </strong>
fired when the player clicks with the right mouse button
</li>
<li class="section-subitem-li">
<strong><em>on_left_click</em></strong>
<strong> : </strong>
fired when the player clicks with the right mouse button
</li>
<li class="section-subitem-li">
<strong><em>caption</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a> or <a class="type" href="http://lua-api.factorio.com/latest/Concepts.html#LocalisedString">LocalisedString</a></span>)
the message that is shown on the button
</li>
<li class="section-subitem-li">
<strong><em>tooltip</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a> or <a class="type" href="http://lua-api.factorio.com/latest/Concepts.html#LocalisedString">LocalisedString</a></span>)
the tooltip that shows when a player hovers over the button
</li>
<li class="section-subitem-li">
<strong><em>sprite</em></strong>
<strong> : </strong>
(<span class="types"><span class="type">SpritePath</span></span>)
upto three sprites in the order: default, hovered, clicked
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#frame" class="fragment-hashtag">#</a>
<span class="section-item-title" id="frame">frame</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">The basic frame element</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Properties / Events:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>title</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a> or <a class="type" href="http://lua-api.factorio.com/latest/Concepts.html#LocalisedString">LocalisedString</a></span>)
the title that will show in the frame
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
</dl>
<h3><span id="Core" class="section-title"><a href="#Core">Core </a></span></h3>
<dl class="section-body-container">
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#require_concept" class="fragment-hashtag">#</a>
<span class="section-item-title" id="require_concept">require_concept(concept)</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Loads a concept from the concepts file, used internally</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Parameters:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>concept</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a></span>)
the name of the concept to require
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<strong>Usage:</strong>
<pre class="code" data-lang="Lua"><code><span class="comment">-- Load a base concept
</span>Gui.require_concept(<span class="string">'frame'</span>)</code></pre>
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#get_concept" class="fragment-hashtag">#</a>
<span class="section-item-title" id="get_concept">get_concept(name)</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Gets the gui concept with this name</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Parameters:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>name</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a></span>)
the name of the concept that you want to get
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<strong>Usage:</strong>
<pre class="code" data-lang="Lua"><code><span class="comment">-- Getting a gui concept
</span><span class="keyword">local</span> button = Gui.get_concept(<span class="string">'Button'</span>)</code></pre>
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#Prototype:change_name" class="fragment-hashtag">#</a>
<span class="section-item-title" id="Prototype:change_name">Prototype:change_name([new_name=self.name])</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Used internally to save concept names to the core gui module</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Parameters:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>new_name</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a></span>)
the new name of the concept
(<em>default</em>: self.name)
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<strong>Usage:</strong>
<pre class="code" data-lang="Lua"><code><span class="comment">-- Internal Saving
</span><span class="comment">-- this is never needed to be done, internal use only!
</span><span class="keyword">local</span> button = Gui.get_concept(<span class="string">'Button'</span>)
button:change_name(<span class="string">'Not Button'</span>)</code></pre>
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#new_concept" class="fragment-hashtag">#</a>
<span class="section-item-title" id="new_concept">new_concept(name)</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Returns a new gui concept with no properties or events</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Parameters:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>name</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a></span>)
the name that you want this concept to have
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<strong>Usage:</strong>
<pre class="code" data-lang="Lua"><code><span class="comment">-- Making a new concept, see module usage
</span><span class="keyword">local</span> button = Gui.new_concept(<span class="string">'Button'</span>)</code></pre>
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#clone_concept" class="fragment-hashtag">#</a>
<span class="section-item-title" id="clone_concept">clone_concept(name, new_name)</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Making anew concept based on the properties and drawing of another</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Parameters:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>name</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a></span>)
the name of the concept that you want as the base
</li>
<li class="section-subitem-li">
<strong><em>new_name</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a></span>)
the name that you want the new concept to have
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<strong>Usage:</strong>
<pre class="code" data-lang="Lua"><code><span class="comment">-- Making a new concept from another, see module usage
</span><span class="keyword">local</span> custom_button = Gui.clone_concept(<span class="string">'Button'</span>,<span class="string">'CustomButton'</span>)</code></pre>
<!-- usage end -->
</dd>
</dl>
<h3><span id="Concept_Base" class="section-title"><a href="#Concept_Base">Concept Base </a></span></h3>
<dl class="section-body-container">
<dt>
@@ -444,6 +1002,62 @@ button:clone(<span class="string">'CustomButton'</span>)
Gui.get_concept(<span class="string">'Button'</span>):clone(<span class="string">'CustomButton'</span>)</code></pre>
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#Prototype:change_name" class="fragment-hashtag">#</a>
<span class="section-item-title" id="Prototype:change_name">Prototype:change_name([new_name=self.name])</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Used internally to save concept names to the core gui module</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Parameters:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>new_name</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a></span>)
the new name of the concept
(<em>default</em>: self.name)
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<strong>Usage:</strong>
<pre class="code" data-lang="Lua"><code><span class="comment">-- Internal Saving
</span><span class="comment">-- this is never needed to be done, internal use only!
</span><span class="keyword">local</span> button = Gui.get_concept(<span class="string">'Button'</span>)
button:change_name(<span class="string">'Not Button'</span>)</code></pre>
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
@@ -934,6 +1548,7 @@ Gui.get_concept(<span class="string">'Button'</span>)
:define_draw(<span class="keyword">function</span>(properties,parent,element)
<span class="comment">-- Note that element might be nil if this is the first draw function
</span> <span class="comment">-- for this example we assume button was cloned from Prototype and so has no other draw functions defined
</span> <span class="comment">-- this means that there is no element yet and what we return will be the first time the element is returned
</span> <span class="comment">-- although not shown here you also can recive any extra arguments here from the call to draw
</span> <span class="keyword">if</span> properties.<span class="global">type</span> == <span class="string">'button'</span> <span class="keyword">then</span>
element = parent.draw{
@@ -953,8 +1568,8 @@ Gui.get_concept(<span class="string">'Button'</span>)
<span class="keyword">end</span>
<span class="comment">-- We must return the element or what we want to be seen as the instance
</span> <span class="comment">-- this is so other draw functions have access to it, say if our custom button defined a draw function to change the font color to red
<span class="comment">-- We must return the element or what we want to be seen as the instance, this is so other draw functions have access to it
</span> <span class="comment">-- for example if our custom button defined a draw function to change the font color to red
</span> <span class="keyword">return</span> element
<span class="keyword">end</span>)</code></pre>
<!-- usage end -->
@@ -1871,6 +2486,79 @@ Gui.get_concept(<span class="string">'CustomButton'</span>)
</span>custom_button.set_store_from_instance(element)</code></pre>
<!-- usage end -->
</dd>
</dl>
<h3><span id="Tests" class="section-title"><a href="#Tests">Tests </a></span></h3>
<dl class="section-body-container">
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#run_tests" class="fragment-hashtag">#</a>
<span class="section-item-title" id="run_tests">run_tests(player[, category])</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Runs a set of gui tests to ensure that the system is working</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<strong>Parameters:</strong>
<ul>
<li class="section-subitem-li">
<strong><em>player</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/LuaPlayer.html">LuaPlayer</a></span>)
the player that the guis are made for and who recives the results
</li>
<li class="section-subitem-li">
<strong><em>category</em></strong>
<strong> : </strong>
(<span class="types"><a class="type" href="http://lua-api.factorio.com/latest/Builtin-Types.html#string">string</a></span>)
when given only tests in this category are ran
(<em>optional</em>)
</li>
</ul>
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<strong>Usage:</strong>
<pre class="code" data-lang="Lua"><code><span class="comment">-- Run all gui tests
</span>Gui.run_tests(game.player)</code></pre>
<!-- usage end -->
</dd>
</dl>
@@ -1887,7 +2575,7 @@ Gui.get_concept(<span class="string">'CustomButton'</span>)
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1432,7 +1432,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -3152,7 +3152,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1128,7 +1128,7 @@ Store.register(team_scores,<span class="keyword">function</span>(value,key)
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -544,7 +544,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -626,7 +626,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -629,7 +629,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -449,7 +449,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -632,7 +632,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -837,7 +837,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -510,7 +510,7 @@ see ./expcore/commands.lua for more details</span></td>
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -351,7 +351,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -419,7 +419,7 @@ fraction will decide a chance to spawn. 1 alien for 2 spawner's will have 50% on
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1164,7 +1164,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -654,7 +654,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -323,7 +323,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1292,7 +1292,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -434,7 +434,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -338,7 +338,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -441,7 +441,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -752,7 +752,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -1382,7 +1382,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -651,7 +651,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -442,7 +442,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -789,7 +789,7 @@ Public License instead of this License. But first, please read
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -332,7 +332,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-08-25 01:11:55 UTC</i>
<i>Last updated 2019-08-27 21:07:36 UTC</i>
</div>
</div>
</div>

View File

@@ -21,7 +21,7 @@ end)
-- Note that element might be nil if this is the first draw function
-- in this case button is a new concept so we know this is the first function and element is nil
if properties.type == 'button' then
element = parent.draw{
element = parent.add{
type = properties.type,
name = properties.name,
caption = properties.caption,
@@ -29,7 +29,7 @@ end)
}
else
element = parent.draw{
element = parent.add{
type = properties.type,
name = properties.name,
sprite = properties.sprite,
@@ -67,4 +67,7 @@ custom_button:draw(game.player.gui.left)
local Gui = require 'expcore.gui.core'
Gui.require_concept('frame')
Gui.require_concept('button')
return Gui

View File

@@ -0,0 +1,58 @@
--[[-- Core Module - Gui
@module Gui
@alias Gui
]]
local Gui = require 'expcore.gui.core'
--[[-- The basic button element
@element button
@param on_click fired when the player clicks the button
@param on_left_click fired when the player clicks with the left mouse button
@param on_left_click fired when the player clicks with the right mouse button
@tparam ?string|Concepts.LocalisedString caption the message that is shown on the button
@tparam ?string|Concepts.LocalisedString tooltip the tooltip that shows when a player hovers over the button
@tparam SpritePath sprite upto three sprites in the order: default, hovered, clicked
]]
Gui.new_concept('button')
:new_event('on_click',defines.events.on_gui_click)
:new_event('on_left_click',defines.events.on_gui_click,function(event)
return event.mouse_button == defines.mouse_button_type.left
end)
:new_event('on_right_click',defines.events.on_gui_click,function(event)
return event.mouse_button == defines.mouse_button_type.right
end)
:new_property('tooltip')
:new_property('caption',nil,function(properties,value)
properties.caption = value
properties.type = 'button'
end)
:new_property('sprite',nil,function(properties,value,hovered_sprite,clicked_sprite)
properties.sprite = value
properties.hovered_sprite = hovered_sprite
properties.clicked_sprite = clicked_sprite
properties.type = 'sprite-button'
end)
:define_draw(function(properties,parent,element)
if properties.type == 'button' then
element = parent.add{
name = properties.name,
type = properties.type,
caption = properties.caption,
tooltip = properties.tooltip
}
else
element = parent.add{
name = properties.name,
type = properties.type,
sprite = properties.sprite,
hovered_sprite = properties.hovered_sprite,
clicked_sprite = properties.clicked_sprite,
tooltip = properties.tooltip
}
end
return element
end)

View File

@@ -0,0 +1,24 @@
--[[-- Core Module - Gui
@module Gui
@alias Gui
]]
local Gui = require 'expcore.gui.core'
--[[-- The basic frame element
@element frame
@tparam ?string|Concepts.LocalisedString title the title that will show in the frame
]]
Gui.new_concept('frame')
:new_property('title',function(properties,value)
properties.title = value
end)
:define_draw(function(properties,parent,element)
element = parent.add{
name = properties.name,
type = 'frame',
caption = properties.title
}
return element
end)

View File

@@ -14,6 +14,15 @@ local Gui = {
concepts = {}
}
--[[-- Loads a concept from the concepts file, used internally
@tparam string concept the name of the concept to require
@usage-- Load a base concept
Gui.require_concept('frame')
]]
function Gui.require_concept(concept)
require('expcore.gui.concepts.'..concept)
end
--[[-- Gets the gui concept with this name
@tparam string name the name of the concept that you want to get
@usage-- Getting a gui concept
@@ -64,8 +73,8 @@ local custom_button = Gui.clone_concept('Button','CustomButton')
function Gui.clone_concept(name,new_name)
local concept = Gui.concepts[name] or error('Gui concept "'..name..'" is not defind',2)
if Gui.concepts[name] then
error('Gui concept "'..name..'" is already defind',2)
if Gui.concepts[new_name] then
error('Gui concept "'..new_name..'" is already defind',2)
end
return concept:clone(new_name)

View File

@@ -76,22 +76,24 @@ local Factorio_Events = {}
local Prototype = {
draw_callbacks = {},
properties = {},
factorio_events = {},
events = {}
}
--- Acts as a gernal handler for any factorio event
local function factorio_event_handler(event)
local element = event.element
local event_handlers = Factorio_Events[event.name]
if element then
if not element.valid then return end
local concept_name = element.name
local concept_event = Factorio_Events[event.name][concept_name]
concept_event[1]:raise_event(concept_event[2],event,true)
local concept_event_raise = event_handlers[element.name]
if concept_event_raise then
concept_event_raise(event)
end
else
local events_handlers = Factorio_Events[event.name]
for _,concept_event in pairs(events_handlers) do
concept_event[1]:raise_event(concept_event[2],event,true)
for _,concept_event_raise in pairs(event_handlers) do
concept_event_raise(event)
end
end
@@ -110,6 +112,7 @@ function Prototype:clone(concept_name)
-- Replace name of the concept
concept.name = concept_name
concept.properties.name = concept_name
concept:change_name()
-- Remove all event handlers that were copied
concept.events = {}
@@ -117,6 +120,14 @@ function Prototype:clone(concept_name)
concept.events[event_name] = {}
end
-- Remakes even handlers for factorio
concept.factorio_events = {}
for event_name,factorio_event in pairs(self.factorio_events) do
Factorio_Events[factorio_event][concept.name] = function(event)
concept:raise_event(event_name,event,true)
end
end
-- Remove all refrences to an instance store
if concept.instance_store then
concept.instance_store = nil
@@ -142,9 +153,6 @@ function Prototype:clone(concept_name)
concept.set_store_from_instance = nil
end
-- Sets the concept name
concept:change_name()
return concept
end
@@ -201,19 +209,24 @@ end)
end
local handlers = concept.events[event_name]
handlers[#handlers] = handler
handlers[#handlers+1] = handler
return concept
end
-- Adds the factorio event handler if this event is linked to one
if factorio_event then
self.factorio_events[event_name] = factorio_event
self.events[event_name].factorio_handler = event_condition
if not Factorio_Events[factorio_event] then
Factorio_Events[factorio_event] = {}
Event.add(factorio_event,factorio_event_handler)
end
Factorio_Events[factorio_event][self.name] = {self,event_name}
Factorio_Events[factorio_event][self.name] = function(event)
self:raise_event(event_name,event,true)
end
end
return self
@@ -259,7 +272,7 @@ function Prototype:raise_event(event_name,event,from_factorio)
for _,handler in ipairs(handlers) do
local success, err = pcall(handler,event)
if not success then
print('Gui event handler error with '..self.name..'/'..event_name..': '..err)
error('Gui event handler error with '..self.name..'/'..event_name..': '..err)
end
end
end
@@ -314,7 +327,7 @@ Gui.get_concept('CustomButton')
-- Call the setter method to update values if present
local success, err = pcall(setter_callback,concept.properties,value,...)
if not success then
print('Gui property handler error with '..concept.name..'/'..property_name..': '..err)
error('Gui property handler error with '..concept.name..'/'..property_name..': '..err)
end
else
-- Otherwise just update the key
@@ -392,7 +405,7 @@ function Prototype:draw(parent_element,...)
if success and rtn then
element = rtn
elseif not success then
print('Gui draw handler error with '..self.name..': '..rtn)
error('Gui draw handler error with '..self.name..': '..rtn)
end
end

View File

@@ -3,15 +3,40 @@
@alias Gui
]]
local Gui = require 'expcore.gui'
--- Tests.
-- functions used to test
-- @section tests
local Gui = require 'expcore.gui'
local Game = require 'utils.game' -- @dep utils.game
local test_prefix = '__GUI_TEST_'
local tests = {}
local function TEST(str) return test_prefix..str end
--[[
The main test frame
]]
local test_frame =
Gui.clone_concept('frame',TEST 'test_frame')
:set_title('Gui Tests')
:define_draw(function(properties,parent,element)
for category, _ in pairs(tests) do
element.add{
type = 'flow',
name = category,
direction = 'vertical'
}
end
end)
--[[-- Runs a set of gui tests to ensure that the system is working
@tparam LuaPlayer player the player that the guis are made for and who recives the results
@tparam[opt] string category when given only tests in this category are ran
@usage-- Run all gui tests
Gui.run_tests(Gui.test_string_return(game.print))
Gui.run_tests(game.player)
]]
function Gui.run_tests(player,category)
local results = {
@@ -42,18 +67,20 @@ function Gui.run_tests(player,category)
return results
end
local frame = player.gui.center[test_frame.name] or test_frame:draw(player.gui.center)
local cat_tests = tests[category]
results.total = #cat_tests
local output = player.print
for test_name, callback in pairs(cat_tests) do
local success, err = pcall(callback,player)
for test_name, concept in pairs(cat_tests) do
local success, err = pcall(concept.draw,concept,frame[category])
if success then
results.passed = results.passed + 1
else
results.erorrs[test_name] = err
results.errors[test_name] = err
results.failed = results.failed + 1
output(string.format('Test "%s / %s" failed:\n%s',category,test_name,err))
end
@@ -65,29 +92,51 @@ function Gui.run_tests(player,category)
end
--[[
Basic frame creation
Buttons
]]
local test_frame =
Gui.new_concept('test_frame')
:define_draw(function(properties,parent,element)
element =
parent.add{
name = properties.name,
type = 'frame',
caption = 'Gui Tests'
}
element.add{
type = 'label',
caption = 'Hello, World!'
}
return element
local basic_button =
Gui.clone_concept('button',TEST 'basic_button')
:set_caption('Basic Button')
:set_tooltip('Basic button')
:on_click(function(event)
event.player.print('You pressed basic button!')
end)
tests.Frame = {
['Draw Frame'] = function(player)
test_frame:draw(player.gui.center)
local sprite_button =
Gui.clone_concept('button',TEST 'sprite_button')
:set_sprite('utility/warning_icon')
:set_tooltip('Sprite button')
:on_click(function(event)
event.player.print('You pressed sprite button!')
end)
local multi_sprite_button =
Gui.clone_concept('button',TEST 'multi_sprite_button')
:set_sprite('utility/warning_icon','utility/warning','utility/warning_white')
:set_tooltip('Multi-sprite button')
:on_click(function(event)
event.player.print('You pressed multi sprite button!')
end)
local admin_button =
Gui.clone_concept('button',TEST 'admin_button')
:set_caption('Admin Button')
:set_tooltip('Admin button')
:define_draw(function(properties,parent,element)
local player = Game.get_player_by_index(element.player_index)
if not player.admin then
element.enabled = false
element.tooltip = 'You must be admin to press this button'
end
end)
:on_click(function(event)
event.player.print('You pressed admin button!')
end)
tests.Buttons = {
['Basic Button'] = basic_button,
['Sprite Button'] = sprite_button,
['Multi Sprite Button'] = multi_sprite_button,
['Admin Button'] = admin_button,
}