Browse Source

The big restructuring for RmlUi 4.0. This involves breaking changes but should benefit everyone using the library in the future.

- The old `Controls` plugin is now gone. But fear not! It has been merged into the `Core` project .
- The old `Rml::Core` and `Rml::Controls` namespaces are now located directly in the `Rml` namespace.
- The old `Controls` public header files have been moved to `<RmlUi/Core/Elements/...>`.
- The old `Controls` source files and private header files have been moved to `Source/Core/Elements/...`.
- The `Debugger` plugin remains as before at the same location and same namespace `Rml::Debugger`.

The Lua plugins have been changed to reflect the above changes.

- The old Lua plugins `RmlCoreLua` and `RmlControlsLua` have been merged into a single library `RmlLua`.
- The public header files are now located at `<RmlUi/Lua/...>`.
- The Lua plugin is now initialized by calling `Rml::Lua::Initialise()` located in `<RmlUi/Lua/Lua.h>`.
- Separated the Lua interpreter functions from initialization and the Lua plugin.
- Renamed macros in the Lua plugin, they now start with `RMLUI_`.

Related changes.

- Refactored slider widgets to avoid duplicate names in Core and Controls.
- Renamed header guard macros.
Michael Ragazzon 5 years ago
parent
commit
e9844e3801
100 changed files with 716 additions and 1207 deletions
  1. 168 199
      CMake/FileList.cmake
  2. 9 11
      CMake/gen_filelists.sh
  3. 25 42
      CMakeLists.txt
  4. 0 49
      Include/RmlUi/Controls.h
  5. 0 43
      Include/RmlUi/Controls/Controls.h
  6. 0 48
      Include/RmlUi/Controls/Header.h
  7. 17 2
      Include/RmlUi/Core.h
  8. 4 7
      Include/RmlUi/Core/Animation.h
  9. 3 6
      Include/RmlUi/Core/BaseXMLParser.h
  10. 3 6
      Include/RmlUi/Core/Box.h
  11. 3 5
      Include/RmlUi/Core/Colour.h
  12. 1 3
      Include/RmlUi/Core/Colour.inl
  13. 3 6
      Include/RmlUi/Core/ComputedValues.h
  14. 1 1
      Include/RmlUi/Core/Containers/robin_hood.h
  15. 4 7
      Include/RmlUi/Core/Context.h
  16. 3 6
      Include/RmlUi/Core/ContextInstancer.h
  17. 3 6
      Include/RmlUi/Core/ConvolutionFilter.h
  18. 8 10
      Include/RmlUi/Core/Core.h
  19. 3 6
      Include/RmlUi/Core/DataController.h
  20. 3 6
      Include/RmlUi/Core/DataModel.h
  21. 3 7
      Include/RmlUi/Core/DataTypeRegister.h
  22. 3 6
      Include/RmlUi/Core/DataTypes.h
  23. 3 7
      Include/RmlUi/Core/DataVariable.h
  24. 3 6
      Include/RmlUi/Core/DataView.h
  25. 8 10
      Include/RmlUi/Core/Debug.h
  26. 3 6
      Include/RmlUi/Core/Decorator.h
  27. 3 6
      Include/RmlUi/Core/DecoratorInstancer.h
  28. 3 6
      Include/RmlUi/Core/Dictionary.h
  29. 3 5
      Include/RmlUi/Core/Element.h
  30. 1 3
      Include/RmlUi/Core/Element.inl
  31. 3 6
      Include/RmlUi/Core/ElementDocument.h
  32. 3 6
      Include/RmlUi/Core/ElementInstancer.h
  33. 5 8
      Include/RmlUi/Core/ElementScroll.h
  34. 3 6
      Include/RmlUi/Core/ElementText.h
  35. 3 6
      Include/RmlUi/Core/ElementUtilities.h
  36. 12 15
      Include/RmlUi/Core/Elements/DataFormatter.h
  37. 20 23
      Include/RmlUi/Core/Elements/DataQuery.h
  38. 22 25
      Include/RmlUi/Core/Elements/DataSource.h
  39. 14 18
      Include/RmlUi/Core/Elements/DataSourceListener.h
  40. 18 21
      Include/RmlUi/Core/Elements/ElementDataGrid.h
  41. 11 14
      Include/RmlUi/Core/Elements/ElementDataGridCell.h
  42. 8 11
      Include/RmlUi/Core/Elements/ElementDataGridExpandButton.h
  43. 15 18
      Include/RmlUi/Core/Elements/ElementDataGridRow.h
  44. 10 13
      Include/RmlUi/Core/Elements/ElementForm.h
  45. 14 17
      Include/RmlUi/Core/Elements/ElementFormControl.h
  46. 14 16
      Include/RmlUi/Core/Elements/ElementFormControlDataSelect.h
  47. 15 18
      Include/RmlUi/Core/Elements/ElementFormControlInput.h
  48. 10 13
      Include/RmlUi/Core/Elements/ElementFormControlSelect.h
  49. 12 15
      Include/RmlUi/Core/Elements/ElementFormControlTextArea.h
  50. 18 21
      Include/RmlUi/Core/Elements/ElementProgressBar.h
  51. 15 18
      Include/RmlUi/Core/Elements/ElementTabSet.h
  52. 11 17
      Include/RmlUi/Core/Elements/SelectOption.h
  53. 3 6
      Include/RmlUi/Core/Event.h
  54. 3 6
      Include/RmlUi/Core/EventInstancer.h
  55. 3 6
      Include/RmlUi/Core/EventListener.h
  56. 3 6
      Include/RmlUi/Core/EventListenerInstancer.h
  57. 12 15
      Include/RmlUi/Core/Factory.h
  58. 4 7
      Include/RmlUi/Core/FileInterface.h
  59. 3 6
      Include/RmlUi/Core/FontEffect.h
  60. 3 6
      Include/RmlUi/Core/FontEffectInstancer.h
  61. 4 8
      Include/RmlUi/Core/FontEngineInterface.h
  62. 3 6
      Include/RmlUi/Core/FontGlyph.h
  63. 3 6
      Include/RmlUi/Core/Geometry.h
  64. 3 6
      Include/RmlUi/Core/GeometryUtilities.h
  65. 2 2
      Include/RmlUi/Core/Header.h
  66. 4 8
      Include/RmlUi/Core/ID.h
  67. 3 6
      Include/RmlUi/Core/Input.h
  68. 3 6
      Include/RmlUi/Core/Log.h
  69. 0 54
      Include/RmlUi/Core/Lua/Header.h
  70. 4 6
      Include/RmlUi/Core/Math.h
  71. 3 6
      Include/RmlUi/Core/MathTypes.h
  72. 4 5
      Include/RmlUi/Core/Matrix4.h
  73. 3 5
      Include/RmlUi/Core/Matrix4.inl
  74. 1 4
      Include/RmlUi/Core/ObserverPtr.h
  75. 2 2
      Include/RmlUi/Core/Platform.h
  76. 3 6
      Include/RmlUi/Core/Plugin.h
  77. 2 2
      Include/RmlUi/Core/Profiling.h
  78. 3 6
      Include/RmlUi/Core/PropertiesIteratorView.h
  79. 3 6
      Include/RmlUi/Core/Property.h
  80. 3 6
      Include/RmlUi/Core/PropertyDefinition.h
  81. 4 7
      Include/RmlUi/Core/PropertyDictionary.h
  82. 3 6
      Include/RmlUi/Core/PropertyIdSet.h
  83. 3 6
      Include/RmlUi/Core/PropertyParser.h
  84. 3 6
      Include/RmlUi/Core/PropertySpecification.h
  85. 4 7
      Include/RmlUi/Core/RenderInterface.h
  86. 3 6
      Include/RmlUi/Core/ScriptInterface.h
  87. 1 4
      Include/RmlUi/Core/Spritesheet.h
  88. 3 6
      Include/RmlUi/Core/Stream.h
  89. 3 6
      Include/RmlUi/Core/StreamMemory.h
  90. 3 6
      Include/RmlUi/Core/StringUtilities.h
  91. 3 6
      Include/RmlUi/Core/StyleSheet.h
  92. 4 7
      Include/RmlUi/Core/StyleSheetSpecification.h
  93. 3 6
      Include/RmlUi/Core/SystemInterface.h
  94. 3 6
      Include/RmlUi/Core/Texture.h
  95. 6 8
      Include/RmlUi/Core/Traits.h
  96. 4 7
      Include/RmlUi/Core/Transform.h
  97. 8 11
      Include/RmlUi/Core/TransformPrimitive.h
  98. 3 7
      Include/RmlUi/Core/TransformState.h
  99. 3 6
      Include/RmlUi/Core/Tween.h
  100. 9 13
      Include/RmlUi/Core/TypeConverter.h

+ 168 - 199
CMake/FileList.cmake

