Document.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #pragma once
  2. /*
  3. This defines the Document type in the Lua global namespace
  4. It inherits from Element, so check the documentation for Element.h to
  5. see what other functions you can call from a Document object. Document
  6. specific things are below
  7. //methods
  8. noreturn Document:PullToFront()
  9. noreturn Document:PushToBack()
  10. noreturn Document:Show(int flag)
  11. noreturn Document:Hide()
  12. noreturn Document:Close()
  13. Element Document:CreateElement(string tag)
  14. ElementText Document:CreateTextNode --NYI
  15. //getters
  16. string Document.title
  17. Context Document.context
  18. //setter
  19. Document.title = string
  20. */
  21. #include "lua.hpp"
  22. #include "LuaType.h"
  23. #include <Rocket/Core/ElementDocument.h>
  24. namespace Rocket {
  25. namespace Core {
  26. namespace Lua {
  27. typedef ElementDocument Document;
  28. template<> void LuaType<Document>::extra_init(lua_State* L, int metatable_index);
  29. template<> bool LuaType<Document>::is_reference_counted();
  30. //methods
  31. int DocumentPullToFront(lua_State* L, Document* obj);
  32. int DocumentPushToBack(lua_State* L, Document* obj);
  33. int DocumentShow(lua_State* L, Document* obj);
  34. int DocumentHide(lua_State* L, Document* obj);
  35. int DocumentClose(lua_State* L, Document* obj);
  36. int DocumentCreateElement(lua_State* L, Document* obj);
  37. int DocumentCreateTextNode(lua_State* L, Document* obj);
  38. //getters
  39. int DocumentGetAttrtitle(lua_State* L);
  40. int DocumentGetAttrcontext(lua_State* L);
  41. //setters
  42. int DocumentSetAttrtitle(lua_State* L);
  43. RegType<Document> DocumentMethods[];
  44. luaL_reg DocumentGetters[];
  45. luaL_reg DocumentSetters[];
  46. /*
  47. template<> const char* GetTClassName<Document>();
  48. template<> RegType<Document>* GetMethodTable<Document>();
  49. template<> luaL_reg* GetAttrTable<Document>();
  50. template<> luaL_reg* SetAttrTable<Document>();
  51. */
  52. }
  53. }
  54. }