@@ -26,7 +26,24 @@ set(Core_HDR_FILES
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementDecoration.h
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementDefinition.h
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementHandle.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/ElementImage.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementImage.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementTextSelection.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputType.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeButton.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeCheckbox.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeRadio.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeRange.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeSubmit.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeText.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetDropDown.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetSlider.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetTextInput.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetTextInputMultiLine.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetTextInputSingleLine.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetTextInputSingleLinePassword.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/XMLNodeHandlerDataGrid.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/XMLNodeHandlerTabSet.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/XMLNodeHandlerTextArea.h
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementStyle.h
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementTextDefault.h
     ${PROJECT_SOURCE_DIR}/Source/Core/EventDispatcher.h
@@ -83,8 +100,7 @@ set(Core_HDR_FILES
     ${PROJECT_SOURCE_DIR}/Source/Core/TextureLayoutTexture.h
     ${PROJECT_SOURCE_DIR}/Source/Core/TextureResource.h
     ${PROJECT_SOURCE_DIR}/Source/Core/Utilities.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/WidgetSlider.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/WidgetSliderScroll.h
+    ${PROJECT_SOURCE_DIR}/Source/Core/WidgetScroll.h
     ${PROJECT_SOURCE_DIR}/Source/Core/XMLNodeHandlerBody.h
     ${PROJECT_SOURCE_DIR}/Source/Core/XMLNodeHandlerDefault.h
     ${PROJECT_SOURCE_DIR}/Source/Core/XMLNodeHandlerHead.h
@@ -124,6 +140,23 @@ set(Core_PUB_HDR_FILES
     ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Element.inl
     ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ElementDocument.h
     ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ElementInstancer.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/DataFormatter.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/DataQuery.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/DataSource.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/DataSourceListener.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementDataGrid.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementDataGridCell.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementDataGridExpandButton.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementDataGridRow.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementForm.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementFormControl.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementFormControlDataSelect.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementFormControlInput.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementFormControlSelect.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementFormControlTextArea.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementProgressBar.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/ElementTabSet.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Elements/SelectOption.h
     ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ElementScroll.h
     ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ElementText.h
     ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ElementUtilities.h
@@ -231,8 +264,42 @@ set(Core_SRC_FILES
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementDefinition.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementDocument.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementHandle.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/ElementImage.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementInstancer.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/DataFormatter.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/DataQuery.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/DataSource.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/DataSourceListener.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementDataGrid.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementDataGridCell.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementDataGridExpandButton.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementDataGridRow.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementForm.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementFormControl.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementFormControlDataSelect.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementFormControlInput.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementFormControlSelect.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementFormControlTextArea.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementImage.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementProgressBar.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementTabSet.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/ElementTextSelection.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputType.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeButton.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeCheckbox.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeRadio.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeRange.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeSubmit.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/InputTypeText.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/SelectOption.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetDropDown.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetSlider.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetTextInput.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetTextInputMultiLine.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetTextInputSingleLine.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/WidgetTextInputSingleLinePassword.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/XMLNodeHandlerDataGrid.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/XMLNodeHandlerTabSet.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/Elements/XMLNodeHandlerTextArea.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementScroll.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementStyle.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/ElementText.cpp
@@ -323,8 +390,7 @@ set(Core_SRC_FILES
     ${PROJECT_SOURCE_DIR}/Source/Core/Variant.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/Vector3.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/Vector4.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/WidgetSlider.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/WidgetSliderScroll.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Core/WidgetScroll.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/XMLNodeHandler.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/XMLNodeHandlerBody.cpp
     ${PROJECT_SOURCE_DIR}/Source/Core/XMLNodeHandlerDefault.cpp
@@ -334,96 +400,11 @@ set(Core_SRC_FILES
     ${PROJECT_SOURCE_DIR}/Source/Core/XMLParseTools.cpp
 )
 
-set(Controls_HDR_FILES
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementTextSelection.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputType.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeButton.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeCheckbox.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeRadio.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeRange.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeSubmit.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeText.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/precompiled.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetDropDown.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetSlider.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetSliderInput.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetTextInput.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetTextInputMultiLine.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetTextInputSingleLine.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetTextInputSingleLinePassword.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/XMLNodeHandlerDataGrid.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/XMLNodeHandlerTabSet.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/XMLNodeHandlerTextArea.h
-)
-
-set(MASTER_Controls_PUB_HDR_FILES
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls.h
-)
-
-set(Controls_PUB_HDR_FILES
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/Controls.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/DataFormatter.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/DataQuery.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/DataSource.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/DataSourceListener.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementDataGrid.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementDataGridCell.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementDataGridExpandButton.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementDataGridRow.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementForm.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementFormControl.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementFormControlDataSelect.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementFormControlInput.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementFormControlSelect.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementFormControlTextArea.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementProgressBar.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/ElementTabSet.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/Header.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/SelectOption.h
-)
-
-set(Controls_SRC_FILES
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Controls.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/DataFormatter.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/DataQuery.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/DataSource.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/DataSourceListener.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementDataGrid.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementDataGridCell.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementDataGridExpandButton.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementDataGridRow.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementForm.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementFormControl.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementFormControlDataSelect.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementFormControlInput.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementFormControlSelect.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementFormControlTextArea.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementProgressBar.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementTabSet.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/ElementTextSelection.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputType.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeButton.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeCheckbox.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeRadio.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeRange.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeSubmit.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/InputTypeText.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/SelectOption.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetDropDown.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetSlider.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetSliderInput.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetTextInput.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetTextInputMultiLine.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetTextInputSingleLine.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/WidgetTextInputSingleLinePassword.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/XMLNodeHandlerDataGrid.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/XMLNodeHandlerTabSet.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/XMLNodeHandlerTextArea.cpp
-)
-
 set(Debugger_HDR_FILES
     ${PROJECT_SOURCE_DIR}/Source/Debugger/BeaconSource.h
     ${PROJECT_SOURCE_DIR}/Source/Debugger/CommonSource.h
+    ${PROJECT_SOURCE_DIR}/Source/Debugger/DebuggerPlugin.h
+    ${PROJECT_SOURCE_DIR}/Source/Debugger/DebuggerSystemInterface.h
     ${PROJECT_SOURCE_DIR}/Source/Debugger/ElementContextHook.h
     ${PROJECT_SOURCE_DIR}/Source/Debugger/ElementInfo.h
     ${PROJECT_SOURCE_DIR}/Source/Debugger/ElementLog.h
@@ -432,8 +413,6 @@ set(Debugger_HDR_FILES
     ${PROJECT_SOURCE_DIR}/Source/Debugger/InfoSource.h
     ${PROJECT_SOURCE_DIR}/Source/Debugger/LogSource.h
     ${PROJECT_SOURCE_DIR}/Source/Debugger/MenuSource.h
-    ${PROJECT_SOURCE_DIR}/Source/Debugger/Plugin.h
-    ${PROJECT_SOURCE_DIR}/Source/Debugger/SystemInterface.h
 )
 
 set(MASTER_Debugger_PUB_HDR_FILES
@@ -447,12 +426,12 @@ set(Debugger_PUB_HDR_FILES
 
 set(Debugger_SRC_FILES
     ${PROJECT_SOURCE_DIR}/Source/Debugger/Debugger.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Debugger/DebuggerPlugin.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Debugger/DebuggerSystemInterface.cpp
     ${PROJECT_SOURCE_DIR}/Source/Debugger/ElementContextHook.cpp
     ${PROJECT_SOURCE_DIR}/Source/Debugger/ElementInfo.cpp
     ${PROJECT_SOURCE_DIR}/Source/Debugger/ElementLog.cpp
     ${PROJECT_SOURCE_DIR}/Source/Debugger/Geometry.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Debugger/Plugin.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Debugger/SystemInterface.cpp
 )
 
 if(NOT NO_FONT_INTERFACE_DEFAULT)
@@ -480,111 +459,101 @@ if(NOT NO_FONT_INTERFACE_DEFAULT)
     )
 endif()
 
-set(LuaCore_HDR_FILES
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Colourb.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Colourf.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Context.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ContextDocumentsProxy.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Document.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Element.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementAttributesProxy.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementChildNodesProxy.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementInstancer.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementStyleProxy.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementText.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Event.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/EventParametersProxy.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/GlobalLuaFunctions.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Log.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaDocument.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaDocumentElementInstancer.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaElement.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaElementInstancer.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaEventListener.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaEventListenerInstancer.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/precompiled.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/RmlUi.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/RmlUiContextsProxy.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Vector2f.h
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Vector2i.h
-)
-
-set(LuaCore_PUB_HDR_FILES
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Lua/Header.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Lua/Interpreter.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Lua/LuaType.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Lua/Utilities.h
-)
-
-set(LuaCore_SRC_FILES
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Colourb.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Colourf.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Context.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ContextDocumentsProxy.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Document.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Element.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementAttributesProxy.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementChildNodesProxy.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementInstancer.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementStyleProxy.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/ElementText.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Event.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/EventParametersProxy.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/GlobalLuaFunctions.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Interpreter.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Log.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaDocument.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaDocumentElementInstancer.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaElementInstancer.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaEventListener.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/LuaEventListenerInstancer.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/precompiled.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/RmlUi.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/RmlUiContextsProxy.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Utilities.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Vector2f.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Core/Lua/Vector2i.cpp
-)
-
-set(LuaControls_HDR_FILES
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/As.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/DataFormatter.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/DataSource.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementDataGrid.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementDataGridRow.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementForm.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControl.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControlDataSelect.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControlInput.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControlSelect.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControlTextArea.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementTabSet.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/LuaDataFormatter.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/LuaDataSource.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/precompiled.h
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/SelectOptionsProxy.h
+set(Lua_HDR_FILES
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Colourb.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Colourf.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Context.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ContextDocumentsProxy.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Document.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Element.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementAttributesProxy.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementChildNodesProxy.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementInstancer.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/As.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/DataFormatter.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/DataSource.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementDataGrid.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementDataGridRow.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementForm.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControl.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControlDataSelect.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControlInput.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControlSelect.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControlTextArea.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementTabSet.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/LuaDataFormatter.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/LuaDataSource.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/SelectOptionsProxy.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementStyleProxy.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementText.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Event.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/EventParametersProxy.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/GlobalLuaFunctions.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Log.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaDocument.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaDocumentElementInstancer.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaElementInstancer.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaEventListener.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaEventListenerInstancer.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaPlugin.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/RmlUi.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/RmlUiContextsProxy.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Vector2f.h
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Vector2i.h
 )
 
-set(LuaControls_PUB_HDR_FILES
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/Lua/Controls.h
-    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Controls/Lua/Header.h
+set(Lua_PUB_HDR_FILES
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/Header.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/IncludeLua.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/Interpreter.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/Lua.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/LuaType.h
+    ${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/Utilities.h
 )
 
-set(LuaControls_SRC_FILES
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/Controls.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/DataFormatter.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/DataSource.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementDataGrid.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementDataGridRow.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementForm.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControl.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControlDataSelect.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControlInput.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControlSelect.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementFormControlTextArea.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/ElementTabSet.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/LuaDataFormatter.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/LuaDataSource.cpp
-    ${PROJECT_SOURCE_DIR}/Source/Controls/Lua/SelectOptionsProxy.cpp
+set(Lua_SRC_FILES
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Colourb.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Colourf.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Context.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ContextDocumentsProxy.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Document.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Element.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementAttributesProxy.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementChildNodesProxy.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementInstancer.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/DataFormatter.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/DataSource.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementDataGrid.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementDataGridRow.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementForm.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControl.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControlDataSelect.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControlInput.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControlSelect.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementFormControlTextArea.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/ElementTabSet.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/LuaDataFormatter.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/LuaDataSource.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Elements/SelectOptionsProxy.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementStyleProxy.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/ElementText.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Event.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/EventParametersProxy.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/GlobalLuaFunctions.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Interpreter.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Log.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Lua.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaDocument.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaDocumentElementInstancer.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaElementInstancer.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaEventListener.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaEventListenerInstancer.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaPlugin.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/LuaType.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/RmlUi.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/RmlUiContextsProxy.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Utilities.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Vector2f.cpp
+    ${PROJECT_SOURCE_DIR}/Source/Lua/Vector2i.cpp
 )
 

+ 9 - 11
CMake/gen_filelists.sh

@@ -50,29 +50,27 @@ printfontdefaultfiles() {
 
 printluafiles() {
     # Print headers
-    echo ${hdr/lib/Lua${1}} >>$file
-    find  $srcpath/$1/$luapath -iname "*.h" -exec echo '    '$srcdir/{} \; 2>/dev/null | sort -f >>$file
+    echo ${hdr/lib/Lua} >>$file
+    find  $srcpath/$luapath$1 -iname "*.h" -exec echo '    '$srcdir/{} \; 2>/dev/null | sort -f >>$file
     echo -e ')\n' >>$file
     # Print public headers
-    echo ${pubhdr/lib/Lua${1}} >>$file
-    find  $hdrpath/$1/$luapath -iname "*.h" -exec echo '    '$srcdir/{} \; 2>/dev/null | sort -f >>$file 2>/dev/null
+    echo ${pubhdr/lib/Lua} >>$file
+    find  $hdrpath/$luapath$1 -iname "*.h" -exec echo '    '$srcdir/{} \; 2>/dev/null | sort -f >>$file 2>/dev/null
     echo -e ')\n' >>$file
     # Print source files
-    echo ${src/lib/Lua${1}} >>$file
-    find  $srcpath/$1/$luapath -iname "*.cpp" -exec echo '    '$srcdir/{} \; 2>/dev/null | sort -f >>$file
+    echo ${src/lib/Lua} >>$file
+    find  $srcpath/$luapath$1 -iname "*.cpp" -exec echo '    '$srcdir/{} \; 2>/dev/null | sort -f >>$file
     echo -e ')\n' >>$file
 }
 
 pushd $basedir
 echo -e "# This file was auto-generated with gen_filelists.sh\n" >$file
-for lib in "Core" "Controls" "Debugger"; do
+for lib in "Core" "Debugger"; do
     printfiles $lib
 done
 
 printfontdefaultfiles "Core"
 
-for lib in "Core" "Controls"; do
-    printluafiles $lib
-done
-popd
+printluafiles
 
+popd

+ 25 - 42
CMakeLists.txt

@@ -238,7 +238,7 @@ endif()
 
 #Lua
 if(BUILD_LUA_BINDINGS)
-	find_package(Lua)
+	find_package(Lua REQUIRED)
 	if(LUA_FOUND)
 		include_directories(${LUA_INCLUDE_DIR})
 		list(APPEND LUA_BINDINGS_LINK_LIBS ${LUA_LIBRARIES})
@@ -262,7 +262,7 @@ if(NOT BUILD_FRAMEWORK)
 # Build libraries ==================
 #===================================
 
-set(LIBRARIES Core Controls Debugger)
+set(LIBRARIES Core Debugger)
 
 foreach(library ${LIBRARIES})
 	set(NAME Rml${library})
@@ -298,7 +298,6 @@ target_compile_definitions(RmlCore PRIVATE RMLUI_VERSION="${RMLUI_VERSION_SHORT}
 
 if (PRECOMPILED_HEADERS_ENABLED)
 	target_precompile_headers(RmlCore PRIVATE ${PROJECT_SOURCE_DIR}/Source/Core/precompiled.h)
-	target_precompile_headers(RmlControls PRIVATE ${PROJECT_SOURCE_DIR}/Source/Controls/precompiled.h)
 endif()
 
 
@@ -311,7 +310,6 @@ else(NOT BUILD_FRAMEWORK)
 
 	set(MASTER_PUB_HDR_FILES
 		${MASTER_Core_PUB_HDR_FILES}
-		${MASTER_Controls_PUB_HDR_FILES}
 		${MASTER_Debugger_PUB_HDR_FILES}
 	)
 
@@ -320,10 +318,6 @@ else(NOT BUILD_FRAMEWORK)
 		${MASTER_Core_PUB_HDR_FILES}
 		${Core_PUB_HDR_FILES}
 		${Core_SRC_FILES}
-		${Controls_HDR_FILES}
-		${MASTER_Controls_PUB_HDR_FILES}
-		${Controls_PUB_HDR_FILES}
-		${Controls_SRC_FILES}
 		${Debugger_HDR_FILES}
 		${MASTER_Debugger_PUB_HDR_FILES}
 		${Debugger_PUB_HDR_FILES}
@@ -341,9 +335,6 @@ else(NOT BUILD_FRAMEWORK)
 	set_property(SOURCE ${Core_PUB_HDR_FILES}
 		PROPERTY MACOSX_PACKAGE_LOCATION Headers/Core
 	)
-	set_property(SOURCE ${Controls_PUB_HDR_FILES}
-		PROPERTY MACOSX_PACKAGE_LOCATION Headers/Controls
-	)
 	set_property(SOURCE ${Debugger_PUB_HDR_FILES}
 		PROPERTY MACOSX_PACKAGE_LOCATION Headers/Debugger
 	)
@@ -370,30 +361,26 @@ endif(NOT BUILD_FRAMEWORK)
 
 # Build Lua bindings
 if(BUILD_LUA_BINDINGS)
-	set(LIBRARIES Core Controls)
-
-	foreach(library ${LIBRARIES})
-		set(NAME Rml${library}Lua)
+	set(NAME RmlLua)
 
-		add_library(${NAME} ${Lua${library}_SRC_FILES}
-			${Lua${library}_HDR_FILES}
-			${Lua${library}_PUB_HDR_FILES}
-		)
+	add_library(${NAME} ${Lua_SRC_FILES}
+		${Lua_HDR_FILES}
+		${Lua_PUB_HDR_FILES}
+	)
 
-		set_target_properties(${NAME} PROPERTIES
-		   VERSION ${PROJECT_VERSION}
-		   SOVERSION ${PROJECT_VERSION_MAJOR}
-		)
+	set_target_properties(${NAME} PROPERTIES
+	   VERSION ${PROJECT_VERSION}
+	   SOVERSION ${PROJECT_VERSION_MAJOR}
+	)
 
-		install(TARGETS ${NAME}
-			EXPORT RmlUiTargets
-			LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-			ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
-			RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
-		)
-		
-		set(RMLUI_EXPORTED_TARGETS ${RMLUI_EXPORTED_TARGETS} ${NAME})
-	endforeach(library)
+	install(TARGETS ${NAME}
+		EXPORT RmlUiTargets
+		LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+		ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+		RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)
+	
+	set(RMLUI_EXPORTED_TARGETS ${RMLUI_EXPORTED_TARGETS} ${NAME})
 endif()
 
 
@@ -423,7 +410,6 @@ endif()
 
 if(NOT BUILD_FRAMEWORK)
 target_link_libraries(RmlCore ${CORE_LINK_LIBS})
-target_link_libraries(RmlControls RmlCore)
 target_link_libraries(RmlDebugger RmlCore)
 else(NOT BUILD_FRAMEWORK)
 target_link_libraries(RmlUi ${CORE_LINK_LIBS})
@@ -431,11 +417,9 @@ endif(NOT BUILD_FRAMEWORK)
 
 if(BUILD_LUA_BINDINGS)
 	if(NOT BUILD_FRAMEWORK)
-		target_link_libraries(RmlCoreLua RmlCore ${LUA_BINDINGS_LINK_LIBS})
-		target_link_libraries(RmlControlsLua RmlControls RmlCoreLua ${LUA_BINDINGS_LINK_LIBS})
+		target_link_libraries(RmlLua RmlCore ${LUA_BINDINGS_LINK_LIBS})
 	else(NOT BUILD_FRAMEWORK)
-		target_link_libraries(RmlCoreLua RmlUi ${LUA_BINDINGS_LINK_LIBS})
-		target_link_libraries(RmlControlsLua RmlUi RmlCoreLua ${LUA_BINDINGS_LINK_LIBS})
+		target_link_libraries(RmlLua RmlUi ${LUA_BINDINGS_LINK_LIBS})
 	endif(NOT BUILD_FRAMEWORK)
 endif()
 
@@ -473,14 +457,13 @@ if(BUILD_SAMPLES)
 	
 if(NOT BUILD_FRAMEWORK)
 	set(sample_LIBRARIES
-		shell 
-		RmlCore 
-		RmlControls
+		shell
+		RmlCore
 		RmlDebugger
 	)
 else(NOT BUILD_FRAMEWORK)
 	set(sample_LIBRARIES
-		shell 
+		shell
 		RmlUi
 	)
 endif(NOT BUILD_FRAMEWORK)
@@ -618,7 +601,7 @@ endif(NOT BUILD_FRAMEWORK)
 		BUNDLE DESTINATION ${SAMPLES_DIR})
 
 	if(BUILD_LUA_BINDINGS)
-		bl_sample(luainvaders RmlCoreLua RmlControlsLua ${sample_LIBRARIES} ${LUA_BINDINGS_LINK_LIBS})
+		bl_sample(luainvaders RmlLua ${sample_LIBRARIES} ${LUA_BINDINGS_LINK_LIBS})
 		install(DIRECTORY DESTINATION ${SAMPLES_DIR}/luainvaders)
 		install(TARGETS luainvaders 
 			RUNTIME DESTINATION ${SAMPLES_DIR}/luainvaders

+ 0 - 49
Include/RmlUi/Controls.h

@@ -1,49 +0,0 @@
-/*
- * This source file is part of RmlUi, the HTML/CSS Interface Middleware
- *
- * For the latest information, see http://github.com/mikke89/RmlUi
- *
- * Copyright (c) 2008-2010 CodePoint Ltd, Shift Technology Ltd
- * Copyright (c) 2019 The RmlUi Team, and contributors
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- * 
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- */
-
-#ifndef RMLUICONTROLS_H
-#define RMLUICONTROLS_H
-
-#include "Controls/Controls.h"
-
-#include "Controls/DataFormatter.h"
-#include "Controls/ElementDataGrid.h"
-#include "Controls/ElementDataGridCell.h"
-#include "Controls/ElementDataGridExpandButton.h"
-#include "Controls/ElementDataGridRow.h"
-#include "Controls/ElementForm.h"
-#include "Controls/ElementFormControl.h"
-#include "Controls/ElementFormControlDataSelect.h"
-#include "Controls/ElementFormControlInput.h"
-#include "Controls/ElementFormControlSelect.h"
-#include "Controls/ElementFormControlTextArea.h"
-#include "Controls/ElementProgressBar.h"
-#include "Controls/ElementTabSet.h"
-#include "Controls/SelectOption.h"
-
-#endif

+ 0 - 43
Include/RmlUi/Controls/Controls.h

@@ -1,43 +0,0 @@
-/*
- * This source file is part of RmlUi, the HTML/CSS Interface Middleware
- *
- * For the latest information, see http://github.com/mikke89/RmlUi
- *
- * Copyright (c) 2008-2010 CodePoint Ltd, Shift Technology Ltd
- * Copyright (c) 2019 The RmlUi Team, and contributors
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- * 
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- */
-
-#ifndef RMLUICONTROLSCONTROLS_H
-#define RMLUICONTROLSCONTROLS_H
-
-#include "Header.h"
-
-namespace Rml {
-namespace Controls {
-
-/// Registers the instancers for the custom controls.
-RMLUICONTROLS_API void Initialise();
-
-}
-}
-
-#endif

+ 0 - 48
Include/RmlUi/Controls/Header.h

@@ -1,48 +0,0 @@
-/*
- * This source file is part of RmlUi, the HTML/CSS Interface Middleware
- *
- * For the latest information, see http://github.com/mikke89/RmlUi
- *
- * Copyright (c) 2008-2010 CodePoint Ltd, Shift Technology Ltd
- * Copyright (c) 2019 The RmlUi Team, and contributors
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- * 
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- */
-
-#ifndef RMLUICONTROLSHEADER_H
-#define RMLUICONTROLSHEADER_H
-
-#include "../Core/Platform.h"
-
-#if !defined RMLUI_STATIC_LIB
-	#ifdef RMLUI_PLATFORM_WIN32
-		#ifdef RmlControls_EXPORTS
-			#define RMLUICONTROLS_API __declspec(dllexport)
-		#else
-			#define RMLUICONTROLS_API __declspec(dllimport)
-		#endif
-	#else
-		#define RMLUICONTROLS_API __attribute__((visibility("default")))
-	#endif
-#else
-	#define RMLUICONTROLS_API
-#endif
-
-#endif

+ 17 - 2
Include/RmlUi/Core.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICORE_H
-#define RMLUICORE_H
+#ifndef RMLUI_CORE_H
+#define RMLUI_CORE_H
 
 #include "Core/Core.h"
 
@@ -87,4 +87,19 @@
 #include "Core/XMLNodeHandler.h"
 #include "Core/XMLParser.h"
 
+#include "Core/Elements/DataFormatter.h"
+#include "Core/Elements/ElementDataGrid.h"
+#include "Core/Elements/ElementDataGridCell.h"
+#include "Core/Elements/ElementDataGridExpandButton.h"
+#include "Core/Elements/ElementDataGridRow.h"
+#include "Core/Elements/ElementForm.h"
+#include "Core/Elements/ElementFormControl.h"
+#include "Core/Elements/ElementFormControlDataSelect.h"
+#include "Core/Elements/ElementFormControlInput.h"
+#include "Core/Elements/ElementFormControlSelect.h"
+#include "Core/Elements/ElementFormControlTextArea.h"
+#include "Core/Elements/ElementProgressBar.h"
+#include "Core/Elements/ElementTabSet.h"
+#include "Core/Elements/SelectOption.h"
+
 #endif

+ 4 - 7
Include/RmlUi/Core/Animation.h

@@ -25,15 +25,14 @@
  *
  */
 
-#ifndef RMLUICOREANIMATION_H
-#define RMLUICOREANIMATION_H
+#ifndef RMLUI_CORE_ANIMATION_H
+#define RMLUI_CORE_ANIMATION_H
 
 #include "Types.h"
 #include "Tween.h"
 #include "ID.h"
 
 namespace Rml {
-namespace Core {
 
 /* Data parsed from the 'animation' property. */
 struct Animation {
@@ -72,7 +71,5 @@ inline bool operator!=(const Transition& a, const Transition& b) { return !(a ==
 inline bool operator==(const TransitionList& a, const TransitionList& b) { return a.none == b.none && a.all == b.all && a.transitions == b.transitions; }
 inline bool operator!=(const TransitionList& a, const TransitionList& b) { return !(a == b); }
 
-}
-}
-
-#endif
+} // namespace Rml
+#endif

+ 3 - 6
Include/RmlUi/Core/BaseXMLParser.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREBASEXMLPARSER_H
-#define RMLUICOREBASEXMLPARSER_H
+#ifndef RMLUI_CORE_BASEXMLPARSER_H
+#define RMLUI_CORE_BASEXMLPARSER_H
 
 #include "Header.h"
 #include "Types.h"
 #include "Dictionary.h"
 
 namespace Rml {
-namespace Core {
 
 class Stream;
 class URL;
@@ -136,7 +135,5 @@ class RMLUICORE_API BaseXMLParser
 		SmallUnorderedSet< String > attributes_for_inner_xml_data;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Box.h

@@ -26,13 +26,12 @@
  *
  */
 
-#ifndef RMLUICOREBOX_H
-#define RMLUICOREBOX_H
+#ifndef RMLUI_CORE_BOX_H
+#define RMLUI_CORE_BOX_H
 
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	Stores a box with four sized areas; content, padding, a border and margin. See
@@ -119,7 +118,5 @@ private:
 	Vector2f offset;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 5
Include/RmlUi/Core/Colour.h

@@ -26,13 +26,12 @@
  *
  */
 
-#ifndef RMLUICORECOLOUR_H
-#define RMLUICORECOLOUR_H
+#ifndef RMLUI_CORE_COLOUR_H
+#define RMLUI_CORE_COLOUR_H
 
 #include "Header.h"
 
 namespace Rml {
-namespace Core {
 
 /**	
 	Templated class for a four-component RGBA colour.
@@ -112,8 +111,7 @@ public:
 	ColourType red, green, blue, alpha;
 };
 
-}
-}
+} // namespace Rml
 
 
 #include "Colour.inl"

+ 1 - 3
Include/RmlUi/Core/Colour.inl

@@ -27,7 +27,6 @@
  */
 
 namespace Rml {
-namespace Core {
 
 // Lightweight, non-initialising constructor.
 template < typename ColourType, int AlphaDefault >
@@ -120,5 +119,4 @@ void RMLUICORE_API Colour< float, 1 >::operator*=(const Colour& rhs);
 template < >
 void RMLUICORE_API Colour< byte, 255 >::operator*=(const Colour& rhs);
 
-}
-}
+} // namespace Rml

+ 3 - 6
Include/RmlUi/Core/ComputedValues.h

@@ -25,14 +25,13 @@
  *
  */
 
-#ifndef RMLUICORECOMPUTEDVALUES_H
-#define RMLUICORECOMPUTEDVALUES_H
+#ifndef RMLUI_CORE_COMPUTEDVALUES_H
+#define RMLUI_CORE_COMPUTEDVALUES_H
 
 #include "Types.h"
 #include "Animation.h"
 
 namespace Rml {
-namespace Core {
 
 namespace Style
 {
@@ -221,7 +220,5 @@ RMLUICORE_API float ResolveValue(Style::LengthPercentage length, float base_valu
 
 using ComputedValues = Style::ComputedValues;
 
-}
-}
-
+} // namespace Rml
 #endif

+ 1 - 1
Include/RmlUi/Core/Containers/robin_hood.h

@@ -332,7 +332,7 @@ void doThrow(Args&&... args) {
 #else
 void doThrow(Args&&... ROBIN_HOOD_UNUSED(args) /*unused*/) {
     abort();
-}
+} // namespace Rml
 #endif
 
 template <typename E, typename T, typename... Args>

+ 4 - 7
Include/RmlUi/Core/Context.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICORECONTEXT_H
-#define RMLUICORECONTEXT_H
+#ifndef RMLUI_CORE_CONTEXT_H
+#define RMLUI_CORE_CONTEXT_H
 
 #include "Header.h"
 #include "Types.h"
@@ -36,7 +36,6 @@
 #include "ScriptInterface.h"
 
 namespace Rml {
-namespace Core {
 
 class Stream;
 class ContextInstancer;
@@ -57,7 +56,7 @@ enum class EventId : uint16_t;
 class RMLUICORE_API Context : public ScriptInterface
 {
 public:
-	/// Constructs a new, uninitialised context. This should not be called directly, use Core::CreateContext()
+	/// Constructs a new, uninitialised context. This should not be called directly, use CreateContext()
 	/// instead.
 	/// @param[in] name The name of the context.
 	Context(const String& name);
@@ -351,7 +350,5 @@ private:
 	friend RMLUICORE_API Context* CreateContext(const String&, const Vector2i&, RenderInterface*);
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/ContextInstancer.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICORECONTEXTINSTANCER_H
-#define RMLUICORECONTEXTINSTANCER_H
+#ifndef RMLUI_CORE_CONTEXTINSTANCER_H
+#define RMLUI_CORE_CONTEXTINSTANCER_H
 
 #include "Header.h"
 #include "Traits.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 class Context;
 class Event;
@@ -64,7 +63,5 @@ protected:
 	virtual void Release() = 0;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/ConvolutionFilter.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICORECONVOLUTIONFILTER_H
-#define RMLUICORECONVOLUTIONFILTER_H
+#ifndef RMLUI_CORE_CONVOLUTIONFILTER_H
+#define RMLUI_CORE_CONVOLUTIONFILTER_H
 
 #include "Header.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 enum class FilterOperation {
 	// The result is the sum of all the filtered pixels.
@@ -95,8 +94,6 @@ private:
 	FilterOperation operation = FilterOperation::Sum;
 };
 
-}
-}
-
+} // namespace Rml
 #endif
 

+ 8 - 10
Include/RmlUi/Core/Core.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICORECORE_H
-#define RMLUICORECORE_H
+#ifndef RMLUI_CORE_CORE_H
+#define RMLUI_CORE_CORE_H
 
 #include "Header.h"
 #include "Types.h"
@@ -35,7 +35,6 @@
 #include "ComputedValues.h"
 
 namespace Rml {
-namespace Core {
 
 class Plugin;
 class Context;
@@ -63,7 +62,7 @@ RMLUICORE_API String GetVersion();
 
 /// Sets the interface through which all system requests are made. This must be called before Initialise().
 /// @param[in] system_interface A non-owning pointer to the application-specified logging interface.
-/// @lifetime The interface must be kept alive until after the call to Core::Shutdown.
+/// @lifetime The interface must be kept alive until after the call to Rml::Shutdown.
 RMLUICORE_API void SetSystemInterface(SystemInterface* system_interface);
 /// Returns RmlUi's system interface.
 RMLUICORE_API SystemInterface* GetSystemInterface();
@@ -72,7 +71,7 @@ RMLUICORE_API SystemInterface* GetSystemInterface();
 /// it must be called before Initialise(). If no render interface is specified, then all contexts must have a custom
 /// render interface.
 /// @param[in] render_interface A non-owning pointer to the render interface implementation.
-/// @lifetime The interface must be kept alive until after the call to Core::Shutdown.
+/// @lifetime The interface must be kept alive until after the call to Rml::Shutdown.
 RMLUICORE_API void SetRenderInterface(RenderInterface* render_interface);
 /// Returns RmlUi's default's render interface.
 RMLUICORE_API RenderInterface* GetRenderInterface();
@@ -80,7 +79,7 @@ RMLUICORE_API RenderInterface* GetRenderInterface();
 /// Sets the interface through which all file I/O requests are made. This is not required to be called, but if it is it
 /// must be called before Initialise().
 /// @param[in] file_interface A non-owning pointer to the application-specified file interface.
-/// @lifetime The interface must be kept alive until after the call to Core::Shutdown.
+/// @lifetime The interface must be kept alive until after the call to Rml::Shutdown.
 RMLUICORE_API void SetFileInterface(FileInterface* file_interface);
 /// Returns RmlUi's file interface.
 RMLUICORE_API FileInterface* GetFileInterface();
@@ -88,7 +87,7 @@ RMLUICORE_API FileInterface* GetFileInterface();
 /// Sets the interface through which all font requests are made. This is not required to be called, but if it is
 /// it must be called before Initialise().
 /// @param[in] font_interface A non-owning pointer to the application-specified font engine interface.
-/// @lifetime The interface must be kept alive until after the call to Core::Shutdown.
+/// @lifetime The interface must be kept alive until after the call to Rml::Shutdown.
 RMLUICORE_API void SetFontEngineInterface(FontEngineInterface* font_interface);
 /// Returns RmlUi's font interface.
 RMLUICORE_API FontEngineInterface* GetFontEngineInterface();
@@ -97,7 +96,7 @@ RMLUICORE_API FontEngineInterface* GetFontEngineInterface();
 /// @param[in] name The new name of the context. This must be unique.
 /// @param[in] dimensions The initial dimensions of the new context.
 /// @param[in] render_interface The custom render interface to use, or nullptr to use the default.
-/// @lifetime If specified, the render interface must be kept alive until after the context is destroyed or the call to Core::Shutdown.
+/// @lifetime If specified, the render interface must be kept alive until after the context is destroyed or the call to Rml::Shutdown.
 /// @return A non-owning pointer to the new context, or nullptr if the context could not be created.
 RMLUICORE_API Context* CreateContext(const String& name, const Vector2i& dimensions, RenderInterface* render_interface = nullptr);
 /// Removes and destroys a context.
@@ -147,7 +146,6 @@ RMLUICORE_API void ReleaseTextures();
 /// Forces all compiled geometry handles generated by RmlUi to be released.
 RMLUICORE_API void ReleaseCompiledGeometry();
 
-}
-}
+} // namespace Rml
 
 #endif

+ 3 - 6
Include/RmlUi/Core/DataController.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREDATACONTROLLER_H
-#define RMLUICOREDATACONTROLLER_H
+#ifndef RMLUI_CORE_DATACONTROLLER_H
+#define RMLUI_CORE_DATACONTROLLER_H
 
 #include "Header.h"
 #include "Types.h"
@@ -35,7 +35,6 @@
 #include <unordered_map>
 
 namespace Rml {
-namespace Core {
 
 class Element;
 class DataModel;
@@ -117,7 +116,5 @@ private:
 };
 
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/DataModel.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREDATAMODEL_H
-#define RMLUICOREDATAMODEL_H
+#ifndef RMLUI_CORE_DATAMODEL_H
+#define RMLUI_CORE_DATAMODEL_H
 
 #include "Header.h"
 #include "Types.h"
@@ -36,7 +36,6 @@
 #include "DataTypeRegister.h"
 
 namespace Rml {
-namespace Core {
 
 class DataViews;
 class DataControllers;
@@ -189,7 +188,5 @@ private:
 	DataTypeRegister* type_register;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 7
Include/RmlUi/Core/DataTypeRegister.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREDATATYPEREGISTER_H
-#define RMLUICOREDATATYPEREGISTER_H
+#ifndef RMLUI_CORE_DATATYPEREGISTER_H
+#define RMLUI_CORE_DATATYPEREGISTER_H
 
 #include "Header.h"
 #include "Types.h"
@@ -38,8 +38,6 @@
 
 
 namespace Rml {
-namespace Core {
-
 
 template<typename T>
 struct is_valid_data_scalar {
@@ -202,7 +200,5 @@ inline StructHandle<Object>& StructHandle<Object>::RegisterMemberFunc(const Stri
 	return *this;
 }
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/DataTypes.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREDATADEFINITIONS_H
-#define RMLUICOREDATADEFINITIONS_H
+#ifndef RMLUI_CORE_DATADEFINITIONS_H
+#define RMLUI_CORE_DATADEFINITIONS_H
 
 #include "Header.h"
 #include "Types.h"
 #include <functional>
 
 namespace Rml {
-namespace Core {
 
 class VariableDefinition;
 class DataTypeRegister;
@@ -60,7 +59,5 @@ struct DataAddressEntry {
 };
 using DataAddress = std::vector<DataAddressEntry>;
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 7
Include/RmlUi/Core/DataVariable.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREDATAVARIABLE_H
-#define RMLUICOREDATAVARIABLE_H
+#ifndef RMLUI_CORE_DATAVARIABLE_H
+#define RMLUI_CORE_DATAVARIABLE_H
 
 #include "Header.h"
 #include "Types.h"
@@ -37,8 +37,6 @@
 #include <iterator>
 
 namespace Rml {
-namespace Core {
-
 
 enum class DataVariableType { Scalar, Array, Struct, Function, MemberFunction };
 
@@ -263,7 +261,5 @@ private:
 	MemberSetFunc<T> set;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/DataView.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREDATAVIEW_H
-#define RMLUICOREDATAVIEW_H
+#ifndef RMLUI_CORE_DATAVIEW_H
+#define RMLUI_CORE_DATAVIEW_H
 
 #include "Header.h"
 #include "Types.h"
@@ -36,7 +36,6 @@
 #include <unordered_map>
 
 namespace Rml {
-namespace Core {
 
 class Element;
 class DataModel;
@@ -129,7 +128,5 @@ private:
 	NameViewMap name_view_map;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 8 - 10
Include/RmlUi/Core/Debug.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREDEBUG_H
-#define RMLUICOREDEBUG_H
+#ifndef RMLUI_CORE_DEBUG_H
+#define RMLUI_CORE_DEBUG_H
 
 #include "Header.h"
 
@@ -47,7 +47,7 @@
 		#define RMLUI_BREAK
 	#endif
 #elif defined (RMLUI_PLATFORM_MACOSX)
-	#define RMLUI_BREAK {__builtin_trap();}
+	#define RMLUI_BREAK {__builtin_trap();} // namespace Rml
 #endif
 
 
@@ -62,13 +62,12 @@
 #define RMLUI_ASSERT_NONRECURSIVE
 #else
 namespace Rml {
-namespace Core {
 
 bool RMLUICORE_API Assert(const char* message, const char* file, int line);
 #define RMLUI_ASSERT(x) \
 if (!(x)) \
 { \
-	if (!Rml::Core::Assert("RMLUI_ASSERT("#x")", __FILE__, __LINE__ )) \
+	if (!(::Rml::Assert("RMLUI_ASSERT("#x")", __FILE__, __LINE__ ))) \
 	{ \
 		RMLUI_BREAK; \
 	} \
@@ -76,18 +75,18 @@ if (!(x)) \
 #define RMLUI_ASSERTMSG(x, m)	\
 if (!(x)) \
 { \
-	if (!Rml::Core::Assert(m, __FILE__, __LINE__ )) \
+	if (!(::Rml::Assert(m, __FILE__, __LINE__ ))) \
 	{ \
 		RMLUI_BREAK; \
 	} \
 }
 #define RMLUI_ERROR \
-if (!Rml::Core::Assert("RMLUI_ERROR", __FILE__, __LINE__)) \
+if (!(::Rml::Assert("RMLUI_ERROR", __FILE__, __LINE__))) \
 { \
 	RMLUI_BREAK; \
 }
 #define RMLUI_ERRORMSG(m) \
-if (!Rml::Core::Assert(m, __FILE__, __LINE__)) \
+if (!(::Rml::Assert(m, __FILE__, __LINE__))) \
 { \
 	RMLUI_BREAK; \
 }
@@ -108,8 +107,7 @@ struct RmlUiAssertNonrecursive {
 static bool rmlui_nonrecursive_entered = false; \
 RmlUiAssertNonrecursive rmlui_nonrecursive(rmlui_nonrecursive_entered)
 
-}
-}
+} // namespace Rml
 #endif
 
 

+ 3 - 6
Include/RmlUi/Core/Decorator.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREDECORATOR_H
-#define RMLUICOREDECORATOR_H
+#ifndef RMLUI_CORE_DECORATOR_H
+#define RMLUI_CORE_DECORATOR_H
 
 #include <vector>
 #include "Header.h"
@@ -35,7 +35,6 @@
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 class DecoratorInstancer;
 class Element;
@@ -95,7 +94,5 @@ private:
 	std::vector< Texture > additional_textures;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/DecoratorInstancer.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREDECORATORINSTANCER_H
-#define RMLUICOREDECORATORINSTANCER_H
+#ifndef RMLUI_CORE_DECORATORINSTANCER_H
+#define RMLUI_CORE_DECORATORINSTANCER_H
 
 #include "Header.h"
 #include "PropertyDictionary.h"
 #include "PropertySpecification.h"
 
 namespace Rml {
-namespace Core {
 
 struct Sprite;
 class StyleSheet;
@@ -96,7 +95,5 @@ private:
 	const StyleSheet& style_sheet;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Dictionary.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICOREDICTIONARY_H
-#define RMLUICOREDICTIONARY_H
+#ifndef RMLUI_CORE_DICTIONARY_H
+#define RMLUI_CORE_DICTIONARY_H
 
 #include "Header.h"
 #include "Variant.h"
 
 namespace Rml {
-namespace Core {
 
 inline Variant* GetIf(Dictionary& dictionary, const String& key)
 {
@@ -59,7 +58,5 @@ inline T Get(const Dictionary& dictionary, const String& key, const T& default_v
 	return result;
 }
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 5
Include/RmlUi/Core/Element.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREELEMENT_H
-#define RMLUICOREELEMENT_H
+#ifndef RMLUI_CORE_ELEMENT_H
+#define RMLUI_CORE_ELEMENT_H
 
 #include "ScriptInterface.h"
 #include "Header.h"
@@ -41,7 +41,6 @@
 #include "Tween.h"
 
 namespace Rml {
-namespace Core {
 
 class Context;
 class DataModel;
@@ -740,8 +739,7 @@ private:
 	friend class ElementScroll;
 };
 
-}
-}
+} // namespace Rml
 
 #include "Element.inl"
 

+ 1 - 3
Include/RmlUi/Core/Element.inl

@@ -27,7 +27,6 @@
  */
 
 namespace Rml {
-namespace Core {
 
 // Returns the values of one of this element's properties.
 template < typename T >
@@ -60,5 +59,4 @@ T Element::GetAttribute(const String& name, const T& default_value) const
 	return Get(attributes, name, default_value);
 }
 
-}
-}
+} // namespace Rml

+ 3 - 6
Include/RmlUi/Core/ElementDocument.h

@@ -26,13 +26,12 @@
  *
  */
 
-#ifndef RMLUICOREELEMENTDOCUMENT_H
-#define RMLUICOREELEMENTDOCUMENT_H
+#ifndef RMLUI_CORE_ELEMENTDOCUMENT_H
+#define RMLUI_CORE_ELEMENTDOCUMENT_H
 
 #include "Element.h"
 
 namespace Rml {
-namespace Core {
 
 class Context;
 class Stream;
@@ -181,7 +180,5 @@ private:
 
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/ElementInstancer.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREELEMENTINSTANCER_H
-#define RMLUICOREELEMENTINSTANCER_H
+#ifndef RMLUI_CORE_ELEMENTINSTANCER_H
+#define RMLUI_CORE_ELEMENTINSTANCER_H
 
 #include "Traits.h"
 #include "Types.h"
@@ -36,7 +36,6 @@
 #include "Profiling.h"
 
 namespace Rml {
-namespace Core {
 
 class Element;
 
@@ -127,7 +126,5 @@ public:
 	}
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 5 - 8
Include/RmlUi/Core/ElementScroll.h

@@ -26,16 +26,15 @@
  *
  */
 
-#ifndef RMLUICOREELEMENTSCROLL_H
-#define RMLUICOREELEMENTSCROLL_H
+#ifndef RMLUI_CORE_ELEMENTSCROLL_H
+#define RMLUI_CORE_ELEMENTSCROLL_H
 
 #include "Header.h"
 
 namespace Rml {
-namespace Core {
 
 class Element;
-class WidgetSliderScroll;
+class WidgetScroll;
 
 /**
 	Manages an element's scrollbars and scrolling state.
@@ -92,7 +91,7 @@ private:
 		~Scrollbar();
 
 		Element* element;
-		WidgetSliderScroll* widget;
+		WidgetScroll* widget;
 		bool enabled;
 		float size;
 	};
@@ -108,7 +107,5 @@ private:
 	Element* corner;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/ElementText.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREELEMENTTEXT_H
-#define RMLUICOREELEMENTTEXT_H
+#ifndef RMLUI_CORE_ELEMENTTEXT_H
+#define RMLUI_CORE_ELEMENTTEXT_H
 
 #include "Header.h"
 #include "Types.h"
 #include "Element.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	RmlUi's text-element interface.
@@ -86,7 +85,5 @@ public:
 	virtual void SuppressAutoLayout() = 0;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/ElementUtilities.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICOREELEMENTUTILITIES_H
-#define RMLUICOREELEMENTUTILITIES_H
+#ifndef RMLUI_CORE_ELEMENTUTILITIES_H
+#define RMLUI_CORE_ELEMENTUTILITIES_H
 
 #include "Header.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 class Box;
 class Context;
@@ -144,7 +143,5 @@ public:
 	static bool ApplyStructuralDataViews(Element* element, const String& inner_rml);
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 12 - 15
Include/RmlUi/Controls/DataFormatter.h → Include/RmlUi/Core/Elements/DataFormatter.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICONTROLSDATAFORMATTER_H
-#define RMLUICONTROLSDATAFORMATTER_H
+#ifndef RMLUI_CORE_ELEMENTS_DATAFORMATTER_H
+#define RMLUI_CORE_ELEMENTS_DATAFORMATTER_H
 
-#include "../Core/Types.h"
-#include "../Core/ScriptInterface.h"
-#include "Header.h"
+#include "../Types.h"
+#include "../ScriptInterface.h"
+#include "../Header.h"
 
 namespace Rml {
-namespace Controls {
 
 /**
 	Abstract base class for a data formatter. A data formatter takes raw data
@@ -44,34 +43,32 @@ namespace Controls {
 	@author Robert Curry
  */
 
-class RMLUICONTROLS_API DataFormatter
+class RMLUICORE_API DataFormatter
 {
 public:
-	DataFormatter(const Rml::Core::String& name = "");
+	DataFormatter(const String& name = "");
 	virtual ~DataFormatter();
 
 	/// Returns the name by which this data formatter is referenced by.
 	/// @return The name of this data formatter.
-	const Rml::Core::String& GetDataFormatterName();
+	const String& GetDataFormatterName();
 	/// Returns a data formatter with the given name.
 	/// @parameter [in] data_formatter_name The name of the data formatter to
 	/// be returned.
 	/// @return If the data formatter with the specified name has been
 	/// constructed, a pointer to it will be returned. Otherwise, nullptr.
-	static DataFormatter* GetDataFormatter(const Rml::Core::String& data_formatter_name);
+	static DataFormatter* GetDataFormatter(const String& data_formatter_name);
 
 	/// Formats the raw results of a data source request into RML.
 	/// @param[out] formatted_data The formatted RML.
 	/// @param[in] raw_data A list of the raw data fields.
-	virtual void FormatData(Rml::Core::String& formatted_data, const Rml::Core::StringList& raw_data) = 0;
+	virtual void FormatData(String& formatted_data, const StringList& raw_data) = 0;
 
 	virtual void* GetScriptObject() const;
 
 private:
-	Rml::Core::String name;
+	String name;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 20 - 23
Include/RmlUi/Controls/DataQuery.h → Include/RmlUi/Core/Elements/DataQuery.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICONTROLSDATAQUERY_H
-#define RMLUICONTROLSDATAQUERY_H
+#ifndef RMLUI_CORE_ELEMENTS_DATAQUERY_H
+#define RMLUI_CORE_ELEMENTS_DATAQUERY_H
 
-#include "Header.h"
-#include "../Core/TypeConverter.h"
-#include "../Core/Log.h"
+#include "../Header.h"
+#include "../TypeConverter.h"
+#include "../Log.h"
 
 namespace Rml {
-namespace Controls {
 
 class DataSource;
 
@@ -46,25 +45,25 @@ class DataSource;
 	mechanisms to iterate through the returned rows.
 */
 
-class RMLUICONTROLS_API DataQuery
+class RMLUICORE_API DataQuery
 {
 public:
 	DataQuery();
-	DataQuery(DataSource* data_source, const Rml::Core::String& table, const Rml::Core::String& fields, int offset = 0, int limit = -1, const Rml::Core::String& order = "");
+	DataQuery(DataSource* data_source, const String& table, const String& fields, int offset = 0, int limit = -1, const String& order = "");
 	virtual ~DataQuery();
 
-	void ExecuteQuery(DataSource* data_source, const Rml::Core::String& table, const Rml::Core::String& fields, int offset = 0, int limit = -1, const Rml::Core::String& order = "");
+	void ExecuteQuery(DataSource* data_source, const String& table, const String& fields, int offset = 0, int limit = -1, const String& order = "");
 	bool NextRow();
 
-	bool IsFieldSet(const Rml::Core::String& field) const;
+	bool IsFieldSet(const String& field) const;
 
 	template< typename T >
-	T Get(const Rml::Core::String& field_name, const T& default_value) const
+	T Get(const String& field_name, const T& default_value) const
 	{
 		FieldIndices::const_iterator itr = field_indices.find(field_name);
 		if (itr == field_indices.end())
 		{
-			Rml::Core::Log::Message(Rml::Core::Log::LT_ERROR, "Field %s not found in query", field_name.c_str());
+			Log::Message(Log::LT_ERROR, "Field %s not found in query", field_name.c_str());
 			return default_value;
 		}		
 		
@@ -76,12 +75,12 @@ public:
 	}
 
 	template< typename T >
-	bool GetInto(const Rml::Core::String& field_name, T& value) const
+	bool GetInto(const String& field_name, T& value) const
 	{
 		FieldIndices::const_iterator itr = field_indices.find(field_name);
 		if (itr == field_indices.end())
 		{
-			Rml::Core::Log::Message(Rml::Core::Log::LT_ERROR, "Field %s not found in query", field_name.c_str());
+			Log::Message(Log::LT_ERROR, "Field %s not found in query", field_name.c_str());
 			return false;
 		}		
 
@@ -103,7 +102,7 @@ public:
 	{
 		if (field_index < rows[current_row].size())
 		{
-			return Rml::Core::TypeConverter< Rml::Core::String, T >::Convert(rows[current_row][field_index], value);
+			return TypeConverter< String, T >::Convert(rows[current_row][field_index], value);
 		}
 
 		return false;
@@ -115,23 +114,21 @@ public:
 	}
 
 private:
-	Rml::Core::StringList fields;
+	StringList fields;
 
 	DataSource* data_source;
-	Rml::Core::String table;
+	String table;
 	int current_row;
 	int offset;
 	int limit;
 
-	typedef std::vector< Rml::Core::StringList > Rows;
+	typedef std::vector< StringList > Rows;
 	Rows rows;    
-	typedef Core::UnorderedMap< Rml::Core::String, size_t > FieldIndices;
+	typedef UnorderedMap< String, size_t > FieldIndices;
 	FieldIndices field_indices;
 	
 	void LoadRow();
 };
 
-}
-}
-
-#endif // RMLUICONTROLSDATAQUERY_H
+} // namespace Rml
+#endif // RMLUI_CORE_ELEMENTS_DATAQUERY_H

+ 22 - 25
Include/RmlUi/Controls/DataSource.h → Include/RmlUi/Core/Elements/DataSource.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICONTROLSDATASOURCE_H
-#define RMLUICONTROLSDATASOURCE_H
+#ifndef RMLUI_CORE_ELEMENTS_DATASOURCE_H
+#define RMLUI_CORE_ELEMENTS_DATASOURCE_H
 
-#include "Header.h"
-#include "../Core/Types.h"
+#include "../Header.h"
+#include "../Types.h"
 #include <list>
 
 namespace Rml {
-namespace Controls {
 
 class DataSourceListener;
 
@@ -43,71 +42,69 @@ class DataSourceListener;
 	@author Robert Curry
  */
 
-class RMLUICONTROLS_API DataSource
+class RMLUICORE_API DataSource
 {
 	public:
-		DataSource(const Rml::Core::String& name = "");
+		DataSource(const String& name = "");
 		virtual ~DataSource();
 
-		const Rml::Core::String& GetDataSourceName();
-		static DataSource* GetDataSource(const Rml::Core::String& data_source_name);
+		const String& GetDataSourceName();
+		static DataSource* GetDataSource(const String& data_source_name);
 
 		/// Fetches the contents of one row of a table within the data source.
 		/// @param[out] row The list of values in the table.
 		/// @param[in] table The name of the table to query.
 		/// @param[in] row_index The index of the desired row.
 		/// @param[in] columns The list of desired columns within the row.
-		virtual void GetRow(Rml::Core::StringList& row, const Rml::Core::String& table, int row_index, const Rml::Core::StringList& columns) = 0;
+		virtual void GetRow(StringList& row, const String& table, int row_index, const StringList& columns) = 0;
 		/// Fetches the number of rows within one of this data source's tables.
 		/// @param[in] table The name of the table to query.
 		/// @return The number of rows within the specified table.
-		virtual int GetNumRows(const Rml::Core::String& table) = 0;
+		virtual int GetNumRows(const String& table) = 0;
 
 		void AttachListener(DataSourceListener* listener);
 		void DetachListener(DataSourceListener* listener);
 
 		virtual void* GetScriptObject() const;
 
-		static const Rml::Core::String CHILD_SOURCE;
-		static const Rml::Core::String DEPTH;
-		static const Rml::Core::String NUM_CHILDREN;
+		static const String CHILD_SOURCE;
+		static const String DEPTH;
+		static const String NUM_CHILDREN;
 
 	protected:
 		/// Tells all attached listeners that one or more rows have been added to the data source.
 		/// @param[in] table The name of the table to have rows added to it.
 		/// @param[in] first_row_added The index of the first row added.
 		/// @param[in] num_rows_added The number of rows added (including the first row).
-		void NotifyRowAdd(const Rml::Core::String& table, int first_row_added, int num_rows_added);
+		void NotifyRowAdd(const String& table, int first_row_added, int num_rows_added);
 
 		/// Tells all attached listeners that one or more rows have been removed from the data source.
 		/// @param[in] table The name of the table to have rows removed from it.
 		/// @param[in] first_row_removed The index of the first row removed.
 		/// @param[in] num_rows_removed The number of rows removed (including the first row).
-		void NotifyRowRemove(const Rml::Core::String& table, int first_row_removed, int num_rows_removed);
+		void NotifyRowRemove(const String& table, int first_row_removed, int num_rows_removed);
 
 		/// Tells all attached listeners that one or more rows have been changed in the data source.
 		/// @param[in] table The name of the table to have rows changed in it.
 		/// @param[in] first_row_changed The index of the first row changed.
 		/// @param[in] num_rows_changed The number of rows changed (including the first row).
-		void NotifyRowChange(const Rml::Core::String& table, int first_row_changed, int num_rows_changed);
+		void NotifyRowChange(const String& table, int first_row_changed, int num_rows_changed);
 
 		/// Tells all attached listeners that the row structure has completely changed in the data source.
 		/// @param[in] table The name of the table to have rows changed in it.
-		void NotifyRowChange(const Rml::Core::String& table);
+		void NotifyRowChange(const String& table);
 
 		/// Helper function for building a result set.
-		typedef Core::UnorderedMap< Rml::Core::String, Rml::Core::String > RowMap;
-		void BuildRowEntries(Rml::Core::StringList& row, const RowMap& row_map, const Rml::Core::StringList& columns);
+		typedef UnorderedMap< String, String > RowMap;
+		void BuildRowEntries(StringList& row, const RowMap& row_map, const StringList& columns);
 
 	private:
-		Core::String name;
+		String name;
 
 		using ListenerList = std::list< DataSourceListener* >;
 		ListenerList listeners;
 };
 
-}
-}
-
-#endif // RMLUICONTROLSDATASOURCE_H
+} // namespace Rml
+#endif // RMLUI_CORE_ELEMENTS_DATASOURCE_H
 

+ 14 - 18
Include/RmlUi/Controls/DataSourceListener.h → Include/RmlUi/Core/Elements/DataSourceListener.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICONTROLSDATASOURCELISTENER_H
-#define RMLUICONTROLSDATASOURCELISTENER_H
+#ifndef RMLUI_CORE_ELEMENTS_DATASOURCELISTENER_H
+#define RMLUI_CORE_ELEMENTS_DATASOURCELISTENER_H
 
-#include "Header.h"
-#include "../Core/Types.h"
+#include "../Header.h"
+#include "../Types.h"
 
 namespace Rml {
-namespace Controls {
 
 class DataSource;
 
@@ -44,7 +43,7 @@ class DataSource;
 	@author Robert Curry
  */
 
-class RMLUICONTROLS_API DataSourceListener
+class RMLUICORE_API DataSourceListener
 {
 public:
 	DataSourceListener();
@@ -58,35 +57,32 @@ public:
 	/// @param[in] table The name of the changing table within the data source.
 	/// @param[in] first_row_added Index of the first new row.
 	/// @param[in] num_rows_added Number of new sequential rows being added.
-	virtual void OnRowAdd(DataSource* data_source, const Rml::Core::String& table, int first_row_added, int num_rows_added);
+	virtual void OnRowAdd(DataSource* data_source, const String& table, int first_row_added, int num_rows_added);
 	/// Notification of the removal of one or more rows from an observed data source's table.
 	/// @param[in] data_source Data source being changed.
 	/// @param[in] table The name of the changing table within the data source.
 	/// @param[in] first_row_removed Index of the first removed row.
 	/// @param[in] num_rows_removed Number of new sequential rows being removed.
-	virtual void OnRowRemove(DataSource* data_source, const Rml::Core::String& table, int first_row_removed, int num_rows_removed);
+	virtual void OnRowRemove(DataSource* data_source, const String& table, int first_row_removed, int num_rows_removed);
 	/// Notification of the changing of one or more rows from an observed data source's table.
 	/// @param[in] data_source Data source being changed.
 	/// @param[in] table The name of the changing table within the data source.
 	/// @param[in] first_row_removed Index of the first changed row.
 	/// @param[in] num_rows_removed Number of new sequential rows being changed.
-	virtual void OnRowChange(DataSource* data_source, const Rml::Core::String& table, int first_row_changed, int num_rows_changed);
+	virtual void OnRowChange(DataSource* data_source, const String& table, int first_row_changed, int num_rows_changed);
 	/// Notification of the change of all of the data of an observed data source's table.
 	/// @param[in] data_source Data source being changed.
 	/// @param[in] table The name of the changing table within the data source.
-	virtual void OnRowChange(DataSource* data_source, const Rml::Core::String& table);
+	virtual void OnRowChange(DataSource* data_source, const String& table);
 
 protected:
-	/// Sets up data source and table from a given Rml::Core::String.
+	/// Sets up data source and table from a given String.
 	/// @param[out] data_source A pointer to a data_source that gets loaded with the specified data source.
-	/// @param[out] table_name A reference to an Rml::Core::String that gets loaded with the specified data table.
+	/// @param[out] table_name A reference to an String that gets loaded with the specified data table.
 	/// @param[in] data_source_name The data source and table in SOURCE.TABLE format.
 	/// @return True if the data source name was in the correct format, and the data source was found.
-	bool ParseDataSource(DataSource*& data_source, Rml::Core::String& table_name, const Rml::Core::String& data_source_name);
+	bool ParseDataSource(DataSource*& data_source, String& table_name, const String& data_source_name);
 };
 
-}
-}
-
-#endif // RMLUICONTROLSDATASOURCELISTENER_H
-
+} // namespace Rml
+#endif // RMLUI_CORE_ELEMENTS_DATASOURCELISTENER_H

+ 18 - 21
Include/RmlUi/Controls/ElementDataGrid.h → Include/RmlUi/Core/Elements/ElementDataGrid.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTDATAGRID_H
-#define RMLUICONTROLSELEMENTDATAGRID_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTDATAGRID_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTDATAGRID_H
 
-#include "Header.h"
+#include "../Header.h"
+#include "../Element.h"
 #include "DataSourceListener.h"
-#include "../Core/Element.h"
 
 namespace Rml {
-namespace Controls {
 
 class DataFormatter;
 class ElementDataGridRow;
@@ -45,17 +44,17 @@ class ElementDataGridRow;
 	@author Robert Curry
  */
 
-class RMLUICONTROLS_API ElementDataGrid : public Core::Element, public DataSourceListener
+class RMLUICORE_API ElementDataGrid : public Element, public DataSourceListener
 {
 public:
-	RMLUI_RTTI_DefineWithParent(ElementDataGrid, Core::Element)
+	RMLUI_RTTI_DefineWithParent(ElementDataGrid, Element)
 
-	ElementDataGrid(const Rml::Core::String& tag);
+	ElementDataGrid(const String& tag);
 	virtual ~ElementDataGrid();
 
 	/// Sets a new data source for the contents of the data grid.
 	/// @param[in] data_source_name The name of the new data source.
-	void SetDataSource(const Rml::Core::String& data_source_name);
+	void SetDataSource(const String& data_source_name);
 
 	/**
 		A column inside a table.
@@ -66,14 +65,14 @@ public:
 	{
 		/// The list of fields that this column reads from the data source for
 		/// each row.
-		Rml::Core::StringList fields;
+		StringList fields;
 
 		/// The data formatter this is used to process the field information
 		/// into what is finally displayed in the data grid.
 		DataFormatter* formatter;
 		/// The header that is displayed at the top of the column, in the
 		/// header row.
-		Core::Element* header;
+		Element* header;
 
 		/// The width of this column.
 		float current_width;
@@ -90,19 +89,19 @@ public:
 	/// @param[in] initial_width The initial width, in pixels, of the column.
 	/// @param[in] header_rml The RML to use as the column header.
 	/// @return True if the column was added successfully, false if not.
-	bool AddColumn(const Rml::Core::String& fields, const Rml::Core::String& formatter, float initial_width, const Rml::Core::String& header_rml);
+	bool AddColumn(const String& fields, const String& formatter, float initial_width, const String& header_rml);
 	/// Adds a column to the table.
 	/// @param[in] fields A comma-separated list of fields that this column reads from the data source.
 	/// @param[in] formatter The name of the data formatter to be used to format the raw column data into RML.
 	/// @param[in] initial_width The initial width, in pixels, of the column.
 	/// @param[in] header_element The element hierarchy to use as the column header.
-	void AddColumn(const Rml::Core::String& fields, const Rml::Core::String& formatter, float initial_width, Core::ElementPtr header_element);
+	void AddColumn(const String& fields, const String& formatter, float initial_width, ElementPtr header_element);
 	/// Returns the number of columns in this table
 	int GetNumColumns();
 	/// Returns the column at the specified index.
 	const Column* GetColumn(int column_index);
 	/// Returns a CSV string containing all the fields that each column requires, in order.
-	const Rml::Core::String& GetAllColumnFields();
+	const String& GetAllColumnFields();
 
 	/// Adds a new row to the table. This is only called from child rows.
 	/// @param[in] parent The parent row that the row is being added under.
@@ -127,14 +126,14 @@ protected:
 
 	/// Gets the markup and content of the element.
 	/// @param content[out] The content of the element.
-	void GetInnerRML(Rml::Core::String& content) const override;
+	void GetInnerRML(String& content) const override;
 
 private:
 	typedef std::vector< Column > ColumnList;
 	typedef std::vector< ElementDataGridRow* > RowList;
 
 	ColumnList columns;
-	Rml::Core::String column_fields;
+	String column_fields;
 
 	// The row that contains the header elements of the table.
 	ElementDataGridRow* header;
@@ -144,13 +143,11 @@ private:
 	ElementDataGridRow* root;
 	// If this is non-empty, then in the previous update the data source was set
 	// and we must set it this update.
-	Rml::Core::String new_data_source;
+	String new_data_source;
 
 	// The block element that contains all our rows. Only used for applying styles.
-	Core::Element* body;
+	Element* body;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 11 - 14
Include/RmlUi/Controls/ElementDataGridCell.h → Include/RmlUi/Core/Elements/ElementDataGridCell.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTDATAGRIDCELL_H
-#define RMLUICONTROLSELEMENTDATAGRIDCELL_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTDATAGRIDCELL_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTDATAGRIDCELL_H
 
-#include "../Core/Element.h"
-#include "../Core/EventListener.h"
-#include "Header.h"
+#include "../Element.h"
+#include "../EventListener.h"
+#include "../Header.h"
 
 namespace Rml {
-namespace Controls {
 
 /**
 	The class for cells inside a data table row.
@@ -42,23 +41,21 @@ namespace Controls {
 	@author Robert Curry
  */
 
-class RMLUICONTROLS_API ElementDataGridCell : public Core::Element
+class RMLUICORE_API ElementDataGridCell : public Element
 {
 public:
-	RMLUI_RTTI_DefineWithParent(ElementDataGridCell, Core::Element)
+	RMLUI_RTTI_DefineWithParent(ElementDataGridCell, Element)
 
-	ElementDataGridCell(const Rml::Core::String& tag);
+	ElementDataGridCell(const String& tag);
 	virtual ~ElementDataGridCell();
 
-	void Initialise(int column, Core::Element* header);
+	void Initialise(int column, Element* header);
 	int GetColumn();
 	
 private:
 	int column;
-	Core::Element* header;
+	Element* header;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 8 - 11
Include/RmlUi/Controls/ElementDataGridExpandButton.h → Include/RmlUi/Core/Elements/ElementDataGridExpandButton.h

@@ -26,30 +26,27 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTDATAGRIDEXPANDBUTTON_H
-#define RMLUICONTROLSELEMENTDATAGRIDEXPANDBUTTON_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTDATAGRIDEXPANDBUTTON_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTDATAGRIDEXPANDBUTTON_H
 
-#include "../Core/Element.h"
-#include "Header.h"
+#include "../Element.h"
+#include "../Header.h"
 
 namespace Rml {
-namespace Controls {
 
 /**
 	@author Robert Curry
  */
 
-class RMLUICONTROLS_API ElementDataGridExpandButton : public Core::Element
+class RMLUICORE_API ElementDataGridExpandButton : public Element
 {
 public:
-	ElementDataGridExpandButton(const Rml::Core::String& tag);
+	ElementDataGridExpandButton(const String& tag);
 	virtual ~ElementDataGridExpandButton();
 
 protected:
-	void ProcessDefaultAction(Core::Event& event) override;
+	void ProcessDefaultAction(Event& event) override;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 15 - 18
Include/RmlUi/Controls/ElementDataGridRow.h → Include/RmlUi/Core/Elements/ElementDataGridRow.h

@@ -26,17 +26,16 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTDATAGRIDROW_H
-#define RMLUICONTROLSELEMENTDATAGRIDROW_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTDATAGRIDROW_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTDATAGRIDROW_H
 
-#include "Header.h"
+#include "../Header.h"
+#include "../Element.h"
 #include "DataSourceListener.h"
 #include "DataQuery.h"
-#include "../Core/Element.h"
 #include <queue>
 
 namespace Rml {
-namespace Controls {
 
 class ElementDataGrid;
 
@@ -46,21 +45,21 @@ class ElementDataGrid;
 	@author Robert Curry
  */
 
-class RMLUICONTROLS_API ElementDataGridRow : public Core::Element, public DataSourceListener
+class RMLUICORE_API ElementDataGridRow : public Element, public DataSourceListener
 {
 friend class ElementDataGrid;
 
 public:
-	RMLUI_RTTI_DefineWithParent(ElementDataGridRow, Core::Element)
+	RMLUI_RTTI_DefineWithParent(ElementDataGridRow, Element)
 
-	ElementDataGridRow(const Rml::Core::String& tag);
+	ElementDataGridRow(const String& tag);
 	virtual ~ElementDataGridRow();
 
 	void Initialise(ElementDataGrid* parent_grid, ElementDataGridRow* parent_row = nullptr, int child_index = -1, ElementDataGridRow* header_row = nullptr, int depth = -1);
 	void SetChildIndex(int child_index);
 	int GetDepth();
 
-	void SetDataSource(const Rml::Core::String& data_source_name);
+	void SetDataSource(const String& data_source_name);
 
 	/// Checks dirty children and cells, and loads them if necessary.
 	/// @return True if any children were updated.
@@ -92,10 +91,10 @@ public:
 
 protected:
 	void OnDataSourceDestroy(DataSource* data_source) override;
-	void OnRowAdd(DataSource* data_source, const Rml::Core::String& table, int first_row_added, int num_rows_added) override;
-	void OnRowRemove(DataSource* data_source, const Rml::Core::String& table, int first_row_removed, int num_rows_removed) override;
-	void OnRowChange(DataSource* data_source, const Rml::Core::String& table, int first_row_changed, int num_rows_changed) override;
-	void OnRowChange(DataSource* data_source, const Rml::Core::String& table) override;
+	void OnRowAdd(DataSource* data_source, const String& table, int first_row_added, int num_rows_added) override;
+	void OnRowRemove(DataSource* data_source, const String& table, int first_row_removed, int num_rows_removed) override;
+	void OnRowChange(DataSource* data_source, const String& table, int first_row_changed, int num_rows_changed) override;
+	void OnRowChange(DataSource* data_source, const String& table) override;
 
 private:
 	typedef std::queue< ElementDataGridRow* > RowQueue;
@@ -129,7 +128,7 @@ private:
 	int GetNumDescendants();
 
 	// Adds or refreshes the cell contents, and undirties the row's cells.
-	void Load(const Rml::Controls::DataQuery& row_information);
+	void Load(const DataQuery& row_information);
 	// Finds all children that have cell information missing (either though being
 	// refreshed or not being loaded yet) and reloads them.
 	void LoadChildren(float time_slice);
@@ -164,10 +163,8 @@ private:
 
 	// The data source and table that the children are fetched from.
 	DataSource* data_source;
-	Rml::Core::String data_table;
+	String data_table;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 10 - 13
Include/RmlUi/Controls/ElementForm.h → Include/RmlUi/Core/Elements/ElementForm.h

@@ -26,38 +26,35 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTFORM_H
-#define RMLUICONTROLSELEMENTFORM_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTFORM_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTFORM_H
 
-#include "../Core/Element.h"
-#include "Header.h"
+#include "../Element.h"
+#include "../Header.h"
 
 namespace Rml {
-namespace Controls {
 
 /**
-	A specialisation of the generic Core::Element representing a form element.
+	A specialisation of the generic Element representing a form element.
 
 	@author Peter Curry
  */
 
-class RMLUICONTROLS_API ElementForm : public Core::Element
+class RMLUICORE_API ElementForm : public Element
 {
 public:
-	RMLUI_RTTI_DefineWithParent(ElementForm, Core::Element)
+	RMLUI_RTTI_DefineWithParent(ElementForm, Element)
 
 	/// Constructs a new ElementForm. This should not be called directly; use the Factory instead.
 	/// @param[in] tag The tag the element was declared as in RML.
-	ElementForm(const Rml::Core::String& tag);
+	ElementForm(const String& tag);
 	virtual ~ElementForm();
 
 	/// Submits the form.
 	/// @param[in] name The name of the item doing the submit
 	/// @param[in] submit_value The value to send through as the 'submit' parameter.
-	void Submit(const Rml::Core::String& name = "", const Rml::Core::String& submit_value = "");
+	void Submit(const String& name = "", const String& submit_value = "");
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 14 - 17
Include/RmlUi/Controls/ElementFormControl.h → Include/RmlUi/Core/Elements/ElementFormControl.h

@@ -26,46 +26,45 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTFORMCONTROL_H
-#define RMLUICONTROLSELEMENTFORMCONTROL_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROL_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROL_H
 
-#include "../Core/Element.h"
-#include "Header.h"
+#include "../Element.h"
+#include "../Header.h"
 
 namespace Rml {
-namespace Controls {
 
 /**
-	A generic specialisation of the generic Core::Element for all input controls.
+	A generic specialisation of the generic Element for all input controls.
 
 	@author Peter Curry
  */
 
-class RMLUICONTROLS_API ElementFormControl : public Core::Element
+class RMLUICORE_API ElementFormControl : public Element
 {
 public:
-	RMLUI_RTTI_DefineWithParent(ElementFormControl, Core::Element)
+	RMLUI_RTTI_DefineWithParent(ElementFormControl, Element)
 
 	/// Constructs a new ElementFormControl. This should not be called directly; use the Factory
 	/// instead.
 	/// @param[in] tag The tag the element was declared as in RML.
-	ElementFormControl(const Rml::Core::String& tag);
+	ElementFormControl(const String& tag);
 	virtual ~ElementFormControl();
 
 	/// Returns the name of the form control. This is not guaranteed to be unique, and in the case of some form
 	/// controls (such as radio buttons) most likely will not be.
 	/// @return The name of the form control.
-	Rml::Core::String GetName() const;
+	String GetName() const;
 	/// Sets the name of the form control.
 	/// @param[in] name The new name of the form control.
-	void SetName(const Rml::Core::String& name);
+	void SetName(const String& name);
 
 	/// Returns a string representation of the current value of the form control.
 	/// @return The value of the form control.
-	virtual Rml::Core::String GetValue() const = 0;
+	virtual String GetValue() const = 0;
 	/// Sets the current value of the form control.
 	/// @param[in] value The new value of the form control.
-	virtual void SetValue(const Rml::Core::String& value) = 0;
+	virtual void SetValue(const String& value) = 0;
 	/// Returns if this value should be submitted with the form.
 	/// @return True if the value should be be submitted with the form, false otherwise.
 	virtual bool IsSubmitted();
@@ -80,10 +79,8 @@ public:
 protected:
 	/// Checks for changes to the 'disabled' attribute.
 	/// @param[in] changed_attributes List of changed attributes on the element.
-	void OnAttributeChange(const Core::ElementAttributes& changed_attributes) override;
+	void OnAttributeChange(const ElementAttributes& changed_attributes) override;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 14 - 16
Include/RmlUi/Controls/ElementFormControlDataSelect.h → Include/RmlUi/Core/Elements/ElementFormControlDataSelect.h

@@ -26,15 +26,15 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTFORMCONTROLDATASELECT_H
-#define RMLUICONTROLSELEMENTFORMCONTROLDATASELECT_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROLDATASELECT_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROLDATASELECT_H
 
-#include "Header.h"
+#include "../Header.h"
 #include "ElementFormControlSelect.h"
 #include "DataSourceListener.h"
 
 namespace Rml {
-namespace Controls {
+
 	
 class DataSource;
 
@@ -44,18 +44,18 @@ class DataSource;
 	@author Peter Curry
  */
 
-class RMLUICONTROLS_API ElementFormControlDataSelect : public ElementFormControlSelect, public DataSourceListener
+class RMLUICORE_API ElementFormControlDataSelect : public ElementFormControlSelect, public DataSourceListener
 {
 public:
 	/// Constructs a new ElementFormControlDataSelect. This should not be called directly; use the
 	/// Factory instead.
 	/// @param[in] tag The tag the element was declared as in RML.
-	ElementFormControlDataSelect(const Rml::Core::String& tag);
+	ElementFormControlDataSelect(const String& tag);
 	virtual ~ElementFormControlDataSelect();
 
 	/// Sets the data source the control's options are driven from.
 	/// @param[in] data_source The name of the new data source.
-	void SetDataSource(const Rml::Core::String& data_source);
+	void SetDataSource(const String& data_source);
 
 protected:
 	/// If a new data source has been set on the control, this will attach to it and build the
@@ -64,30 +64,28 @@ protected:
 
 	/// Checks for changes to the data source or formatting attributes.
 	/// @param[in] changed_attributes List of changed attributes on the element.
-	void OnAttributeChange(const Core::ElementAttributes& changed_attributes) override;
+	void OnAttributeChange(const ElementAttributes& changed_attributes) override;
 
 	/// Detaches from the data source and rebuilds the options.
 	void OnDataSourceDestroy(DataSource* data_source) override;
 	/// Rebuilds the available options from the data source.
-	void OnRowAdd(DataSource* data_source, const Rml::Core::String& table, int first_row_added, int num_rows_added) override;
+	void OnRowAdd(DataSource* data_source, const String& table, int first_row_added, int num_rows_added) override;
 	/// Rebuilds the available options from the data source.
-	void OnRowRemove(DataSource* data_source, const Rml::Core::String& table, int first_row_removed, int num_rows_removed) override;
+	void OnRowRemove(DataSource* data_source, const String& table, int first_row_removed, int num_rows_removed) override;
 	/// Rebuilds the available options from the data source.
-	void OnRowChange(DataSource* data_source, const Rml::Core::String& table, int first_row_changed, int num_rows_changed) override;
+	void OnRowChange(DataSource* data_source, const String& table, int first_row_changed, int num_rows_changed) override;
 	/// Rebuilds the available options from the data source.
-	void OnRowChange(DataSource* data_source, const Rml::Core::String& table) override;
+	void OnRowChange(DataSource* data_source, const String& table) override;
 
 private:
 	// Builds the option list from the data source.
 	void BuildOptions();
 
 	DataSource* data_source;
-	Rml::Core::String data_table;
+	String data_table;
 
 	bool initialised;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 15 - 18
Include/RmlUi/Controls/ElementFormControlInput.h → Include/RmlUi/Core/Elements/ElementFormControlInput.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTFORMCONTROLINPUT_H
-#define RMLUICONTROLSELEMENTFORMCONTROLINPUT_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROLINPUT_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROLINPUT_H
 
-#include "Header.h"
+#include "../Header.h"
 #include "ElementFormControl.h"
 
 namespace Rml {
-namespace Controls {
 
 class InputType;
 
@@ -43,7 +42,7 @@ class InputType;
 	@author Peter Curry
  */
 
-class RMLUICONTROLS_API ElementFormControlInput : public ElementFormControl
+class RMLUICORE_API ElementFormControlInput : public ElementFormControl
 {
 public:
 	RMLUI_RTTI_DefineWithParent(ElementFormControlInput, ElementFormControl)
@@ -51,15 +50,15 @@ public:
 	/// Constructs a new ElementFormControlInput. This should not be called directly; use the
 	/// Factory instead.
 	/// @param[in] tag The tag the element was declared as in RML.
-	ElementFormControlInput(const Rml::Core::String& tag);
+	ElementFormControlInput(const String& tag);
 	virtual ~ElementFormControlInput();
 
 	/// Returns a string representation of the current value of the form control.
 	/// @return The value of the form control.
-	Rml::Core::String GetValue() const override;
+	String GetValue() const override;
 	/// Sets the current value of the form control.
 	/// @param value[in] The new value of the form control.
-	void SetValue(const Rml::Core::String& value) override;
+	void SetValue(const String& value) override;
 	/// Returns if this value's type should be submitted with the form.
 	/// @return True if the form control is to be submitted, false otherwise.
 	bool IsSubmitted() override;
@@ -74,32 +73,30 @@ protected:
 
 	/// Checks for necessary functional changes in the control as a result of changed attributes.
 	/// @param[in] changed_attributes The list of changed attributes.
-	void OnAttributeChange(const Core::ElementAttributes& changed_attributes) override;
+	void OnAttributeChange(const ElementAttributes& changed_attributes) override;
 	/// Called when properties on the control are changed.
 	/// @param[in] changed_properties The properties changed on the element.
-	void OnPropertyChange(const Core::PropertyIdSet& changed_properties) override;
+	void OnPropertyChange(const PropertyIdSet& changed_properties) override;
 
 	/// If we are the added element, this will pass the call onto our type handler.
 	/// @param[in] child The new member of the hierarchy.
-	void OnChildAdd(Rml::Core::Element* child) override;
+	void OnChildAdd(Element* child) override;
 	/// If we are the removed element, this will pass the call onto our type handler.
 	/// @param[in] child The member of the hierarchy that was just removed.
-	void OnChildRemove(Rml::Core::Element* child) override;
+	void OnChildRemove(Element* child) override;
 
 	/// Checks for necessary functional changes in the control as a result of the event.
 	/// @param[in] event The event to process.
-	void ProcessDefaultAction(Core::Event& event) override;
+	void ProcessDefaultAction(Event& event) override;
 
 	/// Sizes the dimensions to the element's inherent size.
 	/// @return True.
-	bool GetIntrinsicDimensions(Rml::Core::Vector2f& dimensions) override;
+	bool GetIntrinsicDimensions(Vector2f& dimensions) override;
 
 private:
 	InputType* type;
-	Rml::Core::String type_name;
+	String type_name;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 10 - 13
Include/RmlUi/Controls/ElementFormControlSelect.h → Include/RmlUi/Core/Elements/ElementFormControlSelect.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTFORMCONTROLSELECT_H
-#define RMLUICONTROLSELEMENTFORMCONTROLSELECT_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROLSELECT_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROLSELECT_H
 
-#include "Header.h"
+#include "../Header.h"
 #include "ElementFormControl.h"
 #include "SelectOption.h"
 
 namespace Rml {
-namespace Controls {
 
 class WidgetDropDown;
 
@@ -44,21 +43,21 @@ class WidgetDropDown;
 	@author Peter Curry
  */
 
-class RMLUICONTROLS_API ElementFormControlSelect : public ElementFormControl
+class RMLUICORE_API ElementFormControlSelect : public ElementFormControl
 {
 public:
 	/// Constructs a new ElementFormControlSelect. This should not be called directly; use the
 	/// Factory instead.
 	/// @param[in] tag The tag the element was declared as in RML.
-	ElementFormControlSelect(const Rml::Core::String& tag);
+	ElementFormControlSelect(const String& tag);
 	virtual ~ElementFormControlSelect();
 
 	/// Returns a string representation of the current value of the form control.
 	/// @return The value of the form control.
-	Rml::Core::String GetValue() const override;
+	String GetValue() const override;
 	/// Sets the current value of the form control.
 	/// @param[in] value The new value of the form control.
-	void SetValue(const Rml::Core::String& value) override;
+	void SetValue(const String& value) override;
 
 	/// Sets the index of the selection. If the new index lies outside of the bounds, it will be clamped.
 	/// @param[in] selection The new selection index.
@@ -81,7 +80,7 @@ public:
 	/// @param[in] before The index of the element to insert the new option before. If out of bounds of the control's option list (the default) the new option will be added at the end of the list.
 	/// @param[in] selectable If true this option can be selected. If false, this option is not selectable.
 	/// @return The index of the new option.
-	int Add(const Rml::Core::String& rml, const Rml::Core::String& value, int before = -1, bool selectable = true);
+	int Add(const String& rml, const String& value, int before = -1, bool selectable = true);
 	/// Removes an option from the select control.
 	/// @param[in] index The index of the option to remove. If this is outside of the bounds of the control's option list, no option will be removed.
 	void Remove(int index);
@@ -101,12 +100,10 @@ protected:
 	/// Returns true to mark this element as replaced.
 	/// @param[out] intrinsic_dimensions Set to the arbitrary dimensions of 128 x 16 just to give this element a size. Resize with the 'width' and 'height' properties.
 	/// @return True.
-	bool GetIntrinsicDimensions(Rml::Core::Vector2f& intrinsic_dimensions) override;
+	bool GetIntrinsicDimensions(Vector2f& intrinsic_dimensions) override;
 
 	WidgetDropDown* widget;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 12 - 15
Include/RmlUi/Controls/ElementFormControlTextArea.h → Include/RmlUi/Core/Elements/ElementFormControlTextArea.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTFORMCONTROLTEXTAREA_H
-#define RMLUICONTROLSELEMENTFORMCONTROLTEXTAREA_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROLTEXTAREA_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTFORMCONTROLTEXTAREA_H
 
-#include "Header.h"
+#include "../Header.h"
 #include "ElementFormControl.h"
 
 namespace Rml {
-namespace Controls {
 
 class WidgetTextInput;
 
@@ -43,7 +42,7 @@ class WidgetTextInput;
 	@author Peter Curry
  */
 
-class RMLUICONTROLS_API ElementFormControlTextArea : public ElementFormControl
+class RMLUICORE_API ElementFormControlTextArea : public ElementFormControl
 {
 public:
 	RMLUI_RTTI_DefineWithParent(ElementFormControlTextArea, ElementFormControl)
@@ -51,16 +50,16 @@ public:
 	/// Constructs a new ElementFormControlTextArea. This should not be called directly; use the
 	/// Factory instead.
 	/// @param[in] tag The tag the element was declared as in RML.
-	ElementFormControlTextArea(const Rml::Core::String& tag);
+	ElementFormControlTextArea(const String& tag);
 	virtual ~ElementFormControlTextArea();
 
 	/// Returns a string representation of the current value of the form control. This is the value of the control
 	/// regardless of whether it has been selected / checked (as appropriate for the control).
 	/// @return The value of the form control.
-	Rml::Core::String GetValue() const override;
+	String GetValue() const override;
 	/// Sets the current value of the form control.
 	/// @param[in] value The new value of the form control.
-	void SetValue(const Rml::Core::String& value) override;
+	void SetValue(const String& value) override;
 
 	/// Sets the number of characters visible across the text area. Note that this will only be precise when using
 	/// a fixed-width font.
@@ -94,7 +93,7 @@ public:
 
 	/// Returns the control's inherent size, based on the length of the input field and the current font size.
 	/// @return True.
-	bool GetIntrinsicDimensions(Rml::Core::Vector2f& dimensions) override;
+	bool GetIntrinsicDimensions(Vector2f& dimensions) override;
 
 protected:
 	/// Updates the control's widget.
@@ -107,20 +106,18 @@ protected:
 	void OnLayout() override;
 
 	/// Called when attributes on the element are changed.
-	void OnAttributeChange(const Core::ElementAttributes& changed_attributes) override;
+	void OnAttributeChange(const ElementAttributes& changed_attributes) override;
 	/// Called when properties on the control are changed.
 	/// @param[in] changed_properties The properties changed on the element.
-	void OnPropertyChange(const Core::PropertyIdSet& changed_properties) override;
+	void OnPropertyChange(const PropertyIdSet& changed_properties) override;
 
 	/// Returns the text content of the element.
 	/// @param[out] content The content of the element.
-	void GetInnerRML(Rml::Core::String& content) const override;
+	void GetInnerRML(String& content) const override;
 
 private:
 	WidgetTextInput* widget;		
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 18 - 21
Include/RmlUi/Controls/ElementProgressBar.h → Include/RmlUi/Core/Elements/ElementProgressBar.h

@@ -26,17 +26,16 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTPROGRESSBAR_H
-#define RMLUICONTROLSELEMENTPROGRESSBAR_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTPROGRESSBAR_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTPROGRESSBAR_H
 
-#include "Header.h"
-#include "../Core/Element.h"
-#include "../Core/Geometry.h"
-#include "../Core/Texture.h"
-#include "../Core/Spritesheet.h"
+#include "../Header.h"
+#include "../Element.h"
+#include "../Geometry.h"
+#include "../Texture.h"
+#include "../Spritesheet.h"
 
 namespace Rml {
-namespace Controls {
 
 /**
 	The 'progressbar' element.
@@ -58,14 +57,14 @@ namespace Controls {
 
  */
 
-class RMLUICONTROLS_API ElementProgressBar : public Core::Element
+class RMLUICORE_API ElementProgressBar : public Element
 {
 public:
-	RMLUI_RTTI_DefineWithParent(ElementProgressBar, Core::Element)
+	RMLUI_RTTI_DefineWithParent(ElementProgressBar, Element)
 
 	/// Constructs a new ElementProgressBar. This should not be called directly; use the Factory instead.
 	/// @param[in] tag The tag the element was declared as in RML.
-	ElementProgressBar(const Core::String& tag);
+	ElementProgressBar(const String& tag);
 	virtual ~ElementProgressBar();
 
 	/// Return the value of the progress bar [0, 1]
@@ -79,9 +78,9 @@ protected:
 
 	void OnResize() override;
 
-	void OnAttributeChange(const Core::ElementAttributes& changed_attributes) override;
+	void OnAttributeChange(const ElementAttributes& changed_attributes) override;
 
-	void OnPropertyChange(const Core::PropertyIdSet& changed_properties) override;
+	void OnPropertyChange(const PropertyIdSet& changed_properties) override;
 
 private:
 	enum class Direction { Top, Right, Bottom, Left, Clockwise, CounterClockwise, Count };
@@ -98,25 +97,23 @@ private:
 
 	float value;
 
-	Core::Element* fill;
+	Element* fill;
 
 	// The size of the fill geometry as if fully filled, and the offset relative to the 'progressbar' element.
-	Core::Vector2f fill_size, fill_offset;
+	Vector2f fill_size, fill_offset;
 
 	// The texture this element is rendering from if the 'fill-image' property is set.
-	Core::Texture texture;
+	Texture texture;
 	bool texture_dirty;
 
 	// The rectangle extracted from a sprite, 'rect_set' controls whether it is active.
-	Core::Rectangle rect;
+	Rectangle rect;
 	bool rect_set;
 
 	// The geometry used to render this element. Only applies if the 'fill-image' property is set.
-	Core::Geometry geometry;
+	Geometry geometry;
 	bool geometry_dirty;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 15 - 18
Include/RmlUi/Controls/ElementTabSet.h → Include/RmlUi/Core/Elements/ElementTabSet.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICONTROLSELEMENTTABSET_H
-#define RMLUICONTROLSELEMENTTABSET_H
+#ifndef RMLUI_CORE_ELEMENTS_ELEMENTTABSET_H
+#define RMLUI_CORE_ELEMENTS_ELEMENTTABSET_H
 
-#include "../Core/Element.h"
-#include "Header.h"
+#include "../Element.h"
+#include "../Header.h"
 
 namespace Rml {
-namespace Controls {
 
 /**
 	A tabulated set of panels.
@@ -41,31 +40,31 @@ namespace Controls {
 	@author Lloyd Weehuizen
  */
 
-class RMLUICONTROLS_API ElementTabSet : public Core::Element
+class RMLUICORE_API ElementTabSet : public Element
 {
 public:
-	RMLUI_RTTI_DefineWithParent(ElementTabSet, Core::Element)
+	RMLUI_RTTI_DefineWithParent(ElementTabSet, Element)
 
-	ElementTabSet(const Rml::Core::String& tag);
+	ElementTabSet(const String& tag);
 	~ElementTabSet();
 
 	/// Sets the specifed tab index's tab title RML.
 	/// @param[in] tab_index The tab index to set. If it doesn't already exist, it will be created.
 	/// @param[in] rml The RML to set on the tab title.
-	void SetTab(int tab_index, const Rml::Core::String& rml);
+	void SetTab(int tab_index, const String& rml);
 	/// Sets the specifed tab index's tab panel RML.
 	/// @param[in] tab_index The tab index to set. If it doesn't already exist, it will be created.
 	/// @param[in] rml The RML to set on the tab panel.
-	void SetPanel(int tab_index, const Rml::Core::String& rml);
+	void SetPanel(int tab_index, const String& rml);
 
 	/// Set the specifed tab index's title element.
 	/// @param[in] tab_index The tab index to set. If it doesn't already exist, it will be created.
 	/// @param[in] element The root of the element tree to set as the tab title.
-	void SetTab(int tab_index, Core::ElementPtr element);
+	void SetTab(int tab_index, ElementPtr element);
 	/// Set the specified tab index's body element.
 	/// @param[in] tab_index The tab index to set. If it doesn't already exist, it will be created.
 	/// @param[in] element The root of the element tree to set as the window.
-	void SetPanel(int tab_index, Core::ElementPtr element);
+	void SetPanel(int tab_index, ElementPtr element);
 
 	/// Remove one of the tab set's panels and its corresponding tab.
 	/// @param[in] tab_index The tab index to remove. If no tab matches this index, nothing will be removed.
@@ -84,19 +83,17 @@ public:
 	int GetActiveTab() const;
 
 	/// Capture clicks on our tabs.
-	void ProcessDefaultAction(Core::Event& event) override;
+	void ProcessDefaultAction(Event& event) override;
 
 protected:
 	// Catch child add so we can correctly set up its properties.
-	void OnChildAdd(Core::Element* child) override;
+	void OnChildAdd(Element* child) override;
 
 private:
-	Core::Element* GetChildByTag(const Rml::Core::String& tag);
+	Element* GetChildByTag(const String& tag);
 
 	int active_tab;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 11 - 17
Include/RmlUi/Controls/SelectOption.h → Include/RmlUi/Core/Elements/SelectOption.h

@@ -26,20 +26,16 @@
  *
  */
 
-#ifndef RMLUICONTROLSSELECTOPTION_H
-#define RMLUICONTROLSSELECTOPTION_H
+#ifndef RMLUI_CORE_ELEMENTS_SELECTOPTION_H
+#define RMLUI_CORE_ELEMENTS_SELECTOPTION_H
 
-#include "Header.h"
-#include "../Core/Types.h"
+#include "../Header.h"
+#include "../Types.h"
 
 namespace Rml {
-namespace Core {
 
 class Element;
 
-}
-
-namespace Controls {
 
 /**
 	Represents individual options within a select control.
@@ -47,30 +43,28 @@ namespace Controls {
 	@author Peter Curry
  */
 
-class RMLUICONTROLS_API SelectOption
+class RMLUICORE_API SelectOption
 {
 public:
-	SelectOption(Core::Element* element, const Rml::Core::String& value, bool selectable);
+	SelectOption(Element* element, const String& value, bool selectable);
 	~SelectOption();
 
 	/// Returns the element that represents the option visually.
 	/// @return The option's element.
-	Core::Element* GetElement();
+	Element* GetElement();
 	/// Returns the value of the option.
 	/// @return The option's value.
-	const Rml::Core::String& GetValue() const;
+	const String& GetValue() const;
 
 	/// Returns true if the item is selectable.
 	/// @return True if the item is selectable.
 	bool IsSelectable() { return selectable; }
 
 private:
-	Core::Element* element;
-	Rml::Core::String value;
+	Element* element;
+	String value;
 	bool selectable;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Event.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREEVENT_H
-#define RMLUICOREEVENT_H
+#ifndef RMLUI_CORE_EVENT_H
+#define RMLUI_CORE_EVENT_H
 
 #include "Header.h"
 #include "Dictionary.h"
@@ -35,7 +35,6 @@
 #include "ID.h"
 
 namespace Rml {
-namespace Core {
 
 class Element;
 class EventInstancer;
@@ -149,7 +148,5 @@ private:
 };
 
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/EventInstancer.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREEVENTINSTANCER_H
-#define RMLUICOREEVENTINSTANCER_H
+#ifndef RMLUI_CORE_EVENTINSTANCER_H
+#define RMLUI_CORE_EVENTINSTANCER_H
 
 #include "Traits.h"
 #include "Header.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 class Element;
 class Event;
@@ -63,7 +62,5 @@ public:
 	virtual void ReleaseEvent(Event* event) = 0;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/EventListener.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREEVENTLISTENER_H
-#define RMLUICOREEVENTLISTENER_H
+#ifndef RMLUI_CORE_EVENTLISTENER_H
+#define RMLUI_CORE_EVENTLISTENER_H
 
 #include "Header.h"
 #include "Event.h"
 #include "ObserverPtr.h"
 
 namespace Rml {
-namespace Core {
 
 class Event;
 class Element;
@@ -66,7 +65,5 @@ public:
 	}
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/EventListenerInstancer.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREEVENTLISTENERINSTANCER_H
-#define RMLUICOREEVENTLISTENERINSTANCER_H
+#ifndef RMLUI_CORE_EVENTLISTENERINSTANCER_H
+#define RMLUI_CORE_EVENTLISTENERINSTANCER_H
 
 #include "Traits.h"
 #include "Types.h"
@@ -35,7 +35,6 @@
 #include "Element.h"
 
 namespace Rml {
-namespace Core {
 
 class EventListener;
 
@@ -57,7 +56,5 @@ public:
 	virtual EventListener* InstanceEventListener(const String& value, Element* element) = 0;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 12 - 15
Include/RmlUi/Core/Factory.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICOREFACTORY_H
-#define RMLUICOREFACTORY_H
+#ifndef RMLUI_CORE_FACTORY_H
+#define RMLUI_CORE_FACTORY_H
 
 #include "XMLParser.h"
 #include "Header.h"
 
 namespace Rml {
-namespace Core {
 
 class Context;
 class ContextInstancer;
@@ -75,7 +74,7 @@ public:
 
 	/// Registers a non-owning pointer to the instancer used to instance contexts.
 	/// @param[in] instancer The new context instancer.
-	/// @lifetime The instancer must be kept alive until after the call to Core::Shutdown.
+	/// @lifetime The instancer must be kept alive until after the call to Rml::Shutdown.
 	static void RegisterContextInstancer(ContextInstancer* instancer);
 	/// Instances a new context.
 	/// @param[in] name The name of the new context.
@@ -85,7 +84,7 @@ public:
 	/// Registers a non-owning pointer to the element instancer that will be used to instance an element when the specified tag is encountered.
 	/// @param[in] name Name of the instancer; elements with this as their tag will use this instancer.
 	/// @param[in] instancer The instancer to call when the tag is encountered.
-	/// @lifetime The instancer must be kept alive until after the call to Core::Shutdown.
+	/// @lifetime The instancer must be kept alive until after the call to Rml::Shutdown.
 	static void RegisterElementInstancer(const String& name, ElementInstancer* instancer);
 	/// Returns the element instancer for the specified tag.
 	/// @param[in] tag Name of the tag to get the instancer for.
@@ -114,12 +113,12 @@ public:
 	/// @param[in] context The context that is creating the document.
 	/// @param[in] stream The stream to instance from.
 	/// @return The instanced document, or nullptr if an error occurred.
-	static ElementPtr InstanceDocumentStream(Rml::Core::Context* context, Stream* stream);
+	static ElementPtr InstanceDocumentStream(Context* context, Stream* stream);
 
 	/// Registers a non-owning pointer to an instancer that will be used to instance decorators.
 	/// @param[in] name The name of the decorator the instancer will be called for.
 	/// @param[in] instancer The instancer to call when the decorator name is encountered.
-	/// @lifetime The instancer must be kept alive until after the call to Core::Shutdown.
+	/// @lifetime The instancer must be kept alive until after the call to Rml::Shutdown.
 	/// @return The added instancer if the registration was successful, nullptr otherwise.
 	static void RegisterDecoratorInstancer(const String& name, DecoratorInstancer* instancer);
 	/// Retrieves a decorator instancer registered with the factory.
@@ -130,7 +129,7 @@ public:
 	/// Registers a non-owning pointer to an instancer that will be used to instance font effects.
 	/// @param[in] name The name of the font effect the instancer will be called for.
 	/// @param[in] instancer The instancer to call when the font effect name is encountered.
-	/// @lifetime The instancer must be kept alive until after the call to Core::Shutdown.
+	/// @lifetime The instancer must be kept alive until after the call to Rml::Shutdown.
 	/// @return The added instancer if the registration was successful, nullptr otherwise.
 	static void RegisterFontEffectInstancer(const String& name, FontEffectInstancer* instancer);
 	/// Retrieves a font-effect instancer registered with the factory.
@@ -157,7 +156,7 @@ public:
 
 	/// Registers an instancer for all events.
 	/// @param[in] instancer The instancer to be called.
-	/// @lifetime The instancer must be kept alive until after the call to Core::Shutdown.
+	/// @lifetime The instancer must be kept alive until after the call to Rml::Shutdown.
 	static void RegisterEventInstancer(EventInstancer* instancer);
 	/// Instance an event object
 	/// @param[in] target Target element of this event.
@@ -168,7 +167,7 @@ public:
 	static EventPtr InstanceEvent(Element* target, EventId id, const String& type, const Dictionary& parameters, bool interruptible);
 
 	/// Register the instancer to be used for all event listeners.
-	/// @lifetime The instancer must be kept alive until after the call to Core::Shutdown, or until a new instancer is set.
+	/// @lifetime The instancer must be kept alive until after the call to Rml::Shutdown, or until a new instancer is set.
 	static void RegisterEventListenerInstancer(EventListenerInstancer* instancer);
 	/// Instance an event listener with the given string. This is used for instancing listeners for the on* events from RML.
 	/// @param[in] value The parameters to the event listener.
@@ -181,13 +180,13 @@ public:
 	/// @param[in] instancer  The instancer to be called.
 	/// @param[in] type_name  The type name of the view, determines the element attribute that is used to initialize it.
 	/// @param[in] is_structural_view  Set true if the view should be parsed as a structural view.
-	/// @lifetime The instancer must be kept alive until after the call to Core::Shutdown.
+	/// @lifetime The instancer must be kept alive until after the call to Rml::Shutdown.
 	static void RegisterDataViewInstancer(DataViewInstancer* instancer, const String& type_name, bool is_structural_view = false);
 
 	/// Register an instancer for data controllers.
 	/// @param[in] instancer  The instancer to be called.
 	/// @param[in] type_name  The type name of the controller, determines the element attribute that is used to initialize it.
-	/// @lifetime The instancer must be kept alive until after the call to Core::Shutdown.
+	/// @lifetime The instancer must be kept alive until after the call to Rml::Shutdown.
 	static void RegisterDataControllerInstancer(DataControllerInstancer* instancer, const String& type_name);
 
 	/// Instance the data view with the given type name.
@@ -204,7 +203,5 @@ private:
 	~Factory();
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 4 - 7
Include/RmlUi/Core/FileInterface.h

@@ -26,22 +26,21 @@
  *
  */
 
-#ifndef RMLUICOREFILEINTERFACE_H
-#define RMLUICOREFILEINTERFACE_H
+#ifndef RMLUI_CORE_FILEINTERFACE_H
+#define RMLUI_CORE_FILEINTERFACE_H
 
 #include "Header.h"
 #include "Types.h"
 #include "Traits.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	The abstract base class for application-specific file I/O.
 
 	By default, RmlUi will use a file interface implementing the standard C file functions. If this is not sufficient,
 	or your application wants more control over file I/O, this class should be derived, instanced, and installed
-	through Core::SetFileInterface() before you initialise RmlUi.
+	through Rml::SetFileInterface() before you initialise RmlUi.
 
 	@author Peter Curry
  */
@@ -84,7 +83,5 @@ public:
 	virtual size_t Length(FileHandle file);
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/FontEffect.h

@@ -26,13 +26,12 @@
  *
  */
 
-#ifndef RMLUICOREFONTEFFECT_H
-#define RMLUICOREFONTEFFECT_H
+#ifndef RMLUI_CORE_FONTEFFECT_H
+#define RMLUI_CORE_FONTEFFECT_H
 
 #include "FontGlyph.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	@author Peter Curry
@@ -89,7 +88,5 @@ private:
 	size_t fingerprint;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/FontEffectInstancer.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREFONTEFFECTINSTANCER_H
-#define RMLUICOREFONTEFFECTINSTANCER_H
+#ifndef RMLUI_CORE_FONTEFFECTINSTANCER_H
+#define RMLUI_CORE_FONTEFFECTINSTANCER_H
 
 #include "Traits.h"
 #include "Header.h"
@@ -35,7 +35,6 @@
 #include "PropertySpecification.h"
 
 namespace Rml {
-namespace Core {
 
 class FontEffect;
 
@@ -87,7 +86,5 @@ private:
 	friend class Factory;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 4 - 8
Include/RmlUi/Core/FontEngineInterface.h

@@ -25,8 +25,8 @@
  *
  */
 
-#ifndef RMLUICOREFONTENGINEINTERFACE_H
-#define RMLUICOREFONTENGINEINTERFACE_H
+#ifndef RMLUI_CORE_FONTENGINEINTERFACE_H
+#define RMLUI_CORE_FONTENGINEINTERFACE_H
 
 #include "Header.h"
 #include "Types.h"
@@ -34,14 +34,12 @@
 #include "Geometry.h"
 
 namespace Rml {
-namespace Core {
-
 
 /**
 	The abstract base class for an application-specific font engine implementation.
 	
 	By default, RmlUi will use its own font engine with characters rendered through FreeType. To use your own engine,
-	provide a concrete implementation of this class and install it through Core::SetFontEngineInterface().
+	provide a concrete implementation of this class and install it through Rml::SetFontEngineInterface().
  */
 
 
@@ -131,7 +129,5 @@ public:
 	virtual int GetVersion(FontFaceHandle handle);
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/FontGlyph.h

@@ -26,13 +26,12 @@
  *
  */
 
-#ifndef RMLUICOREFONTGLYPH_H
-#define RMLUICOREFONTGLYPH_H
+#ifndef RMLUI_CORE_FONTGLYPH_H
+#define RMLUI_CORE_FONTGLYPH_H
 
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	Metrics and bitmap data for a single glyph within a font face.
@@ -79,7 +78,5 @@ public:
 
 using FontGlyphMap = UnorderedMap<Character, FontGlyph>;
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Geometry.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREGEOMETRY_H
-#define RMLUICOREGEOMETRY_H
+#ifndef RMLUI_CORE_GEOMETRY_H
+#define RMLUI_CORE_GEOMETRY_H
 
 #include "Header.h"
 #include "Vertex.h"
 #include <stdint.h>
 
 namespace Rml {
-namespace Core {
 
 class Context;
 class Element;
@@ -109,7 +108,5 @@ private:
 
 using GeometryList = std::vector< Geometry >;
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/GeometryUtilities.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREGEOMETRYUTILITIES_H
-#define RMLUICOREGEOMETRYUTILITIES_H
+#ifndef RMLUI_CORE_GEOMETRYUTILITIES_H
+#define RMLUI_CORE_GEOMETRYUTILITIES_H
 
 #include "Header.h"
 #include "Types.h"
@@ -35,7 +35,6 @@
 #include "ComputedValues.h"
 
 namespace Rml {
-namespace Core {
 
 class Geometry;
 
@@ -80,7 +79,5 @@ private:
 	~GeometryUtilities();
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 2 - 2
Include/RmlUi/Core/Header.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREHEADER_H
-#define RMLUICOREHEADER_H
+#ifndef RMLUI_CORE_HEADER_H
+#define RMLUI_CORE_HEADER_H
 
 #include "Platform.h"
 

+ 4 - 8
Include/RmlUi/Core/ID.h

@@ -27,14 +27,12 @@
  */
 
  
-#ifndef RMLUICOREID_H
-#define RMLUICOREID_H
+#ifndef RMLUI_CORE_ID_H
+#define RMLUI_CORE_ID_H
 
 #include <stdint.h>
 
 namespace Rml {
-namespace Core {
-
 
 enum class ShorthandId : uint8_t
 {
@@ -193,7 +191,7 @@ enum class EventId : uint16_t
 	Animationend,
 	Transitionend,
 
-	// Controls events
+	// Form control events
 	Change,
 	Submit,
 	Tabchange,
@@ -212,7 +210,5 @@ enum class EventId : uint16_t
 	MaxNumIds = 0xffff
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Input.h

@@ -26,11 +26,10 @@
  *
  */
 
-#ifndef RMLUICOREINPUT_H
-#define RMLUICOREINPUT_H
+#ifndef RMLUI_CORE_INPUT_H
+#define RMLUI_CORE_INPUT_H
 
 namespace Rml {
-namespace Core {
 
 /*
 	Enumerants for sending input events into RmlUi.
@@ -270,7 +269,5 @@ namespace Input
 	};
 }
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Log.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICORELOG_H
-#define RMLUICORELOG_H
+#ifndef RMLUI_CORE_LOG_H
+#define RMLUI_CORE_LOG_H
 
 #include "Header.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	RmlUi logging API.
@@ -74,7 +73,5 @@ public:
 	static void ParseError(const String& filename, int line_number, const char* format, ...);
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 0 - 54
Include/RmlUi/Core/Lua/Header.h

@@ -1,54 +0,0 @@
-/*
- * This source file is part of RmlUi, the HTML/CSS Interface Middleware
- *
- * For the latest information, see http://github.com/mikke89/RmlUi
- *
- * Copyright (c) 2008-2010 CodePoint Ltd, Shift Technology Ltd
- * Copyright (c) 2019 The RmlUi Team, and contributors
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- * 
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- */
- 
-#ifndef RMLUICORELUAHEADER_H
-#define RMLUICORELUAHEADER_H
-
-#include "../Platform.h"
-
-#ifdef RMLUILUA_API
-#undef RMLUILUA_API
-#endif
-
-#if !defined RMLUI_STATIC_LIB
-	#ifdef RMLUI_PLATFORM_WIN32
-		#if defined RmlCoreLua_EXPORTS 
-			#define RMLUILUA_API __declspec(dllexport)
-        	#elif defined RmlControlsLua_EXPORTS
-        	    #define RMLUILUA_API __declspec(dllexport)
-        	#else
-			#define RMLUILUA_API __declspec(dllimport)
-		#endif
-	#else
-		#define RMLUILUA_API __attribute__((visibility("default")))
-	#endif
-#else
-	#define RMLUILUA_API
-#endif
-
-#endif

+ 4 - 6
Include/RmlUi/Core/Math.h

@@ -26,13 +26,13 @@
  *
  */
 
-#ifndef RMLUICOREMATH_H
-#define RMLUICOREMATH_H
+#ifndef RMLUI_CORE_MATH_H
+#define RMLUI_CORE_MATH_H
 
 #include "Header.h"
 
 namespace Rml {
-namespace Core {
+
 namespace Math {
 
 // The constant PI.
@@ -181,7 +181,5 @@ RMLUICORE_API int RandomInteger(int max_value);
 RMLUICORE_API bool RandomBool();
 
 }
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/MathTypes.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREMATHTYPES_H
-#define RMLUICOREMATHTYPES_H
+#ifndef RMLUI_CORE_MATHTYPES_H
+#define RMLUI_CORE_MATHTYPES_H
 
 #include "Header.h"
 #include "Vector2.h"
@@ -35,7 +35,6 @@
 #include "Vector4.h"
 
 namespace Rml {
-namespace Core {
 
 // Define common Vector2 types.
 typedef Vector2< int > Vector2i;
@@ -55,7 +54,5 @@ typedef Vector4< float > Vector4f;
 RMLUICORE_API Vector4i operator*(int lhs, const Vector4i& rhs);
 RMLUICORE_API Vector4f operator*(float lhs, const Vector4f& rhs);
 
-}
-}
-
+} // namespace Rml
 #endif

+ 4 - 5
Include/RmlUi/Core/Matrix4.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREMATRIX4_H
-#define RMLUICOREMATRIX4_H
+#ifndef RMLUI_CORE_MATRIX4_H
+#define RMLUI_CORE_MATRIX4_H
 
 #include "Debug.h"
 #include "Math.h"
 #include "Vector4.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	Templated class that acts as base strategy for vectors access patterns of matrices.
@@ -501,8 +500,8 @@ class Matrix4
 			const Vector3< Component >& skew, const Vector4< Component >& perspective, const Vector4< Component >& quaternion) noexcept;
 
 };
-}
-}
+
+} // namespace Rml
 
 #include "Matrix4.inl"
 

+ 3 - 5
Include/RmlUi/Core/Matrix4.inl

@@ -27,7 +27,6 @@
  */
 
 namespace Rml {
-namespace Core {
 
 // Initialising constructor.
 template< typename Component, class Storage >
@@ -314,7 +313,7 @@ bool Matrix4< Component, Storage >::Invert() noexcept
 
 
 template<typename Component, class Storage>
-inline float Rml::Core::Matrix4<Component, Storage>::Determinant() const noexcept
+inline float Matrix4<Component, Storage>::Determinant() const noexcept
 {
 	const Component *src = data();
 	float diag[4]; // Diagonal elements of the matrix inverse (see Invert)
@@ -688,7 +687,7 @@ Matrix4< Component, Storage > Matrix4< Component, Storage >::SkewY(Component ang
 }
 
 template<typename Component, class Storage>
-Matrix4< Component, Storage > Rml::Core::Matrix4<Component, Storage>::Compose(const Vector3<Component>& translation,
+Matrix4< Component, Storage > Matrix4<Component, Storage>::Compose(const Vector3<Component>& translation,
 	const Vector3<Component>& scale, const Vector3<Component>& skew, const Vector4<Component>& perspective,
 	const Vector4<Component>& quaternion) noexcept
 {
@@ -853,5 +852,4 @@ struct Matrix4< Component, Storage >::MatrixMultiplier< _Component, ColumnMajorS
 	}
 };
 
-}
-}
+} // namespace Rml

+ 1 - 4
Include/RmlUi/Core/ObserverPtr.h

@@ -34,7 +34,6 @@
 #include "Header.h"
 
 namespace Rml {
-namespace Core {
 
 struct RMLUICORE_API ObserverPtrBlock {
 	int num_observers;
@@ -185,7 +184,5 @@ private:
 
 
 
-}
-}
-
+} // namespace Rml
 #endif

+ 2 - 2
Include/RmlUi/Core/Platform.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREPLATFORM_H
-#define RMLUICOREPLATFORM_H
+#ifndef RMLUI_CORE_PLATFORM_H
+#define RMLUI_CORE_PLATFORM_H
 
 #if defined __WIN32__ || defined _WIN32
 	#define RMLUI_PLATFORM_WIN32

+ 3 - 6
Include/RmlUi/Core/Plugin.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICOREPLUGIN_H
-#define RMLUICOREPLUGIN_H
+#ifndef RMLUI_CORE_PLUGIN_H
+#define RMLUI_CORE_PLUGIN_H
 
 #include "Header.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 class Element;
 class ElementDocument;
@@ -88,7 +87,5 @@ public:
 	virtual void OnElementDestroy(Element* element);
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 2 - 2
Include/RmlUi/Core/Profiling.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREPROFILING_H
-#define RMLUICOREPROFILING_H
+#ifndef RMLUI_CORE_PROFILING_H
+#define RMLUI_CORE_PROFILING_H
 
 
 #ifdef RMLUI_ENABLE_PROFILING

+ 3 - 6
Include/RmlUi/Core/PropertiesIteratorView.h

@@ -25,14 +25,13 @@
  * THE SOFTWARE.
  *
  */
-#ifndef RMLUICOREPROPERTIESITERATORVIEW_H
-#define RMLUICOREPROPERTIESITERATORVIEW_H
+#ifndef RMLUI_CORE_PROPERTIESITERATORVIEW_H
+#define RMLUI_CORE_PROPERTIESITERATORVIEW_H
 
 #include "Types.h"
 #include "Property.h"
 
 namespace Rml {
-namespace Core {
 
 class PropertiesIterator;
 
@@ -73,7 +72,5 @@ private:
 	UniquePtr<PropertiesIterator> ptr;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Property.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICOREPROPERTY_H
-#define RMLUICOREPROPERTY_H
+#ifndef RMLUI_CORE_PROPERTY_H
+#define RMLUI_CORE_PROPERTY_H
 
 #include "Variant.h"
 #include "Header.h"
 
 namespace Rml {
-namespace Core {
 
 class PropertyDefinition;
 
@@ -129,7 +128,5 @@ public:
 	SharedPtr<const PropertySource> source;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/PropertyDefinition.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICOREPROPERTYDEFINITION_H
-#define RMLUICOREPROPERTYDEFINITION_H
+#ifndef RMLUI_CORE_PROPERTYDEFINITION_H
+#define RMLUI_CORE_PROPERTYDEFINITION_H
 
 #include "Header.h"
 #include "Property.h"
 #include "PropertyParser.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	@author Peter Curry
@@ -103,7 +102,5 @@ private:
 	RelativeTarget relative_target;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 4 - 7
Include/RmlUi/Core/PropertyDictionary.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICOREPROPERTYDICTIONARY_H
-#define RMLUICOREPROPERTYDICTIONARY_H
+#ifndef RMLUI_CORE_PROPERTYDICTIONARY_H
+#define RMLUI_CORE_PROPERTYDICTIONARY_H
 
 #include "Header.h"
 #include "Property.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	A dictionary to property names to values.
@@ -80,12 +79,10 @@ private:
 	// Sets a property on the dictionary and its specificity if there is no name conflict, or its
 	// specificity (given by the parameter, not read from the property itself) is at least equal to
 	// the specificity of the conflicting property.
-	void SetProperty(PropertyId id, const Rml::Core::Property& property, int specificity);
+	void SetProperty(PropertyId id, const Property& property, int specificity);
 
 	PropertyMap properties;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/PropertyIdSet.h

@@ -25,15 +25,14 @@
  * THE SOFTWARE.
  *
  */
-#ifndef RMLUICOREPROPERTYIDSET_H
-#define RMLUICOREPROPERTYIDSET_H
+#ifndef RMLUI_CORE_PROPERTYIDSET_H
+#define RMLUI_CORE_PROPERTYIDSET_H
 
 #include "Types.h"
 #include "ID.h"
 #include <bitset>
 
 namespace Rml {
-namespace Core {
 
 class PropertyIdSetIterator;
 
@@ -175,7 +174,5 @@ PropertyIdSetIterator PropertyIdSet::Erase(PropertyIdSetIterator it) {
 	return it;
 }
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/PropertyParser.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICOREPROPERTYPARSER_H
-#define RMLUICOREPROPERTYPARSER_H
+#ifndef RMLUI_CORE_PROPERTYPARSER_H
+#define RMLUI_CORE_PROPERTYPARSER_H
 
 #include "Header.h"
 #include "Property.h"
 
 namespace Rml {
-namespace Core {
 
 using ParameterMap = UnorderedMap< String, int >;
 
@@ -56,7 +55,5 @@ public:
 	virtual bool ParseValue(Property& property, const String& value, const ParameterMap& parameters) const = 0;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/PropertySpecification.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICOREPROPERTYSPECIFICATION_H
-#define RMLUICOREPROPERTYSPECIFICATION_H
+#ifndef RMLUI_CORE_PROPERTYSPECIFICATION_H
+#define RMLUI_CORE_PROPERTYSPECIFICATION_H
 
 #include "Header.h"
 #include "Types.h"
@@ -35,7 +35,6 @@
 #include "ID.h"
 
 namespace Rml {
-namespace Core {
 
 class StyleSheetSpecification;
 class PropertyDefinition;
@@ -140,7 +139,5 @@ private:
 	friend class StyleSheetSpecification;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 4 - 7
Include/RmlUi/Core/RenderInterface.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICORERENDERINTERFACE_H
-#define RMLUICORERENDERINTERFACE_H
+#ifndef RMLUI_CORE_RENDERINTERFACE_H
+#define RMLUI_CORE_RENDERINTERFACE_H
 
 #include "Traits.h"
 #include "Header.h"
@@ -36,13 +36,12 @@
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 class Context;
 
 /**
 	The abstract base class for application-specific rendering implementation. Your application must provide a concrete
-	implementation of this class and install it through Core::SetRenderInterface() in order for anything to be rendered.
+	implementation of this class and install it through Rml::SetRenderInterface() in order for anything to be rendered.
 
 	@author Peter Curry
  */
@@ -123,7 +122,5 @@ private:
 	friend class Context;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/ScriptInterface.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICORESCRIPTINTERFACE_H
-#define RMLUICORESCRIPTINTERFACE_H
+#ifndef RMLUI_CORE_SCRIPTINTERFACE_H
+#define RMLUI_CORE_SCRIPTINTERFACE_H
 
 #include "Header.h"
 #include "Traits.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	Base class for all objects that hold a scriptable object.
@@ -53,7 +52,5 @@ public:
 	}
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 1 - 4
Include/RmlUi/Core/Spritesheet.h

@@ -32,7 +32,6 @@
 #include "Texture.h"
 
 namespace Rml {
-namespace Core {
 
 struct Spritesheet;
 
@@ -95,7 +94,5 @@ private:
 };
 
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Stream.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICORESTREAM_H
-#define RMLUICORESTREAM_H
+#ifndef RMLUI_CORE_STREAM_H
+#define RMLUI_CORE_STREAM_H
 
 #include "Header.h"
 #include "Traits.h"
@@ -35,7 +35,6 @@
 #include "URL.h"
 
 namespace Rml {
-namespace Core {
 
 class StreamListener;
 
@@ -130,7 +129,5 @@ private:
 	int stream_mode;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/StreamMemory.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICORESTREAMMEMORY_H
-#define RMLUICORESTREAMMEMORY_H
+#ifndef RMLUI_CORE_STREAMMEMORY_H
+#define RMLUI_CORE_STREAMMEMORY_H
 
 #include "Header.h"
 #include "Stream.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	Memory Byte Stream Class 
@@ -113,7 +112,5 @@ private:
 	bool Reallocate(size_t size);
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/StringUtilities.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICORESTRINGUTILITIES_H
-#define RMLUICORESTRINGUTILITIES_H
+#ifndef RMLUI_CORE_STRINGUTILITIES_H
+#define RMLUI_CORE_STRINGUTILITIES_H
 
 #include "Header.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	Helper functions for string manipulation.
@@ -220,7 +219,5 @@ private:
 
 
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/StyleSheet.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICORESTYLESHEET_H
-#define RMLUICORESTYLESHEET_H
+#ifndef RMLUI_CORE_STYLESHEET_H
+#define RMLUI_CORE_STYLESHEET_H
 
 #include "Traits.h"
 #include "PropertyDictionary.h"
 #include "Spritesheet.h"
 
 namespace Rml {
-namespace Core {
 
 class Element;
 class ElementDefinition;
@@ -139,7 +138,5 @@ private:
 	mutable ElementDefinitionCache node_cache;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 4 - 7
Include/RmlUi/Core/StyleSheetSpecification.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICORESTYLESHEETSPECIFICATION_H
-#define RMLUICORESTYLESHEETSPECIFICATION_H
+#ifndef RMLUI_CORE_STYLESHEETSPECIFICATION_H
+#define RMLUI_CORE_STYLESHEETSPECIFICATION_H
 
 #include "Header.h"
 #include "PropertySpecification.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
 
 class PropertyParser;
 struct DefaultStyleSheetParsers;
@@ -56,7 +55,7 @@ public:
 	/// @param[in] parser_name The name to register the new parser under.
 	/// @param[in] parser A non-owning pointer to the parser to register.
 	/// @return True if the parser was registered successfully, false otherwise.
-	/// @lifetime The parser must be kept alive until after the call to Core::Shutdown.
+	/// @lifetime The parser must be kept alive until after the call to Rml::Shutdown.
 	static bool RegisterParser(const String& parser_name, PropertyParser* parser);
 	/// Returns the parser registered with a specific name.
 	/// @param[in] parser_name The name of the desired parser.
@@ -136,7 +135,5 @@ private:
 	UniquePtr<DefaultStyleSheetParsers> default_parsers;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/SystemInterface.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICORESYSTEMINTERFACE_H
-#define RMLUICORESYSTEMINTERFACE_H
+#ifndef RMLUI_CORE_SYSTEMINTERFACE_H
+#define RMLUI_CORE_SYSTEMINTERFACE_H
 
 #include "Types.h"
 #include "Log.h"
@@ -35,7 +35,6 @@
 #include "Header.h"
 
 namespace Rml {
-namespace Core {
 
 /**
 	RmlUi's System Interface.
@@ -99,7 +98,5 @@ public:
 	virtual void DeactivateKeyboard();
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Texture.h

@@ -26,15 +26,14 @@
  *
  */
 
-#ifndef RMLUICORETEXTURE_H
-#define RMLUICORETEXTURE_H
+#ifndef RMLUI_CORE_TEXTURE_H
+#define RMLUI_CORE_TEXTURE_H
 
 #include "Header.h"
 #include "Types.h"
 #include <functional>
 
 namespace Rml {
-namespace Core {
 
 class TextureResource;
 class RenderInterface;
@@ -90,7 +89,5 @@ private:
 	SharedPtr<TextureResource> resource;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 6 - 8
Include/RmlUi/Core/Traits.h

@@ -26,15 +26,13 @@
  *
  */
 
-#ifndef RMLUICORETRAITS_H
-#define RMLUICORETRAITS_H
+#ifndef RMLUI_CORE_TRAITS_H
+#define RMLUI_CORE_TRAITS_H
 
 #include "Header.h"
 #include <type_traits>
 
 namespace Rml {
-namespace Core {
-
 
 class RMLUICORE_API NonCopyMoveable {
 public:
@@ -67,7 +65,7 @@ template<typename T>
 class RMLUICORE_API Releaser final : public ReleaserBase {
 public:
 	void operator()(T* target) const {
-		static_assert(std::is_base_of<Releasable, T>::value, "Rml::Core::Releaser can only operate with classes derived from Rml::Core::Releasable.");
+		static_assert(std::is_base_of<Releasable, T>::value, "Rml::Releaser can only operate with classes derived from ::Rml::Releasable.");
 		Release(static_cast<Releasable*>(target));
 	}
 };
@@ -98,8 +96,8 @@ public:
 	}
 };
 
-}
-}
+} // namespace Rml
+
 
 
 #ifdef RMLUI_USE_CUSTOM_RTTI
@@ -132,7 +130,7 @@ Derived rmlui_dynamic_cast(Base base_instance)
 }
 
 template<class T>
-const char* rmlui_type_name(const T& var)
+const char* rmlui_type_name(const T& /*var*/)
 {
 	return "(type name unavailable)";
 }

+ 4 - 7
Include/RmlUi/Core/Transform.h

@@ -26,14 +26,13 @@
  *
  */
 
-#ifndef RMLUICORETRANSFORM_H
-#define RMLUICORETRANSFORM_H
+#ifndef RMLUI_CORE_TRANSFORM_H
+#define RMLUI_CORE_TRANSFORM_H
 
 #include "Header.h"
 #include "TransformPrimitive.h"
 
 namespace Rml {
-namespace Core {
 
 class Property;
 
@@ -45,7 +44,7 @@ class Property;
 	projection/view matrix in order to render the associated element.
 
 	@author Markus Schöngart
-	@see Rml::Core::Variant
+	@see Rml::Variant
  */
 
 class RMLUICORE_API Transform
@@ -83,7 +82,5 @@ private:
 
 
 
-}
-}
-
+} // namespace Rml
 #endif

+ 8 - 11
Include/RmlUi/Core/TransformPrimitive.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICORETRANSFORMPRIMITIVE_H
-#define RMLUICORETRANSFORMPRIMITIVE_H
+#ifndef RMLUI_CORE_TRANSFORMPRIMITIVE_H
+#define RMLUI_CORE_TRANSFORMPRIMITIVE_H
 
 #include "Header.h"
 #include "Types.h"
@@ -36,7 +36,7 @@
 
 
 namespace Rml {
-namespace Core {
+
 namespace Transforms {
 	
 
@@ -296,13 +296,12 @@ struct RMLUICORE_API PrimitiveVariant {
 
 /**
 	The Primitive struct is the base struct of geometric transforms such as rotations, scalings and translations.
-	Instances of this struct are added to a Rml::Core::Transform instance
-	by the Rml::Core::PropertyParserTransform, which is responsible for
-	parsing the `transform' property.
+	Instances of this struct are added to a Rml::Transform instance by the Rml::PropertyParserTransform, which
+	is responsible for parsing the `transform' property.
 
 	@author Markus Schöngart
-	@see Rml::Core::Transform
-	@see Rml::Core::PropertyParserTransform
+	@see Rml::Transform
+	@see Rml::PropertyParserTransform
  */
 struct RMLUICORE_API Primitive
 {
@@ -355,7 +354,5 @@ struct RMLUICORE_API Primitive
 
 
 }
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 7
Include/RmlUi/Core/TransformState.h

@@ -26,15 +26,13 @@
  *
  */
 
-#ifndef RMLUICORETRANSFORMSTATE_H
-#define RMLUICORETRANSFORMSTATE_H
+#ifndef RMLUI_CORE_TRANSFORMSTATE_H
+#define RMLUI_CORE_TRANSFORMSTATE_H
 
 #include "Header.h"
 #include "Types.h"
 
 namespace Rml {
-namespace Core {
-
 
 class RMLUICORE_API TransformState
 {
@@ -69,7 +67,5 @@ private:
 	mutable Matrix4f inverse_transform;
 };
 
-}
-}
-
+} // namespace Rml
 #endif

+ 3 - 6
Include/RmlUi/Core/Tween.h

@@ -25,14 +25,13 @@
  *
  */
  
-#ifndef RMLUICORETWEEN_H
-#define RMLUICORETWEEN_H
+#ifndef RMLUI_CORE_TWEEN_H
+#define RMLUI_CORE_TWEEN_H
 
 #include <string>
 #include "Header.h"
 
 namespace Rml {
-namespace Core {
 
 using String = std::string;
 
@@ -69,7 +68,5 @@ private:
 };
 
 
-}
-}
-
+} // namespace Rml
 #endif

+ 9 - 13
Include/RmlUi/Core/TypeConverter.h

@@ -26,8 +26,8 @@
  *
  */
 
-#ifndef RMLUICORETYPECONVERTER_H
-#define RMLUICORETYPECONVERTER_H
+#ifndef RMLUI_CORE_TYPECONVERTER_H
+#define RMLUI_CORE_TYPECONVERTER_H
 
 #include "Platform.h"
 #include "Types.h"
@@ -38,7 +38,6 @@
 #include <cinttypes>
 
 namespace Rml {
-namespace Core {
 
 /**
 	Templatised TypeConverters with Template Specialisation.
@@ -50,24 +49,24 @@ namespace Core {
  */
 
 template <typename SourceType, typename DestType>
-class TypeConverter 
+class TypeConverter
 {
-public:	
+public:
 	static bool Convert(const SourceType& src, DestType& dest);
 };
 
 template<typename T>
 inline String ToString(const T& value, String default_value = String()) {
 	String result = default_value;
-    TypeConverter<T, String>::Convert(value, result);
+	TypeConverter<T, String>::Convert(value, result);
 	return result;
 }
 
 template<typename T>
 inline T FromString(const String& string, T default_value = T()) {
-    T result = default_value;
-    TypeConverter<String, T>::Convert(string, result);
-    return result;
+	T result = default_value;
+	TypeConverter<String, T>::Convert(string, result);
+	return result;
 }
 
 
@@ -119,10 +118,7 @@ public:
 	RMLUICORE_API static bool Convert(const FontEffectsPtr& src, String& dest);
 };
 
-
-
-}
-}
+} // namespace Rml
 
 #include "TypeConverter.inl"
 

Some files were not shown because too many files changed in this diff