feather-tk 0.12.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1094) hide show
  1. feather_tk-0.12.0/.gitignore +14 -0
  2. feather_tk-0.12.0/CMakeLists.txt +260 -0
  3. feather_tk-0.12.0/Doxyfile +2701 -0
  4. feather_tk-0.12.0/LICENSE.txt +26 -0
  5. feather_tk-0.12.0/PKG-INFO +420 -0
  6. feather_tk-0.12.0/README.md +386 -0
  7. feather_tk-0.12.0/bin/ftk-resource/App.cpp +240 -0
  8. feather_tk-0.12.0/bin/ftk-resource/App.h +33 -0
  9. feather_tk-0.12.0/bin/ftk-resource/CMakeLists.txt +31 -0
  10. feather_tk-0.12.0/bin/ftk-resource/main.cpp +26 -0
  11. feather_tk-0.12.0/cmake/Modules/Findnfd.cmake +61 -0
  12. feather_tk-0.12.0/cmake/ftkEmbedText.cmake +28 -0
  13. feather_tk-0.12.0/cmake/ftkIconResources.cmake +64 -0
  14. feather_tk-0.12.0/cmake/ftkIconResources.cpp.in +19 -0
  15. feather_tk-0.12.0/cmake/ftkIconResources.h.in +17 -0
  16. feather_tk-0.12.0/deps/glad_GLES_3/CMakeLists.txt +28 -0
  17. feather_tk-0.12.0/deps/glad_GLES_3/ftk/KHR/khrplatform.h +311 -0
  18. feather_tk-0.12.0/deps/glad_GLES_3/ftk/glad/glad.h +1515 -0
  19. feather_tk-0.12.0/deps/glad_GLES_3/src/glad.c +690 -0
  20. feather_tk-0.12.0/deps/glad_GL_4_1/CMakeLists.txt +28 -0
  21. feather_tk-0.12.0/deps/glad_GL_4_1/ftk/KHR/khrplatform.h +311 -0
  22. feather_tk-0.12.0/deps/glad_GL_4_1/ftk/glad/gl.h +2661 -0
  23. feather_tk-0.12.0/deps/glad_GL_4_1/src/gl.c +1410 -0
  24. feather_tk-0.12.0/deps/glad_GL_4_1_Debug/CMakeLists.txt +28 -0
  25. feather_tk-0.12.0/deps/glad_GL_4_1_Debug/ftk/KHR/khrplatform.h +311 -0
  26. feather_tk-0.12.0/deps/glad_GL_4_1_Debug/ftk/glad/gl.h +3231 -0
  27. feather_tk-0.12.0/deps/glad_GL_4_1_Debug/src/gl.c +5914 -0
  28. feather_tk-0.12.0/etc/Config/ci-linux-gles3.cmake +6 -0
  29. feather_tk-0.12.0/etc/Config/ci-linux-python.cmake +11 -0
  30. feather_tk-0.12.0/etc/Config/ci-linux-sdl2.cmake +5 -0
  31. feather_tk-0.12.0/etc/Config/ci-linux.cmake +6 -0
  32. feather_tk-0.12.0/etc/Config/ci-macos-python.cmake +11 -0
  33. feather_tk-0.12.0/etc/Config/ci-windows-python.cmake +11 -0
  34. feather_tk-0.12.0/etc/Config/ci.cmake +20 -0
  35. feather_tk-0.12.0/etc/Config/default.cmake +71 -0
  36. feather_tk-0.12.0/etc/Config/wheel.cmake +24 -0
  37. feather_tk-0.12.0/etc/Fonts/NotoMono-Regular.ttf +0 -0
  38. feather_tk-0.12.0/etc/Fonts/NotoSans-Bold.ttf +0 -0
  39. feather_tk-0.12.0/etc/Fonts/NotoSans-Regular.ttf +0 -0
  40. feather_tk-0.12.0/etc/Fonts/NotoSansCJK-Regular.otf +0 -0
  41. feather_tk-0.12.0/etc/Fonts/NotoSansMono-Regular.ttf +0 -0
  42. feather_tk-0.12.0/etc/Fonts/NotoSansSymbols2-Regular.ttf +0 -0
  43. feather_tk-0.12.0/etc/Icons/Add.svg +81 -0
  44. feather_tk-0.12.0/etc/Icons/AddSmall.svg +81 -0
  45. feather_tk-0.12.0/etc/Icons/ArrowDown.svg +80 -0
  46. feather_tk-0.12.0/etc/Icons/ArrowLeft.svg +80 -0
  47. feather_tk-0.12.0/etc/Icons/ArrowRight.svg +80 -0
  48. feather_tk-0.12.0/etc/Icons/ArrowUp.svg +80 -0
  49. feather_tk-0.12.0/etc/Icons/Audio.svg +80 -0
  50. feather_tk-0.12.0/etc/Icons/BellowsClosed.svg +82 -0
  51. feather_tk-0.12.0/etc/Icons/BellowsOpen.svg +85 -0
  52. feather_tk-0.12.0/etc/Icons/Clear.svg +76 -0
  53. feather_tk-0.12.0/etc/Icons/ClearSmall.svg +81 -0
  54. feather_tk-0.12.0/etc/Icons/Close.svg +81 -0
  55. feather_tk-0.12.0/etc/Icons/CloseSmall.svg +81 -0
  56. feather_tk-0.12.0/etc/Icons/Copy.svg +85 -0
  57. feather_tk-0.12.0/etc/Icons/Cut.svg +85 -0
  58. feather_tk-0.12.0/etc/Icons/Decrement.svg +78 -0
  59. feather_tk-0.12.0/etc/Icons/Directory.svg +80 -0
  60. feather_tk-0.12.0/etc/Icons/DirectoryBack.svg +80 -0
  61. feather_tk-0.12.0/etc/Icons/DirectoryForward.svg +80 -0
  62. feather_tk-0.12.0/etc/Icons/DirectoryUp.svg +80 -0
  63. feather_tk-0.12.0/etc/Icons/Edit.svg +75 -0
  64. feather_tk-0.12.0/etc/Icons/Empty.svg +75 -0
  65. feather_tk-0.12.0/etc/Icons/File.svg +113 -0
  66. feather_tk-0.12.0/etc/Icons/FileBrowser.svg +74 -0
  67. feather_tk-0.12.0/etc/Icons/FileClose.svg +85 -0
  68. feather_tk-0.12.0/etc/Icons/FileCloseAll.svg +106 -0
  69. feather_tk-0.12.0/etc/Icons/FileNew.svg +142 -0
  70. feather_tk-0.12.0/etc/Icons/FileOpen.svg +85 -0
  71. feather_tk-0.12.0/etc/Icons/FileReload.svg +88 -0
  72. feather_tk-0.12.0/etc/Icons/FileSave.svg +85 -0
  73. feather_tk-0.12.0/etc/Icons/FrameEnd.svg +92 -0
  74. feather_tk-0.12.0/etc/Icons/FrameInOut.svg +106 -0
  75. feather_tk-0.12.0/etc/Icons/FrameNext.svg +90 -0
  76. feather_tk-0.12.0/etc/Icons/FramePrev.svg +90 -0
  77. feather_tk-0.12.0/etc/Icons/FrameStart.svg +91 -0
  78. feather_tk-0.12.0/etc/Icons/Increment.svg +78 -0
  79. feather_tk-0.12.0/etc/Icons/Info.svg +80 -0
  80. feather_tk-0.12.0/etc/Icons/MenuArrow.svg +81 -0
  81. feather_tk-0.12.0/etc/Icons/MenuChecked.svg +82 -0
  82. feather_tk-0.12.0/etc/Icons/Mute.svg +89 -0
  83. feather_tk-0.12.0/etc/Icons/Next.svg +81 -0
  84. feather_tk-0.12.0/etc/Icons/PanelBottom.svg +83 -0
  85. feather_tk-0.12.0/etc/Icons/PanelLeft.svg +83 -0
  86. feather_tk-0.12.0/etc/Icons/PanelRight.svg +83 -0
  87. feather_tk-0.12.0/etc/Icons/PanelTop.svg +83 -0
  88. feather_tk-0.12.0/etc/Icons/Paste.svg +85 -0
  89. feather_tk-0.12.0/etc/Icons/PlaybackForward.svg +64 -0
  90. feather_tk-0.12.0/etc/Icons/PlaybackReverse.svg +79 -0
  91. feather_tk-0.12.0/etc/Icons/PlaybackStop.svg +84 -0
  92. feather_tk-0.12.0/etc/Icons/Prev.svg +80 -0
  93. feather_tk-0.12.0/etc/Icons/Redo.svg +85 -0
  94. feather_tk-0.12.0/etc/Icons/Reload.svg +90 -0
  95. feather_tk-0.12.0/etc/Icons/Remove.svg +81 -0
  96. feather_tk-0.12.0/etc/Icons/RemoveSmall.svg +81 -0
  97. feather_tk-0.12.0/etc/Icons/Reset.svg +63 -0
  98. feather_tk-0.12.0/etc/Icons/ReverseSort.svg +87 -0
  99. feather_tk-0.12.0/etc/Icons/Search.svg +86 -0
  100. feather_tk-0.12.0/etc/Icons/Settings.svg +77 -0
  101. feather_tk-0.12.0/etc/Icons/Shuttle0.svg +80 -0
  102. feather_tk-0.12.0/etc/Icons/Shuttle1.svg +81 -0
  103. feather_tk-0.12.0/etc/Icons/Shuttle2.svg +81 -0
  104. feather_tk-0.12.0/etc/Icons/Shuttle3.svg +81 -0
  105. feather_tk-0.12.0/etc/Icons/Shuttle4.svg +81 -0
  106. feather_tk-0.12.0/etc/Icons/Shuttle5.svg +81 -0
  107. feather_tk-0.12.0/etc/Icons/Shuttle6.svg +81 -0
  108. feather_tk-0.12.0/etc/Icons/Shuttle7.svg +81 -0
  109. feather_tk-0.12.0/etc/Icons/SubMenuArrow.svg +75 -0
  110. feather_tk-0.12.0/etc/Icons/Time.svg +86 -0
  111. feather_tk-0.12.0/etc/Icons/TimeEnd.svg +90 -0
  112. feather_tk-0.12.0/etc/Icons/TimeStart.svg +90 -0
  113. feather_tk-0.12.0/etc/Icons/Undo.svg +84 -0
  114. feather_tk-0.12.0/etc/Icons/ViewFrame.svg +97 -0
  115. feather_tk-0.12.0/etc/Icons/ViewZoomIn.svg +99 -0
  116. feather_tk-0.12.0/etc/Icons/ViewZoomOut.svg +97 -0
  117. feather_tk-0.12.0/etc/Icons/ViewZoomReset.svg +97 -0
  118. feather_tk-0.12.0/etc/Icons/Volume.svg +78 -0
  119. feather_tk-0.12.0/etc/Icons/WindowFullScreen.svg +89 -0
  120. feather_tk-0.12.0/etc/Icons/feather_tk_32.png +0 -0
  121. feather_tk-0.12.0/etc/Icons/feather_tk_32.svg +41 -0
  122. feather_tk-0.12.0/etc/Icons/feather_tk_512.svg +67 -0
  123. feather_tk-0.12.0/etc/Images/Charlie.png +0 -0
  124. feather_tk-0.12.0/etc/Images/TestDrawing.svg +89 -0
  125. feather_tk-0.12.0/etc/Images/imageview.png +0 -0
  126. feather_tk-0.12.0/etc/Images/objview.png +0 -0
  127. feather_tk-0.12.0/etc/Images/textedit.png +0 -0
  128. feather_tk-0.12.0/etc/Images/widgets.png +0 -0
  129. feather_tk-0.12.0/etc/Legal/CMakeLists.txt +16 -0
  130. feather_tk-0.12.0/etc/Legal/LICENSE_CMake.txt +132 -0
  131. feather_tk-0.12.0/etc/Legal/LICENSE_FreeType.txt +169 -0
  132. feather_tk-0.12.0/etc/Legal/LICENSE_OFL.txt +93 -0
  133. feather_tk-0.12.0/etc/Legal/LICENSE_SDL2.txt +18 -0
  134. feather_tk-0.12.0/etc/Legal/LICENSE_feather-tk.txt +26 -0
  135. feather_tk-0.12.0/etc/Legal/LICENSE_glad.txt +21 -0
  136. feather_tk-0.12.0/etc/Legal/LICENSE_libpng.txt +134 -0
  137. feather_tk-0.12.0/etc/Legal/LICENSE_lunasvg.txt +21 -0
  138. feather_tk-0.12.0/etc/Legal/LICENSE_nlohmann_json.txt +21 -0
  139. feather_tk-0.12.0/etc/Legal/LICENSE_plutovg.txt +21 -0
  140. feather_tk-0.12.0/etc/Legal/LICENSE_zlib.txt +21 -0
  141. feather_tk-0.12.0/etc/Linux/lcov.sh +12 -0
  142. feather_tk-0.12.0/etc/Linux/sbuild.sh +38 -0
  143. feather_tk-0.12.0/etc/Linux/setup-gha.sh +15 -0
  144. feather_tk-0.12.0/etc/Linux/stats.sh +5 -0
  145. feather_tk-0.12.0/etc/Objects/Bolt.obj +20856 -0
  146. feather_tk-0.12.0/etc/Objects/Cube.obj +35 -0
  147. feather_tk-0.12.0/etc/Objects/Square.obj +16 -0
  148. feather_tk-0.12.0/etc/Python/ftkWheelDeps.cmake +72 -0
  149. feather_tk-0.12.0/etc/SuperBuild/CMakeLists.txt +143 -0
  150. feather_tk-0.12.0/etc/SuperBuild/ZLIB-patch/CMakeLists.txt +221 -0
  151. feather_tk-0.12.0/etc/SuperBuild/ZLIB-patch/zconf.h.cmakein +541 -0
  152. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildFreetype.cmake +26 -0
  153. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildPNG.cmake +38 -0
  154. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildSDL2.cmake +35 -0
  155. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildSDL3.cmake +57 -0
  156. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildZLIB.cmake +26 -0
  157. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/Buildlunasvg.cmake +17 -0
  158. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/Buildnanobind.cmake +17 -0
  159. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/Buildnfd.cmake +17 -0
  160. feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/Buildnlohmann_json.cmake +15 -0
  161. feather_tk-0.12.0/etc/Web/gallery.html +40 -0
  162. feather_tk-0.12.0/etc/Web/index.html.in +93 -0
  163. feather_tk-0.12.0/etc/Windows/sbuild.bat +31 -0
  164. feather_tk-0.12.0/etc/macOS/sbuild.sh +38 -0
  165. feather_tk-0.12.0/examples/CMakeLists.txt +37 -0
  166. feather_tk-0.12.0/examples/gfx/App.cpp +51 -0
  167. feather_tk-0.12.0/examples/gfx/App.h +38 -0
  168. feather_tk-0.12.0/examples/gfx/CMakeLists.txt +26 -0
  169. feather_tk-0.12.0/examples/gfx/GOL.cpp +200 -0
  170. feather_tk-0.12.0/examples/gfx/GOL.h +48 -0
  171. feather_tk-0.12.0/examples/gfx/MainWindow.cpp +39 -0
  172. feather_tk-0.12.0/examples/gfx/MainWindow.h +36 -0
  173. feather_tk-0.12.0/examples/gfx/Noise.cpp +99 -0
  174. feather_tk-0.12.0/examples/gfx/Noise.h +41 -0
  175. feather_tk-0.12.0/examples/gfx/main.cpp +23 -0
  176. feather_tk-0.12.0/examples/imageview/Actions.cpp +351 -0
  177. feather_tk-0.12.0/examples/imageview/Actions.h +76 -0
  178. feather_tk-0.12.0/examples/imageview/App.cpp +186 -0
  179. feather_tk-0.12.0/examples/imageview/App.h +85 -0
  180. feather_tk-0.12.0/examples/imageview/CMakeLists.txt +42 -0
  181. feather_tk-0.12.0/examples/imageview/Document.cpp +56 -0
  182. feather_tk-0.12.0/examples/imageview/Document.h +52 -0
  183. feather_tk-0.12.0/examples/imageview/DocumentTabs.cpp +138 -0
  184. feather_tk-0.12.0/examples/imageview/DocumentTabs.h +56 -0
  185. feather_tk-0.12.0/examples/imageview/ImageView.cpp +163 -0
  186. feather_tk-0.12.0/examples/imageview/ImageView.h +69 -0
  187. feather_tk-0.12.0/examples/imageview/MainWindow.cpp +128 -0
  188. feather_tk-0.12.0/examples/imageview/MainWindow.h +72 -0
  189. feather_tk-0.12.0/examples/imageview/MenuBar.cpp +116 -0
  190. feather_tk-0.12.0/examples/imageview/MenuBar.h +57 -0
  191. feather_tk-0.12.0/examples/imageview/Settings.cpp +57 -0
  192. feather_tk-0.12.0/examples/imageview/Settings.h +36 -0
  193. feather_tk-0.12.0/examples/imageview/SettingsModel.cpp +126 -0
  194. feather_tk-0.12.0/examples/imageview/SettingsModel.h +62 -0
  195. feather_tk-0.12.0/examples/imageview/SettingsWidget.cpp +135 -0
  196. feather_tk-0.12.0/examples/imageview/SettingsWidget.h +49 -0
  197. feather_tk-0.12.0/examples/imageview/StatusBar.cpp +71 -0
  198. feather_tk-0.12.0/examples/imageview/StatusBar.h +42 -0
  199. feather_tk-0.12.0/examples/imageview/ToolBar.cpp +96 -0
  200. feather_tk-0.12.0/examples/imageview/ToolBar.h +49 -0
  201. feather_tk-0.12.0/examples/imageview/main.cpp +23 -0
  202. feather_tk-0.12.0/examples/objview/Actions.cpp +379 -0
  203. feather_tk-0.12.0/examples/objview/Actions.h +76 -0
  204. feather_tk-0.12.0/examples/objview/App.cpp +186 -0
  205. feather_tk-0.12.0/examples/objview/App.h +85 -0
  206. feather_tk-0.12.0/examples/objview/CMakeLists.txt +44 -0
  207. feather_tk-0.12.0/examples/objview/Document.cpp +69 -0
  208. feather_tk-0.12.0/examples/objview/Document.h +62 -0
  209. feather_tk-0.12.0/examples/objview/DocumentTabs.cpp +131 -0
  210. feather_tk-0.12.0/examples/objview/DocumentTabs.h +55 -0
  211. feather_tk-0.12.0/examples/objview/HUDWidget.cpp +95 -0
  212. feather_tk-0.12.0/examples/objview/HUDWidget.h +42 -0
  213. feather_tk-0.12.0/examples/objview/MainWindow.cpp +124 -0
  214. feather_tk-0.12.0/examples/objview/MainWindow.h +71 -0
  215. feather_tk-0.12.0/examples/objview/MenuBar.cpp +133 -0
  216. feather_tk-0.12.0/examples/objview/MenuBar.h +60 -0
  217. feather_tk-0.12.0/examples/objview/ObjIO.cpp +71 -0
  218. feather_tk-0.12.0/examples/objview/ObjIO.h +18 -0
  219. feather_tk-0.12.0/examples/objview/ObjView.cpp +615 -0
  220. feather_tk-0.12.0/examples/objview/ObjView.h +104 -0
  221. feather_tk-0.12.0/examples/objview/Settings.cpp +91 -0
  222. feather_tk-0.12.0/examples/objview/Settings.h +64 -0
  223. feather_tk-0.12.0/examples/objview/SettingsModel.cpp +133 -0
  224. feather_tk-0.12.0/examples/objview/SettingsModel.h +72 -0
  225. feather_tk-0.12.0/examples/objview/SettingsWidget.cpp +135 -0
  226. feather_tk-0.12.0/examples/objview/SettingsWidget.h +50 -0
  227. feather_tk-0.12.0/examples/objview/ToolBar.cpp +207 -0
  228. feather_tk-0.12.0/examples/objview/ToolBar.h +66 -0
  229. feather_tk-0.12.0/examples/objview/main.cpp +21 -0
  230. feather_tk-0.12.0/examples/panel/CMakeLists.txt +19 -0
  231. feather_tk-0.12.0/examples/panel/panel.cpp +92 -0
  232. feather_tk-0.12.0/examples/panel/panel.json +26 -0
  233. feather_tk-0.12.0/examples/preview/CMakeLists.txt +22 -0
  234. feather_tk-0.12.0/examples/preview/preview.cpp +162 -0
  235. feather_tk-0.12.0/examples/preview/preview.json +43 -0
  236. feather_tk-0.12.0/examples/python/CMakeLists.txt +46 -0
  237. feather_tk-0.12.0/examples/python/bellows.py +72 -0
  238. feather_tk-0.12.0/examples/python/buttons.py +97 -0
  239. feather_tk-0.12.0/examples/python/dialogs.py +89 -0
  240. feather_tk-0.12.0/examples/python/icons.py +43 -0
  241. feather_tk-0.12.0/examples/python/mdi.py +61 -0
  242. feather_tk-0.12.0/examples/python/panel.json +26 -0
  243. feather_tk-0.12.0/examples/python/panel.py +55 -0
  244. feather_tk-0.12.0/examples/python/simple.py +27 -0
  245. feather_tk-0.12.0/examples/python/sliders.py +82 -0
  246. feather_tk-0.12.0/examples/python/tabs.py +37 -0
  247. feather_tk-0.12.0/examples/python/testing.py +95 -0
  248. feather_tk-0.12.0/examples/python/textedit.py +793 -0
  249. feather_tk-0.12.0/examples/simple/CMakeLists.txt +13 -0
  250. feather_tk-0.12.0/examples/simple/simple.cpp +46 -0
  251. feather_tk-0.12.0/examples/textedit/Actions.cpp +362 -0
  252. feather_tk-0.12.0/examples/textedit/Actions.h +69 -0
  253. feather_tk-0.12.0/examples/textedit/App.cpp +362 -0
  254. feather_tk-0.12.0/examples/textedit/App.h +88 -0
  255. feather_tk-0.12.0/examples/textedit/CMakeLists.txt +40 -0
  256. feather_tk-0.12.0/examples/textedit/Document.cpp +125 -0
  257. feather_tk-0.12.0/examples/textedit/Document.h +71 -0
  258. feather_tk-0.12.0/examples/textedit/DocumentTabs.cpp +160 -0
  259. feather_tk-0.12.0/examples/textedit/DocumentTabs.h +51 -0
  260. feather_tk-0.12.0/examples/textedit/MainWindow.cpp +115 -0
  261. feather_tk-0.12.0/examples/textedit/MainWindow.h +62 -0
  262. feather_tk-0.12.0/examples/textedit/MenuBar.cpp +112 -0
  263. feather_tk-0.12.0/examples/textedit/MenuBar.h +54 -0
  264. feather_tk-0.12.0/examples/textedit/Settings.cpp +57 -0
  265. feather_tk-0.12.0/examples/textedit/Settings.h +36 -0
  266. feather_tk-0.12.0/examples/textedit/SettingsModel.cpp +149 -0
  267. feather_tk-0.12.0/examples/textedit/SettingsModel.h +78 -0
  268. feather_tk-0.12.0/examples/textedit/SettingsWidget.cpp +209 -0
  269. feather_tk-0.12.0/examples/textedit/SettingsWidget.h +54 -0
  270. feather_tk-0.12.0/examples/textedit/StatusBar.cpp +92 -0
  271. feather_tk-0.12.0/examples/textedit/StatusBar.h +51 -0
  272. feather_tk-0.12.0/examples/textedit/ToolBar.cpp +68 -0
  273. feather_tk-0.12.0/examples/textedit/ToolBar.h +39 -0
  274. feather_tk-0.12.0/examples/textedit/main.cpp +23 -0
  275. feather_tk-0.12.0/examples/widgets/App.cpp +61 -0
  276. feather_tk-0.12.0/examples/widgets/App.h +40 -0
  277. feather_tk-0.12.0/examples/widgets/Buttons.cpp +169 -0
  278. feather_tk-0.12.0/examples/widgets/Buttons.h +39 -0
  279. feather_tk-0.12.0/examples/widgets/CMakeLists.txt +52 -0
  280. feather_tk-0.12.0/examples/widgets/Dialogs.cpp +177 -0
  281. feather_tk-0.12.0/examples/widgets/Dialogs.h +41 -0
  282. feather_tk-0.12.0/examples/widgets/DragDrop.cpp +347 -0
  283. feather_tk-0.12.0/examples/widgets/DragDrop.h +121 -0
  284. feather_tk-0.12.0/examples/widgets/Fonts.cpp +114 -0
  285. feather_tk-0.12.0/examples/widgets/Fonts.h +43 -0
  286. feather_tk-0.12.0/examples/widgets/Graphs.cpp +50 -0
  287. feather_tk-0.12.0/examples/widgets/Graphs.h +40 -0
  288. feather_tk-0.12.0/examples/widgets/Icons.cpp +69 -0
  289. feather_tk-0.12.0/examples/widgets/Icons.h +36 -0
  290. feather_tk-0.12.0/examples/widgets/Images.cpp +125 -0
  291. feather_tk-0.12.0/examples/widgets/Images.h +36 -0
  292. feather_tk-0.12.0/examples/widgets/Layouts.cpp +117 -0
  293. feather_tk-0.12.0/examples/widgets/Layouts.h +36 -0
  294. feather_tk-0.12.0/examples/widgets/Lists.cpp +106 -0
  295. feather_tk-0.12.0/examples/widgets/Lists.h +36 -0
  296. feather_tk-0.12.0/examples/widgets/MDI.cpp +94 -0
  297. feather_tk-0.12.0/examples/widgets/MDI.h +40 -0
  298. feather_tk-0.12.0/examples/widgets/MainWindow.cpp +194 -0
  299. feather_tk-0.12.0/examples/widgets/MainWindow.h +46 -0
  300. feather_tk-0.12.0/examples/widgets/Offscreen.cpp +215 -0
  301. feather_tk-0.12.0/examples/widgets/Offscreen.h +44 -0
  302. feather_tk-0.12.0/examples/widgets/Popups.cpp +97 -0
  303. feather_tk-0.12.0/examples/widgets/Popups.h +37 -0
  304. feather_tk-0.12.0/examples/widgets/Sliders.cpp +165 -0
  305. feather_tk-0.12.0/examples/widgets/Sliders.h +36 -0
  306. feather_tk-0.12.0/examples/widgets/Splitters.cpp +67 -0
  307. feather_tk-0.12.0/examples/widgets/Splitters.h +36 -0
  308. feather_tk-0.12.0/examples/widgets/SysLog.cpp +69 -0
  309. feather_tk-0.12.0/examples/widgets/SysLog.h +38 -0
  310. feather_tk-0.12.0/examples/widgets/main.cpp +32 -0
  311. feather_tk-0.12.0/examples/windows/CMakeLists.txt +13 -0
  312. feather_tk-0.12.0/examples/windows/windows.cpp +135 -0
  313. feather_tk-0.12.0/ftkConfig.cmake.in +65 -0
  314. feather_tk-0.12.0/lib/ftk/CMakeLists.txt +46 -0
  315. feather_tk-0.12.0/lib/ftk/Core/Assert.cpp +17 -0
  316. feather_tk-0.12.0/lib/ftk/Core/Assert.h +35 -0
  317. feather_tk-0.12.0/lib/ftk/Core/Box.cpp +123 -0
  318. feather_tk-0.12.0/lib/ftk/Core/Box.h +188 -0
  319. feather_tk-0.12.0/lib/ftk/Core/BoxInline.h +469 -0
  320. feather_tk-0.12.0/lib/ftk/Core/BoxPack.cpp +179 -0
  321. feather_tk-0.12.0/lib/ftk/Core/BoxPack.h +87 -0
  322. feather_tk-0.12.0/lib/ftk/Core/CMakeLists.txt +171 -0
  323. feather_tk-0.12.0/lib/ftk/Core/CmdLine.cpp +121 -0
  324. feather_tk-0.12.0/lib/ftk/Core/CmdLine.h +246 -0
  325. feather_tk-0.12.0/lib/ftk/Core/CmdLineInline.h +354 -0
  326. feather_tk-0.12.0/lib/ftk/Core/Color.cpp +306 -0
  327. feather_tk-0.12.0/lib/ftk/Core/Color.h +184 -0
  328. feather_tk-0.12.0/lib/ftk/Core/ColorInline.h +280 -0
  329. feather_tk-0.12.0/lib/ftk/Core/Command.cpp +96 -0
  330. feather_tk-0.12.0/lib/ftk/Core/Command.h +66 -0
  331. feather_tk-0.12.0/lib/ftk/Core/Context.cpp +116 -0
  332. feather_tk-0.12.0/lib/ftk/Core/Context.h +82 -0
  333. feather_tk-0.12.0/lib/ftk/Core/ContextInline.h +23 -0
  334. feather_tk-0.12.0/lib/ftk/Core/DiagSystem.cpp +251 -0
  335. feather_tk-0.12.0/lib/ftk/Core/DiagSystem.h +107 -0
  336. feather_tk-0.12.0/lib/ftk/Core/Error.cpp +11 -0
  337. feather_tk-0.12.0/lib/ftk/Core/Error.h +28 -0
  338. feather_tk-0.12.0/lib/ftk/Core/ErrorWin32.cpp +39 -0
  339. feather_tk-0.12.0/lib/ftk/Core/Export.h +69 -0
  340. feather_tk-0.12.0/lib/ftk/Core/FileIO.cpp +302 -0
  341. feather_tk-0.12.0/lib/ftk/Core/FileIO.h +274 -0
  342. feather_tk-0.12.0/lib/ftk/Core/FileIOInline.h +12 -0
  343. feather_tk-0.12.0/lib/ftk/Core/FileIOUnix.cpp +570 -0
  344. feather_tk-0.12.0/lib/ftk/Core/FileIOWin32.cpp +668 -0
  345. feather_tk-0.12.0/lib/ftk/Core/FileLogSystem.cpp +201 -0
  346. feather_tk-0.12.0/lib/ftk/Core/FileLogSystem.h +34 -0
  347. feather_tk-0.12.0/lib/ftk/Core/FontSystem.cpp +682 -0
  348. feather_tk-0.12.0/lib/ftk/Core/FontSystem.h +198 -0
  349. feather_tk-0.12.0/lib/ftk/Core/FontSystemInline.h +25 -0
  350. feather_tk-0.12.0/lib/ftk/Core/Format.cpp +151 -0
  351. feather_tk-0.12.0/lib/ftk/Core/Format.h +69 -0
  352. feather_tk-0.12.0/lib/ftk/Core/FormatInline.h +35 -0
  353. feather_tk-0.12.0/lib/ftk/Core/IApp.cpp +364 -0
  354. feather_tk-0.12.0/lib/ftk/Core/IApp.h +83 -0
  355. feather_tk-0.12.0/lib/ftk/Core/IBaseSystem.cpp +28 -0
  356. feather_tk-0.12.0/lib/ftk/Core/IBaseSystem.h +63 -0
  357. feather_tk-0.12.0/lib/ftk/Core/IBaseSystemInline.h +15 -0
  358. feather_tk-0.12.0/lib/ftk/Core/IRender.cpp +97 -0
  359. feather_tk-0.12.0/lib/ftk/Core/IRender.h +236 -0
  360. feather_tk-0.12.0/lib/ftk/Core/ISystem.cpp +35 -0
  361. feather_tk-0.12.0/lib/ftk/Core/ISystem.h +29 -0
  362. feather_tk-0.12.0/lib/ftk/Core/Image.cpp +304 -0
  363. feather_tk-0.12.0/lib/ftk/Core/Image.h +272 -0
  364. feather_tk-0.12.0/lib/ftk/Core/ImageIO.cpp +193 -0
  365. feather_tk-0.12.0/lib/ftk/Core/ImageIO.h +148 -0
  366. feather_tk-0.12.0/lib/ftk/Core/ImageInline.h +96 -0
  367. feather_tk-0.12.0/lib/ftk/Core/LRUCache.h +76 -0
  368. feather_tk-0.12.0/lib/ftk/Core/LRUCacheInline.h +155 -0
  369. feather_tk-0.12.0/lib/ftk/Core/LogSystem.cpp +118 -0
  370. feather_tk-0.12.0/lib/ftk/Core/LogSystem.h +91 -0
  371. feather_tk-0.12.0/lib/ftk/Core/Math.cpp +37 -0
  372. feather_tk-0.12.0/lib/ftk/Core/Math.h +54 -0
  373. feather_tk-0.12.0/lib/ftk/Core/MathInline.h +41 -0
  374. feather_tk-0.12.0/lib/ftk/Core/Matrix.cpp +44 -0
  375. feather_tk-0.12.0/lib/ftk/Core/Matrix.h +181 -0
  376. feather_tk-0.12.0/lib/ftk/Core/MatrixInline.h +605 -0
  377. feather_tk-0.12.0/lib/ftk/Core/Memory.cpp +169 -0
  378. feather_tk-0.12.0/lib/ftk/Core/Memory.h +78 -0
  379. feather_tk-0.12.0/lib/ftk/Core/MemoryInline.h +43 -0
  380. feather_tk-0.12.0/lib/ftk/Core/Mesh.cpp +214 -0
  381. feather_tk-0.12.0/lib/ftk/Core/Mesh.h +122 -0
  382. feather_tk-0.12.0/lib/ftk/Core/MeshInline.h +60 -0
  383. feather_tk-0.12.0/lib/ftk/Core/Noise.cpp +86 -0
  384. feather_tk-0.12.0/lib/ftk/Core/Noise.h +31 -0
  385. feather_tk-0.12.0/lib/ftk/Core/OS.cpp +31 -0
  386. feather_tk-0.12.0/lib/ftk/Core/OS.h +79 -0
  387. feather_tk-0.12.0/lib/ftk/Core/OSUnix.cpp +240 -0
  388. feather_tk-0.12.0/lib/ftk/Core/OSWin32.cpp +240 -0
  389. feather_tk-0.12.0/lib/ftk/Core/Observable.h +116 -0
  390. feather_tk-0.12.0/lib/ftk/Core/ObservableInline.h +156 -0
  391. feather_tk-0.12.0/lib/ftk/Core/ObservableList.h +162 -0
  392. feather_tk-0.12.0/lib/ftk/Core/ObservableListInline.h +270 -0
  393. feather_tk-0.12.0/lib/ftk/Core/ObservableMap.h +135 -0
  394. feather_tk-0.12.0/lib/ftk/Core/ObservableMapInline.h +223 -0
  395. feather_tk-0.12.0/lib/ftk/Core/PNG.cpp +80 -0
  396. feather_tk-0.12.0/lib/ftk/Core/PNG.h +78 -0
  397. feather_tk-0.12.0/lib/ftk/Core/PNGPrivate.h +26 -0
  398. feather_tk-0.12.0/lib/ftk/Core/PNGRead.cpp +308 -0
  399. feather_tk-0.12.0/lib/ftk/Core/PNGWrite.cpp +189 -0
  400. feather_tk-0.12.0/lib/ftk/Core/Path.cpp +1090 -0
  401. feather_tk-0.12.0/lib/ftk/Core/Path.h +431 -0
  402. feather_tk-0.12.0/lib/ftk/Core/PathInline.h +181 -0
  403. feather_tk-0.12.0/lib/ftk/Core/PathMacOS.mm +40 -0
  404. feather_tk-0.12.0/lib/ftk/Core/PathMacOSPrivate.h +11 -0
  405. feather_tk-0.12.0/lib/ftk/Core/PathUnix.cpp +107 -0
  406. feather_tk-0.12.0/lib/ftk/Core/PathWin32.cpp +102 -0
  407. feather_tk-0.12.0/lib/ftk/Core/Random.cpp +81 -0
  408. feather_tk-0.12.0/lib/ftk/Core/Random.h +52 -0
  409. feather_tk-0.12.0/lib/ftk/Core/RandomInline.h +11 -0
  410. feather_tk-0.12.0/lib/ftk/Core/Range.cpp +57 -0
  411. feather_tk-0.12.0/lib/ftk/Core/Range.h +84 -0
  412. feather_tk-0.12.0/lib/ftk/Core/RangeInline.h +116 -0
  413. feather_tk-0.12.0/lib/ftk/Core/RenderOptions.cpp +70 -0
  414. feather_tk-0.12.0/lib/ftk/Core/RenderOptions.h +145 -0
  415. feather_tk-0.12.0/lib/ftk/Core/RenderOptionsInline.h +7 -0
  416. feather_tk-0.12.0/lib/ftk/Core/RenderUtil.cpp +114 -0
  417. feather_tk-0.12.0/lib/ftk/Core/RenderUtil.h +82 -0
  418. feather_tk-0.12.0/lib/ftk/Core/Size.cpp +106 -0
  419. feather_tk-0.12.0/lib/ftk/Core/Size.h +138 -0
  420. feather_tk-0.12.0/lib/ftk/Core/SizeInline.h +245 -0
  421. feather_tk-0.12.0/lib/ftk/Core/String.cpp +542 -0
  422. feather_tk-0.12.0/lib/ftk/Core/String.h +150 -0
  423. feather_tk-0.12.0/lib/ftk/Core/Time.cpp +54 -0
  424. feather_tk-0.12.0/lib/ftk/Core/Time.h +30 -0
  425. feather_tk-0.12.0/lib/ftk/Core/TimeUnix.cpp +14 -0
  426. feather_tk-0.12.0/lib/ftk/Core/TimeWin32.cpp +26 -0
  427. feather_tk-0.12.0/lib/ftk/Core/Timer.cpp +192 -0
  428. feather_tk-0.12.0/lib/ftk/Core/Timer.h +88 -0
  429. feather_tk-0.12.0/lib/ftk/Core/Util.h +117 -0
  430. feather_tk-0.12.0/lib/ftk/Core/Vector.cpp +141 -0
  431. feather_tk-0.12.0/lib/ftk/Core/Vector.h +182 -0
  432. feather_tk-0.12.0/lib/ftk/Core/VectorInline.h +364 -0
  433. feather_tk-0.12.0/lib/ftk/Core/Version.h +16 -0
  434. feather_tk-0.12.0/lib/ftk/CorePy/Bindings.cpp +55 -0
  435. feather_tk-0.12.0/lib/ftk/CorePy/Bindings.h +129 -0
  436. feather_tk-0.12.0/lib/ftk/CorePy/Box.cpp +173 -0
  437. feather_tk-0.12.0/lib/ftk/CorePy/CMakeLists.txt +68 -0
  438. feather_tk-0.12.0/lib/ftk/CorePy/CmdLine.cpp +61 -0
  439. feather_tk-0.12.0/lib/ftk/CorePy/CmdLineInline.h +66 -0
  440. feather_tk-0.12.0/lib/ftk/CorePy/Color.cpp +107 -0
  441. feather_tk-0.12.0/lib/ftk/CorePy/Command.cpp +61 -0
  442. feather_tk-0.12.0/lib/ftk/CorePy/Context.cpp +35 -0
  443. feather_tk-0.12.0/lib/ftk/CorePy/DiagSystem.cpp +67 -0
  444. feather_tk-0.12.0/lib/ftk/CorePy/FileLogSystem.cpp +35 -0
  445. feather_tk-0.12.0/lib/ftk/CorePy/FontSystem.cpp +95 -0
  446. feather_tk-0.12.0/lib/ftk/CorePy/IApp.cpp +36 -0
  447. feather_tk-0.12.0/lib/ftk/CorePy/IRender.cpp +73 -0
  448. feather_tk-0.12.0/lib/ftk/CorePy/ISystem.cpp +37 -0
  449. feather_tk-0.12.0/lib/ftk/CorePy/Image.cpp +126 -0
  450. feather_tk-0.12.0/lib/ftk/CorePy/LogSystem.cpp +54 -0
  451. feather_tk-0.12.0/lib/ftk/CorePy/Math.cpp +40 -0
  452. feather_tk-0.12.0/lib/ftk/CorePy/Matrix.cpp +94 -0
  453. feather_tk-0.12.0/lib/ftk/CorePy/Memory.cpp +38 -0
  454. feather_tk-0.12.0/lib/ftk/CorePy/Mesh.cpp +88 -0
  455. feather_tk-0.12.0/lib/ftk/CorePy/Noise.cpp +25 -0
  456. feather_tk-0.12.0/lib/ftk/CorePy/OS.cpp +34 -0
  457. feather_tk-0.12.0/lib/ftk/CorePy/Observable.cpp +45 -0
  458. feather_tk-0.12.0/lib/ftk/CorePy/ObservableInline.h +50 -0
  459. feather_tk-0.12.0/lib/ftk/CorePy/ObservableList.cpp +32 -0
  460. feather_tk-0.12.0/lib/ftk/CorePy/ObservableListInline.h +45 -0
  461. feather_tk-0.12.0/lib/ftk/CorePy/ObservableMap.cpp +28 -0
  462. feather_tk-0.12.0/lib/ftk/CorePy/ObservableMapInline.h +30 -0
  463. feather_tk-0.12.0/lib/ftk/CorePy/Path.cpp +185 -0
  464. feather_tk-0.12.0/lib/ftk/CorePy/Random.cpp +31 -0
  465. feather_tk-0.12.0/lib/ftk/CorePy/Range.cpp +103 -0
  466. feather_tk-0.12.0/lib/ftk/CorePy/RenderOptions.cpp +74 -0
  467. feather_tk-0.12.0/lib/ftk/CorePy/Size.cpp +122 -0
  468. feather_tk-0.12.0/lib/ftk/CorePy/String.cpp +50 -0
  469. feather_tk-0.12.0/lib/ftk/CorePy/Time.cpp +42 -0
  470. feather_tk-0.12.0/lib/ftk/CorePy/Timer.cpp +47 -0
  471. feather_tk-0.12.0/lib/ftk/CorePy/Vector.cpp +166 -0
  472. feather_tk-0.12.0/lib/ftk/CorePy/Version.cpp +27 -0
  473. feather_tk-0.12.0/lib/ftk/CoreTest/AppTest.cpp +151 -0
  474. feather_tk-0.12.0/lib/ftk/CoreTest/AppTest.h +27 -0
  475. feather_tk-0.12.0/lib/ftk/CoreTest/BoxPackTest.cpp +94 -0
  476. feather_tk-0.12.0/lib/ftk/CoreTest/BoxPackTest.h +36 -0
  477. feather_tk-0.12.0/lib/ftk/CoreTest/BoxTest.cpp +253 -0
  478. feather_tk-0.12.0/lib/ftk/CoreTest/BoxTest.h +33 -0
  479. feather_tk-0.12.0/lib/ftk/CoreTest/CMakeLists.txt +80 -0
  480. feather_tk-0.12.0/lib/ftk/CoreTest/CmdLineTest.cpp +177 -0
  481. feather_tk-0.12.0/lib/ftk/CoreTest/CmdLineTest.h +27 -0
  482. feather_tk-0.12.0/lib/ftk/CoreTest/ColorTest.cpp +270 -0
  483. feather_tk-0.12.0/lib/ftk/CoreTest/ColorTest.h +33 -0
  484. feather_tk-0.12.0/lib/ftk/CoreTest/CommandTest.cpp +123 -0
  485. feather_tk-0.12.0/lib/ftk/CoreTest/CommandTest.h +27 -0
  486. feather_tk-0.12.0/lib/ftk/CoreTest/ErrorTest.cpp +37 -0
  487. feather_tk-0.12.0/lib/ftk/CoreTest/ErrorTest.h +27 -0
  488. feather_tk-0.12.0/lib/ftk/CoreTest/FileIOTest.cpp +453 -0
  489. feather_tk-0.12.0/lib/ftk/CoreTest/FileIOTest.h +34 -0
  490. feather_tk-0.12.0/lib/ftk/CoreTest/FontSystemTest.cpp +105 -0
  491. feather_tk-0.12.0/lib/ftk/CoreTest/FontSystemTest.h +32 -0
  492. feather_tk-0.12.0/lib/ftk/CoreTest/FormatTest.cpp +58 -0
  493. feather_tk-0.12.0/lib/ftk/CoreTest/FormatTest.h +27 -0
  494. feather_tk-0.12.0/lib/ftk/CoreTest/ImageIOTest.cpp +80 -0
  495. feather_tk-0.12.0/lib/ftk/CoreTest/ImageIOTest.h +31 -0
  496. feather_tk-0.12.0/lib/ftk/CoreTest/ImageTest.cpp +122 -0
  497. feather_tk-0.12.0/lib/ftk/CoreTest/ImageTest.h +33 -0
  498. feather_tk-0.12.0/lib/ftk/CoreTest/LRUCacheTest.cpp +94 -0
  499. feather_tk-0.12.0/lib/ftk/CoreTest/LRUCacheTest.h +27 -0
  500. feather_tk-0.12.0/lib/ftk/CoreTest/MathTest.cpp +66 -0
  501. feather_tk-0.12.0/lib/ftk/CoreTest/MathTest.h +27 -0
  502. feather_tk-0.12.0/lib/ftk/CoreTest/MatrixTest.cpp +298 -0
  503. feather_tk-0.12.0/lib/ftk/CoreTest/MatrixTest.h +34 -0
  504. feather_tk-0.12.0/lib/ftk/CoreTest/MemoryTest.cpp +121 -0
  505. feather_tk-0.12.0/lib/ftk/CoreTest/MemoryTest.h +32 -0
  506. feather_tk-0.12.0/lib/ftk/CoreTest/MeshTest.cpp +62 -0
  507. feather_tk-0.12.0/lib/ftk/CoreTest/MeshTest.h +30 -0
  508. feather_tk-0.12.0/lib/ftk/CoreTest/NoiseTest.cpp +60 -0
  509. feather_tk-0.12.0/lib/ftk/CoreTest/NoiseTest.h +27 -0
  510. feather_tk-0.12.0/lib/ftk/CoreTest/OSTest.cpp +75 -0
  511. feather_tk-0.12.0/lib/ftk/CoreTest/OSTest.h +31 -0
  512. feather_tk-0.12.0/lib/ftk/CoreTest/ObservableTest.cpp +179 -0
  513. feather_tk-0.12.0/lib/ftk/CoreTest/ObservableTest.h +32 -0
  514. feather_tk-0.12.0/lib/ftk/CoreTest/PNGTest.cpp +107 -0
  515. feather_tk-0.12.0/lib/ftk/CoreTest/PNGTest.h +27 -0
  516. feather_tk-0.12.0/lib/ftk/CoreTest/PathTest.cpp +852 -0
  517. feather_tk-0.12.0/lib/ftk/CoreTest/PathTest.h +40 -0
  518. feather_tk-0.12.0/lib/ftk/CoreTest/RandomTest.cpp +116 -0
  519. feather_tk-0.12.0/lib/ftk/CoreTest/RandomTest.h +27 -0
  520. feather_tk-0.12.0/lib/ftk/CoreTest/RangeTest.cpp +130 -0
  521. feather_tk-0.12.0/lib/ftk/CoreTest/RangeTest.h +32 -0
  522. feather_tk-0.12.0/lib/ftk/CoreTest/RenderOptionsTest.cpp +59 -0
  523. feather_tk-0.12.0/lib/ftk/CoreTest/RenderOptionsTest.h +31 -0
  524. feather_tk-0.12.0/lib/ftk/CoreTest/RenderUtilTest.cpp +250 -0
  525. feather_tk-0.12.0/lib/ftk/CoreTest/RenderUtilTest.h +27 -0
  526. feather_tk-0.12.0/lib/ftk/CoreTest/SizeTest.cpp +185 -0
  527. feather_tk-0.12.0/lib/ftk/CoreTest/SizeTest.h +33 -0
  528. feather_tk-0.12.0/lib/ftk/CoreTest/StringTest.cpp +193 -0
  529. feather_tk-0.12.0/lib/ftk/CoreTest/StringTest.h +34 -0
  530. feather_tk-0.12.0/lib/ftk/CoreTest/SystemTest.cpp +105 -0
  531. feather_tk-0.12.0/lib/ftk/CoreTest/SystemTest.h +27 -0
  532. feather_tk-0.12.0/lib/ftk/CoreTest/TimeTest.cpp +48 -0
  533. feather_tk-0.12.0/lib/ftk/CoreTest/TimeTest.h +31 -0
  534. feather_tk-0.12.0/lib/ftk/CoreTest/TimerTest.cpp +78 -0
  535. feather_tk-0.12.0/lib/ftk/CoreTest/TimerTest.h +27 -0
  536. feather_tk-0.12.0/lib/ftk/CoreTest/VectorTest.cpp +275 -0
  537. feather_tk-0.12.0/lib/ftk/CoreTest/VectorTest.h +33 -0
  538. feather_tk-0.12.0/lib/ftk/GL/CMakeLists.txt +112 -0
  539. feather_tk-0.12.0/lib/ftk/GL/Export.h +34 -0
  540. feather_tk-0.12.0/lib/ftk/GL/GL.h +11 -0
  541. feather_tk-0.12.0/lib/ftk/GL/Init.cpp +46 -0
  542. feather_tk-0.12.0/lib/ftk/GL/Init.h +25 -0
  543. feather_tk-0.12.0/lib/ftk/GL/Mesh.cpp +777 -0
  544. feather_tk-0.12.0/lib/ftk/GL/Mesh.h +126 -0
  545. feather_tk-0.12.0/lib/ftk/GL/OffscreenBuffer.cpp +439 -0
  546. feather_tk-0.12.0/lib/ftk/GL/OffscreenBuffer.h +171 -0
  547. feather_tk-0.12.0/lib/ftk/GL/Render.cpp +639 -0
  548. feather_tk-0.12.0/lib/ftk/GL/Render.h +181 -0
  549. feather_tk-0.12.0/lib/ftk/GL/RenderPrims.cpp +971 -0
  550. feather_tk-0.12.0/lib/ftk/GL/RenderPrivate.h +107 -0
  551. feather_tk-0.12.0/lib/ftk/GL/RenderShaders_GLES_3.cpp +404 -0
  552. feather_tk-0.12.0/lib/ftk/GL/RenderShaders_GL_4_1.cpp +611 -0
  553. feather_tk-0.12.0/lib/ftk/GL/Shader.cpp +345 -0
  554. feather_tk-0.12.0/lib/ftk/GL/Shader.h +108 -0
  555. feather_tk-0.12.0/lib/ftk/GL/System.cpp +298 -0
  556. feather_tk-0.12.0/lib/ftk/GL/System.h +52 -0
  557. feather_tk-0.12.0/lib/ftk/GL/Texture.cpp +756 -0
  558. feather_tk-0.12.0/lib/ftk/GL/Texture.h +163 -0
  559. feather_tk-0.12.0/lib/ftk/GL/TextureAtlas.cpp +146 -0
  560. feather_tk-0.12.0/lib/ftk/GL/TextureAtlas.h +79 -0
  561. feather_tk-0.12.0/lib/ftk/GL/Util.cpp +309 -0
  562. feather_tk-0.12.0/lib/ftk/GL/Util.h +75 -0
  563. feather_tk-0.12.0/lib/ftk/GL/Window.cpp +642 -0
  564. feather_tk-0.12.0/lib/ftk/GL/Window.h +157 -0
  565. feather_tk-0.12.0/lib/ftk/GLTest/CMakeLists.txt +32 -0
  566. feather_tk-0.12.0/lib/ftk/GLTest/MeshTest.cpp +143 -0
  567. feather_tk-0.12.0/lib/ftk/GLTest/MeshTest.h +32 -0
  568. feather_tk-0.12.0/lib/ftk/GLTest/OffscreenBufferTest.cpp +175 -0
  569. feather_tk-0.12.0/lib/ftk/GLTest/OffscreenBufferTest.h +33 -0
  570. feather_tk-0.12.0/lib/ftk/GLTest/RenderTest.cpp +200 -0
  571. feather_tk-0.12.0/lib/ftk/GLTest/RenderTest.h +27 -0
  572. feather_tk-0.12.0/lib/ftk/GLTest/ShaderTest.cpp +161 -0
  573. feather_tk-0.12.0/lib/ftk/GLTest/ShaderTest.h +27 -0
  574. feather_tk-0.12.0/lib/ftk/GLTest/TextureAtlasTest.cpp +82 -0
  575. feather_tk-0.12.0/lib/ftk/GLTest/TextureAtlasTest.h +27 -0
  576. feather_tk-0.12.0/lib/ftk/GLTest/TextureTest.cpp +132 -0
  577. feather_tk-0.12.0/lib/ftk/GLTest/TextureTest.h +32 -0
  578. feather_tk-0.12.0/lib/ftk/GLTest/UtilTest.cpp +36 -0
  579. feather_tk-0.12.0/lib/ftk/GLTest/UtilTest.h +27 -0
  580. feather_tk-0.12.0/lib/ftk/GLTest/WindowTest.cpp +57 -0
  581. feather_tk-0.12.0/lib/ftk/GLTest/WindowTest.h +32 -0
  582. feather_tk-0.12.0/lib/ftk/Resource/CMakeLists.txt +79 -0
  583. feather_tk-0.12.0/lib/ftk/TestLib/CMakeLists.txt +31 -0
  584. feather_tk-0.12.0/lib/ftk/TestLib/ITest.cpp +71 -0
  585. feather_tk-0.12.0/lib/ftk/TestLib/ITest.h +104 -0
  586. feather_tk-0.12.0/lib/ftk/UI/Action.cpp +379 -0
  587. feather_tk-0.12.0/lib/ftk/UI/Action.h +199 -0
  588. feather_tk-0.12.0/lib/ftk/UI/ActionGroup.cpp +183 -0
  589. feather_tk-0.12.0/lib/ftk/UI/ActionGroup.h +93 -0
  590. feather_tk-0.12.0/lib/ftk/UI/App.h +288 -0
  591. feather_tk-0.12.0/lib/ftk/UI/AppGL.cpp +2043 -0
  592. feather_tk-0.12.0/lib/ftk/UI/Bellows.cpp +152 -0
  593. feather_tk-0.12.0/lib/ftk/UI/Bellows.h +72 -0
  594. feather_tk-0.12.0/lib/ftk/UI/BellowsButton.cpp +248 -0
  595. feather_tk-0.12.0/lib/ftk/UI/BellowsPrivate.h +44 -0
  596. feather_tk-0.12.0/lib/ftk/UI/ButtonGroup.cpp +182 -0
  597. feather_tk-0.12.0/lib/ftk/UI/ButtonGroup.h +68 -0
  598. feather_tk-0.12.0/lib/ftk/UI/CMakeLists.txt +305 -0
  599. feather_tk-0.12.0/lib/ftk/UI/Capture.cpp +881 -0
  600. feather_tk-0.12.0/lib/ftk/UI/Capture.h +145 -0
  601. feather_tk-0.12.0/lib/ftk/UI/CheckBox.cpp +270 -0
  602. feather_tk-0.12.0/lib/ftk/UI/CheckBox.h +56 -0
  603. feather_tk-0.12.0/lib/ftk/UI/ChoiceDialog.cpp +200 -0
  604. feather_tk-0.12.0/lib/ftk/UI/ChoiceDialog.h +53 -0
  605. feather_tk-0.12.0/lib/ftk/UI/ClipboardSystem.cpp +116 -0
  606. feather_tk-0.12.0/lib/ftk/UI/ClipboardSystem.h +39 -0
  607. feather_tk-0.12.0/lib/ftk/UI/ColorDot.cpp +225 -0
  608. feather_tk-0.12.0/lib/ftk/UI/ColorDot.h +61 -0
  609. feather_tk-0.12.0/lib/ftk/UI/ColorPopup.cpp +54 -0
  610. feather_tk-0.12.0/lib/ftk/UI/ColorPopup.h +45 -0
  611. feather_tk-0.12.0/lib/ftk/UI/ColorSlider.cpp +646 -0
  612. feather_tk-0.12.0/lib/ftk/UI/ColorSlider.h +209 -0
  613. feather_tk-0.12.0/lib/ftk/UI/ColorSwatch.cpp +315 -0
  614. feather_tk-0.12.0/lib/ftk/UI/ColorSwatch.h +79 -0
  615. feather_tk-0.12.0/lib/ftk/UI/ColorWidget.cpp +813 -0
  616. feather_tk-0.12.0/lib/ftk/UI/ColorWidget.h +205 -0
  617. feather_tk-0.12.0/lib/ftk/UI/ColorWidgetSystem.cpp +65 -0
  618. feather_tk-0.12.0/lib/ftk/UI/ColorWidgetSystem.h +49 -0
  619. feather_tk-0.12.0/lib/ftk/UI/ComboBox.cpp +560 -0
  620. feather_tk-0.12.0/lib/ftk/UI/ComboBox.h +124 -0
  621. feather_tk-0.12.0/lib/ftk/UI/ComboBoxButton.cpp +235 -0
  622. feather_tk-0.12.0/lib/ftk/UI/ComboBoxMenu.cpp +188 -0
  623. feather_tk-0.12.0/lib/ftk/UI/ComboBoxPrivate.h +81 -0
  624. feather_tk-0.12.0/lib/ftk/UI/ConfirmDialog.cpp +219 -0
  625. feather_tk-0.12.0/lib/ftk/UI/ConfirmDialog.h +50 -0
  626. feather_tk-0.12.0/lib/ftk/UI/DiagWidget.cpp +120 -0
  627. feather_tk-0.12.0/lib/ftk/UI/DiagWidget.h +45 -0
  628. feather_tk-0.12.0/lib/ftk/UI/DialogSystem.cpp +152 -0
  629. feather_tk-0.12.0/lib/ftk/UI/DialogSystem.h +72 -0
  630. feather_tk-0.12.0/lib/ftk/UI/Divider.cpp +80 -0
  631. feather_tk-0.12.0/lib/ftk/UI/Divider.h +43 -0
  632. feather_tk-0.12.0/lib/ftk/UI/DocumentModel.cpp +133 -0
  633. feather_tk-0.12.0/lib/ftk/UI/DocumentModel.h +81 -0
  634. feather_tk-0.12.0/lib/ftk/UI/DoubleEdit.cpp +392 -0
  635. feather_tk-0.12.0/lib/ftk/UI/DoubleEdit.h +146 -0
  636. feather_tk-0.12.0/lib/ftk/UI/DoubleEditShuttle.cpp +216 -0
  637. feather_tk-0.12.0/lib/ftk/UI/DoubleEditShuttle.h +102 -0
  638. feather_tk-0.12.0/lib/ftk/UI/DoubleEditSlider.cpp +258 -0
  639. feather_tk-0.12.0/lib/ftk/UI/DoubleEditSlider.h +104 -0
  640. feather_tk-0.12.0/lib/ftk/UI/DoubleModel.cpp +180 -0
  641. feather_tk-0.12.0/lib/ftk/UI/DoubleModel.h +115 -0
  642. feather_tk-0.12.0/lib/ftk/UI/DoubleSlider.cpp +512 -0
  643. feather_tk-0.12.0/lib/ftk/UI/DoubleSlider.h +134 -0
  644. feather_tk-0.12.0/lib/ftk/UI/DrawUtil.cpp +379 -0
  645. feather_tk-0.12.0/lib/ftk/UI/DrawUtil.h +43 -0
  646. feather_tk-0.12.0/lib/ftk/UI/DrivesModel.cpp +109 -0
  647. feather_tk-0.12.0/lib/ftk/UI/DrivesModel.h +43 -0
  648. feather_tk-0.12.0/lib/ftk/UI/Event.cpp +403 -0
  649. feather_tk-0.12.0/lib/ftk/UI/Event.h +413 -0
  650. feather_tk-0.12.0/lib/ftk/UI/Export.h +34 -0
  651. feather_tk-0.12.0/lib/ftk/UI/FileBrowser.cpp +172 -0
  652. feather_tk-0.12.0/lib/ftk/UI/FileBrowser.h +486 -0
  653. feather_tk-0.12.0/lib/ftk/UI/FileBrowserModel.cpp +181 -0
  654. feather_tk-0.12.0/lib/ftk/UI/FileBrowserPanel.cpp +478 -0
  655. feather_tk-0.12.0/lib/ftk/UI/FileBrowserPath.cpp +194 -0
  656. feather_tk-0.12.0/lib/ftk/UI/FileBrowserPrivate.h +39 -0
  657. feather_tk-0.12.0/lib/ftk/UI/FileBrowserSystem.cpp +483 -0
  658. feather_tk-0.12.0/lib/ftk/UI/FileBrowserView.cpp +1172 -0
  659. feather_tk-0.12.0/lib/ftk/UI/FileBrowserWidget.cpp +761 -0
  660. feather_tk-0.12.0/lib/ftk/UI/FileBrowserWidgets.h +266 -0
  661. feather_tk-0.12.0/lib/ftk/UI/FileEdit.cpp +207 -0
  662. feather_tk-0.12.0/lib/ftk/UI/FileEdit.h +66 -0
  663. feather_tk-0.12.0/lib/ftk/UI/FloatEdit.cpp +382 -0
  664. feather_tk-0.12.0/lib/ftk/UI/FloatEdit.h +140 -0
  665. feather_tk-0.12.0/lib/ftk/UI/FloatEditShuttle.cpp +216 -0
  666. feather_tk-0.12.0/lib/ftk/UI/FloatEditShuttle.h +102 -0
  667. feather_tk-0.12.0/lib/ftk/UI/FloatEditSlider.cpp +257 -0
  668. feather_tk-0.12.0/lib/ftk/UI/FloatEditSlider.h +104 -0
  669. feather_tk-0.12.0/lib/ftk/UI/FloatModel.cpp +180 -0
  670. feather_tk-0.12.0/lib/ftk/UI/FloatModel.h +115 -0
  671. feather_tk-0.12.0/lib/ftk/UI/FloatSlider.cpp +510 -0
  672. feather_tk-0.12.0/lib/ftk/UI/FloatSlider.h +134 -0
  673. feather_tk-0.12.0/lib/ftk/UI/FlowLayout.cpp +189 -0
  674. feather_tk-0.12.0/lib/ftk/UI/FlowLayout.h +70 -0
  675. feather_tk-0.12.0/lib/ftk/UI/FormLayout.cpp +211 -0
  676. feather_tk-0.12.0/lib/ftk/UI/FormLayout.h +81 -0
  677. feather_tk-0.12.0/lib/ftk/UI/GraphWidget.cpp +396 -0
  678. feather_tk-0.12.0/lib/ftk/UI/GraphWidget.h +60 -0
  679. feather_tk-0.12.0/lib/ftk/UI/GridLayout.cpp +548 -0
  680. feather_tk-0.12.0/lib/ftk/UI/GridLayout.h +84 -0
  681. feather_tk-0.12.0/lib/ftk/UI/GroupBox.cpp +214 -0
  682. feather_tk-0.12.0/lib/ftk/UI/GroupBox.h +65 -0
  683. feather_tk-0.12.0/lib/ftk/UI/IButton.cpp +339 -0
  684. feather_tk-0.12.0/lib/ftk/UI/IButton.h +148 -0
  685. feather_tk-0.12.0/lib/ftk/UI/IContainer.cpp +61 -0
  686. feather_tk-0.12.0/lib/ftk/UI/IContainer.h +73 -0
  687. feather_tk-0.12.0/lib/ftk/UI/IDialog.cpp +348 -0
  688. feather_tk-0.12.0/lib/ftk/UI/IDialog.h +70 -0
  689. feather_tk-0.12.0/lib/ftk/UI/IMenuPopup.cpp +409 -0
  690. feather_tk-0.12.0/lib/ftk/UI/IMenuPopup.h +87 -0
  691. feather_tk-0.12.0/lib/ftk/UI/IMouseWidget.cpp +123 -0
  692. feather_tk-0.12.0/lib/ftk/UI/IMouseWidget.h +64 -0
  693. feather_tk-0.12.0/lib/ftk/UI/IPopup.cpp +21 -0
  694. feather_tk-0.12.0/lib/ftk/UI/IPopup.h +33 -0
  695. feather_tk-0.12.0/lib/ftk/UI/IWidget.cpp +529 -0
  696. feather_tk-0.12.0/lib/ftk/UI/IWidget.h +418 -0
  697. feather_tk-0.12.0/lib/ftk/UI/IWidgetInline.h +169 -0
  698. feather_tk-0.12.0/lib/ftk/UI/IWidgetPopup.cpp +362 -0
  699. feather_tk-0.12.0/lib/ftk/UI/IWidgetPopup.h +75 -0
  700. feather_tk-0.12.0/lib/ftk/UI/IWindow.cpp +1467 -0
  701. feather_tk-0.12.0/lib/ftk/UI/IWindow.h +372 -0
  702. feather_tk-0.12.0/lib/ftk/UI/Icon.cpp +164 -0
  703. feather_tk-0.12.0/lib/ftk/UI/Icon.h +60 -0
  704. feather_tk-0.12.0/lib/ftk/UI/IconSystem.cpp +355 -0
  705. feather_tk-0.12.0/lib/ftk/UI/IconSystem.h +65 -0
  706. feather_tk-0.12.0/lib/ftk/UI/ImageWidget.cpp +134 -0
  707. feather_tk-0.12.0/lib/ftk/UI/ImageWidget.h +56 -0
  708. feather_tk-0.12.0/lib/ftk/UI/IncButtons.cpp +173 -0
  709. feather_tk-0.12.0/lib/ftk/UI/IncButtons.h +76 -0
  710. feather_tk-0.12.0/lib/ftk/UI/Init.cpp +53 -0
  711. feather_tk-0.12.0/lib/ftk/UI/Init.h +19 -0
  712. feather_tk-0.12.0/lib/ftk/UI/InputDialog.cpp +265 -0
  713. feather_tk-0.12.0/lib/ftk/UI/InputDialog.h +54 -0
  714. feather_tk-0.12.0/lib/ftk/UI/IntEdit.cpp +367 -0
  715. feather_tk-0.12.0/lib/ftk/UI/IntEdit.h +134 -0
  716. feather_tk-0.12.0/lib/ftk/UI/IntEditShuttle.cpp +206 -0
  717. feather_tk-0.12.0/lib/ftk/UI/IntEditShuttle.h +96 -0
  718. feather_tk-0.12.0/lib/ftk/UI/IntEditSlider.cpp +247 -0
  719. feather_tk-0.12.0/lib/ftk/UI/IntEditSlider.h +98 -0
  720. feather_tk-0.12.0/lib/ftk/UI/IntModel.cpp +178 -0
  721. feather_tk-0.12.0/lib/ftk/UI/IntModel.h +115 -0
  722. feather_tk-0.12.0/lib/ftk/UI/IntSlider.cpp +509 -0
  723. feather_tk-0.12.0/lib/ftk/UI/IntSlider.h +134 -0
  724. feather_tk-0.12.0/lib/ftk/UI/ItemButton.cpp +327 -0
  725. feather_tk-0.12.0/lib/ftk/UI/ItemButton.h +104 -0
  726. feather_tk-0.12.0/lib/ftk/UI/ItemButtonList.cpp +267 -0
  727. feather_tk-0.12.0/lib/ftk/UI/ItemButtonList.h +87 -0
  728. feather_tk-0.12.0/lib/ftk/UI/Label.cpp +445 -0
  729. feather_tk-0.12.0/lib/ftk/UI/Label.h +123 -0
  730. feather_tk-0.12.0/lib/ftk/UI/LayoutUtil.cpp +84 -0
  731. feather_tk-0.12.0/lib/ftk/UI/LayoutUtil.h +30 -0
  732. feather_tk-0.12.0/lib/ftk/UI/LevelsSlider.cpp +756 -0
  733. feather_tk-0.12.0/lib/ftk/UI/LevelsSlider.h +223 -0
  734. feather_tk-0.12.0/lib/ftk/UI/LineEdit.cpp +878 -0
  735. feather_tk-0.12.0/lib/ftk/UI/LineEdit.h +165 -0
  736. feather_tk-0.12.0/lib/ftk/UI/LineEditModel.cpp +608 -0
  737. feather_tk-0.12.0/lib/ftk/UI/LineEditModel.h +157 -0
  738. feather_tk-0.12.0/lib/ftk/UI/ListItemButton.cpp +196 -0
  739. feather_tk-0.12.0/lib/ftk/UI/ListItemsWidget.cpp +319 -0
  740. feather_tk-0.12.0/lib/ftk/UI/ListItemsWidget.h +102 -0
  741. feather_tk-0.12.0/lib/ftk/UI/ListItemsWidgetPrivate.h +46 -0
  742. feather_tk-0.12.0/lib/ftk/UI/ListWidget.cpp +131 -0
  743. feather_tk-0.12.0/lib/ftk/UI/ListWidget.h +76 -0
  744. feather_tk-0.12.0/lib/ftk/UI/MDICanvas.cpp +420 -0
  745. feather_tk-0.12.0/lib/ftk/UI/MDICanvas.h +74 -0
  746. feather_tk-0.12.0/lib/ftk/UI/MDIMiniMap.cpp +332 -0
  747. feather_tk-0.12.0/lib/ftk/UI/MDIMiniMap.h +57 -0
  748. feather_tk-0.12.0/lib/ftk/UI/MDIWidget.cpp +437 -0
  749. feather_tk-0.12.0/lib/ftk/UI/MDIWidget.h +111 -0
  750. feather_tk-0.12.0/lib/ftk/UI/MainWindow.cpp +294 -0
  751. feather_tk-0.12.0/lib/ftk/UI/MainWindow.h +54 -0
  752. feather_tk-0.12.0/lib/ftk/UI/Menu.cpp +600 -0
  753. feather_tk-0.12.0/lib/ftk/UI/Menu.h +114 -0
  754. feather_tk-0.12.0/lib/ftk/UI/MenuBar.cpp +389 -0
  755. feather_tk-0.12.0/lib/ftk/UI/MenuBar.h +103 -0
  756. feather_tk-0.12.0/lib/ftk/UI/MenuBarButton.cpp +196 -0
  757. feather_tk-0.12.0/lib/ftk/UI/MenuBarPrivate.h +46 -0
  758. feather_tk-0.12.0/lib/ftk/UI/MenuButton.cpp +412 -0
  759. feather_tk-0.12.0/lib/ftk/UI/MenuPrivate.h +53 -0
  760. feather_tk-0.12.0/lib/ftk/UI/MessageDialog.cpp +193 -0
  761. feather_tk-0.12.0/lib/ftk/UI/MessageDialog.h +46 -0
  762. feather_tk-0.12.0/lib/ftk/UI/OverlayLayout.cpp +110 -0
  763. feather_tk-0.12.0/lib/ftk/UI/OverlayLayout.h +49 -0
  764. feather_tk-0.12.0/lib/ftk/UI/PieChart.cpp +188 -0
  765. feather_tk-0.12.0/lib/ftk/UI/PieChart.h +70 -0
  766. feather_tk-0.12.0/lib/ftk/UI/ProgressDialog.cpp +417 -0
  767. feather_tk-0.12.0/lib/ftk/UI/ProgressDialog.h +72 -0
  768. feather_tk-0.12.0/lib/ftk/UI/PushButton.cpp +286 -0
  769. feather_tk-0.12.0/lib/ftk/UI/PushButton.h +56 -0
  770. feather_tk-0.12.0/lib/ftk/UI/RadioButton.cpp +247 -0
  771. feather_tk-0.12.0/lib/ftk/UI/RadioButton.h +56 -0
  772. feather_tk-0.12.0/lib/ftk/UI/RecentFilesModel.cpp +148 -0
  773. feather_tk-0.12.0/lib/ftk/UI/RecentFilesModel.h +67 -0
  774. feather_tk-0.12.0/lib/ftk/UI/RowLayout.cpp +425 -0
  775. feather_tk-0.12.0/lib/ftk/UI/RowLayout.h +133 -0
  776. feather_tk-0.12.0/lib/ftk/UI/SVGWidget.cpp +188 -0
  777. feather_tk-0.12.0/lib/ftk/UI/SVGWidget.h +62 -0
  778. feather_tk-0.12.0/lib/ftk/UI/ScreenshotTag.h +53 -0
  779. feather_tk-0.12.0/lib/ftk/UI/ScrollArea.cpp +314 -0
  780. feather_tk-0.12.0/lib/ftk/UI/ScrollArea.h +102 -0
  781. feather_tk-0.12.0/lib/ftk/UI/ScrollBar.cpp +333 -0
  782. feather_tk-0.12.0/lib/ftk/UI/ScrollBar.h +70 -0
  783. feather_tk-0.12.0/lib/ftk/UI/ScrollWidget.cpp +625 -0
  784. feather_tk-0.12.0/lib/ftk/UI/ScrollWidget.h +195 -0
  785. feather_tk-0.12.0/lib/ftk/UI/SearchBox.cpp +106 -0
  786. feather_tk-0.12.0/lib/ftk/UI/SearchBox.h +50 -0
  787. feather_tk-0.12.0/lib/ftk/UI/Settings.cpp +409 -0
  788. feather_tk-0.12.0/lib/ftk/UI/Settings.h +93 -0
  789. feather_tk-0.12.0/lib/ftk/UI/SettingsInline.h +31 -0
  790. feather_tk-0.12.0/lib/ftk/UI/ShuttleWidget.cpp +226 -0
  791. feather_tk-0.12.0/lib/ftk/UI/ShuttleWidget.h +52 -0
  792. feather_tk-0.12.0/lib/ftk/UI/SliderPopup.cpp +413 -0
  793. feather_tk-0.12.0/lib/ftk/UI/SliderPopup.h +92 -0
  794. feather_tk-0.12.0/lib/ftk/UI/Spacer.cpp +99 -0
  795. feather_tk-0.12.0/lib/ftk/UI/Spacer.h +49 -0
  796. feather_tk-0.12.0/lib/ftk/UI/Splitter.cpp +387 -0
  797. feather_tk-0.12.0/lib/ftk/UI/Splitter.h +84 -0
  798. feather_tk-0.12.0/lib/ftk/UI/Splitter2D.cpp +420 -0
  799. feather_tk-0.12.0/lib/ftk/UI/Splitter2D.h +84 -0
  800. feather_tk-0.12.0/lib/ftk/UI/StackLayout.cpp +261 -0
  801. feather_tk-0.12.0/lib/ftk/UI/StackLayout.h +94 -0
  802. feather_tk-0.12.0/lib/ftk/UI/Style.cpp +367 -0
  803. feather_tk-0.12.0/lib/ftk/UI/Style.h +190 -0
  804. feather_tk-0.12.0/lib/ftk/UI/SysLogModel.cpp +105 -0
  805. feather_tk-0.12.0/lib/ftk/UI/SysLogModel.h +53 -0
  806. feather_tk-0.12.0/lib/ftk/UI/TabBar.cpp +461 -0
  807. feather_tk-0.12.0/lib/ftk/UI/TabBar.h +97 -0
  808. feather_tk-0.12.0/lib/ftk/UI/TabBarButton.cpp +201 -0
  809. feather_tk-0.12.0/lib/ftk/UI/TabBarPrivate.h +46 -0
  810. feather_tk-0.12.0/lib/ftk/UI/TabWidget.cpp +261 -0
  811. feather_tk-0.12.0/lib/ftk/UI/TabWidget.h +103 -0
  812. feather_tk-0.12.0/lib/ftk/UI/TextEdit.cpp +291 -0
  813. feather_tk-0.12.0/lib/ftk/UI/TextEdit.h +124 -0
  814. feather_tk-0.12.0/lib/ftk/UI/TextEditModel.cpp +976 -0
  815. feather_tk-0.12.0/lib/ftk/UI/TextEditModel.h +207 -0
  816. feather_tk-0.12.0/lib/ftk/UI/TextEditPrivate.h +68 -0
  817. feather_tk-0.12.0/lib/ftk/UI/TextEditWidget.cpp +628 -0
  818. feather_tk-0.12.0/lib/ftk/UI/ToolBar.cpp +105 -0
  819. feather_tk-0.12.0/lib/ftk/UI/ToolBar.h +65 -0
  820. feather_tk-0.12.0/lib/ftk/UI/ToolButton.cpp +535 -0
  821. feather_tk-0.12.0/lib/ftk/UI/ToolButton.h +103 -0
  822. feather_tk-0.12.0/lib/ftk/UI/Tooltip.cpp +221 -0
  823. feather_tk-0.12.0/lib/ftk/UI/Tooltip.h +51 -0
  824. feather_tk-0.12.0/lib/ftk/UI/Util.cpp +16 -0
  825. feather_tk-0.12.0/lib/ftk/UI/Util.h +13 -0
  826. feather_tk-0.12.0/lib/ftk/UI/WidgetDump.cpp +90 -0
  827. feather_tk-0.12.0/lib/ftk/UI/WidgetDump.h +24 -0
  828. feather_tk-0.12.0/lib/ftk/UI/WidgetJson.cpp +533 -0
  829. feather_tk-0.12.0/lib/ftk/UI/WidgetJson.h +81 -0
  830. feather_tk-0.12.0/lib/ftk/UI/WidgetOptions.cpp +38 -0
  831. feather_tk-0.12.0/lib/ftk/UI/WidgetOptions.h +62 -0
  832. feather_tk-0.12.0/lib/ftk/UI/Window.h +68 -0
  833. feather_tk-0.12.0/lib/ftk/UI/WindowGL.cpp +559 -0
  834. feather_tk-0.12.0/lib/ftk/UIPy/Action.cpp +130 -0
  835. feather_tk-0.12.0/lib/ftk/UIPy/ActionGroup.cpp +44 -0
  836. feather_tk-0.12.0/lib/ftk/UIPy/App.cpp +211 -0
  837. feather_tk-0.12.0/lib/ftk/UIPy/Bellows.cpp +49 -0
  838. feather_tk-0.12.0/lib/ftk/UIPy/Bindings.cpp +179 -0
  839. feather_tk-0.12.0/lib/ftk/UIPy/Bindings.h +121 -0
  840. feather_tk-0.12.0/lib/ftk/UIPy/ButtonGroup.cpp +49 -0
  841. feather_tk-0.12.0/lib/ftk/UIPy/CMakeLists.txt +135 -0
  842. feather_tk-0.12.0/lib/ftk/UIPy/CheckBox.cpp +43 -0
  843. feather_tk-0.12.0/lib/ftk/UIPy/ChoiceDialog.cpp +39 -0
  844. feather_tk-0.12.0/lib/ftk/UIPy/ClipboardSystem.cpp +39 -0
  845. feather_tk-0.12.0/lib/ftk/UIPy/ColorDot.cpp +37 -0
  846. feather_tk-0.12.0/lib/ftk/UIPy/ColorPopup.cpp +37 -0
  847. feather_tk-0.12.0/lib/ftk/UIPy/ColorSlider.cpp +90 -0
  848. feather_tk-0.12.0/lib/ftk/UIPy/ColorSwatch.cpp +40 -0
  849. feather_tk-0.12.0/lib/ftk/UIPy/ColorWidget.cpp +37 -0
  850. feather_tk-0.12.0/lib/ftk/UIPy/ComboBox.cpp +82 -0
  851. feather_tk-0.12.0/lib/ftk/UIPy/ConfirmDialog.cpp +40 -0
  852. feather_tk-0.12.0/lib/ftk/UIPy/DiagWidget.cpp +34 -0
  853. feather_tk-0.12.0/lib/ftk/UIPy/DialogSystem.cpp +65 -0
  854. feather_tk-0.12.0/lib/ftk/UIPy/Divider.cpp +34 -0
  855. feather_tk-0.12.0/lib/ftk/UIPy/DocumentModel.cpp +72 -0
  856. feather_tk-0.12.0/lib/ftk/UIPy/DoubleEdit.cpp +55 -0
  857. feather_tk-0.12.0/lib/ftk/UIPy/DoubleEditShuttle.cpp +55 -0
  858. feather_tk-0.12.0/lib/ftk/UIPy/DoubleEditSlider.cpp +56 -0
  859. feather_tk-0.12.0/lib/ftk/UIPy/DoubleModel.cpp +50 -0
  860. feather_tk-0.12.0/lib/ftk/UIPy/DoubleSlider.cpp +55 -0
  861. feather_tk-0.12.0/lib/ftk/UIPy/DrivesModel.cpp +40 -0
  862. feather_tk-0.12.0/lib/ftk/UIPy/Event.cpp +153 -0
  863. feather_tk-0.12.0/lib/ftk/UIPy/FileBrowser.cpp +138 -0
  864. feather_tk-0.12.0/lib/ftk/UIPy/FileBrowserWidgets.cpp +101 -0
  865. feather_tk-0.12.0/lib/ftk/UIPy/FileEdit.cpp +57 -0
  866. feather_tk-0.12.0/lib/ftk/UIPy/FloatEdit.cpp +54 -0
  867. feather_tk-0.12.0/lib/ftk/UIPy/FloatEditShuttle.cpp +55 -0
  868. feather_tk-0.12.0/lib/ftk/UIPy/FloatEditSlider.cpp +55 -0
  869. feather_tk-0.12.0/lib/ftk/UIPy/FloatModel.cpp +50 -0
  870. feather_tk-0.12.0/lib/ftk/UIPy/FloatSlider.cpp +55 -0
  871. feather_tk-0.12.0/lib/ftk/UIPy/FlowLayout.cpp +29 -0
  872. feather_tk-0.12.0/lib/ftk/UIPy/FormLayout.cpp +43 -0
  873. feather_tk-0.12.0/lib/ftk/UIPy/GraphWidget.cpp +43 -0
  874. feather_tk-0.12.0/lib/ftk/UIPy/GridLayout.cpp +49 -0
  875. feather_tk-0.12.0/lib/ftk/UIPy/GroupBox.cpp +46 -0
  876. feather_tk-0.12.0/lib/ftk/UIPy/IButton.cpp +43 -0
  877. feather_tk-0.12.0/lib/ftk/UIPy/IContainer.cpp +71 -0
  878. feather_tk-0.12.0/lib/ftk/UIPy/IDialog.cpp +34 -0
  879. feather_tk-0.12.0/lib/ftk/UIPy/IMenuPopup.cpp +62 -0
  880. feather_tk-0.12.0/lib/ftk/UIPy/IMouseWidget.cpp +93 -0
  881. feather_tk-0.12.0/lib/ftk/UIPy/IPopup.cpp +31 -0
  882. feather_tk-0.12.0/lib/ftk/UIPy/IWidget.cpp +208 -0
  883. feather_tk-0.12.0/lib/ftk/UIPy/IWidgetPopup.cpp +41 -0
  884. feather_tk-0.12.0/lib/ftk/UIPy/IWindow.cpp +119 -0
  885. feather_tk-0.12.0/lib/ftk/UIPy/Icon.cpp +45 -0
  886. feather_tk-0.12.0/lib/ftk/UIPy/IconSystem.cpp +43 -0
  887. feather_tk-0.12.0/lib/ftk/UIPy/ImageWidget.cpp +31 -0
  888. feather_tk-0.12.0/lib/ftk/UIPy/IncButtons.cpp +36 -0
  889. feather_tk-0.12.0/lib/ftk/UIPy/InputDialog.cpp +41 -0
  890. feather_tk-0.12.0/lib/ftk/UIPy/IntEdit.cpp +53 -0
  891. feather_tk-0.12.0/lib/ftk/UIPy/IntEditShuttle.cpp +54 -0
  892. feather_tk-0.12.0/lib/ftk/UIPy/IntEditSlider.cpp +54 -0
  893. feather_tk-0.12.0/lib/ftk/UIPy/IntModel.cpp +50 -0
  894. feather_tk-0.12.0/lib/ftk/UIPy/IntSlider.cpp +55 -0
  895. feather_tk-0.12.0/lib/ftk/UIPy/ItemButton.cpp +60 -0
  896. feather_tk-0.12.0/lib/ftk/UIPy/Label.cpp +60 -0
  897. feather_tk-0.12.0/lib/ftk/UIPy/LevelsSlider.cpp +83 -0
  898. feather_tk-0.12.0/lib/ftk/UIPy/LineEdit.cpp +61 -0
  899. feather_tk-0.12.0/lib/ftk/UIPy/LineEditModel.cpp +67 -0
  900. feather_tk-0.12.0/lib/ftk/UIPy/ListItemsWidget.cpp +67 -0
  901. feather_tk-0.12.0/lib/ftk/UIPy/ListWidget.cpp +52 -0
  902. feather_tk-0.12.0/lib/ftk/UIPy/MDICanvas.cpp +38 -0
  903. feather_tk-0.12.0/lib/ftk/UIPy/MDIMiniMap.cpp +38 -0
  904. feather_tk-0.12.0/lib/ftk/UIPy/MDIWidget.cpp +45 -0
  905. feather_tk-0.12.0/lib/ftk/UIPy/MainWindow.cpp +105 -0
  906. feather_tk-0.12.0/lib/ftk/UIPy/Menu.cpp +116 -0
  907. feather_tk-0.12.0/lib/ftk/UIPy/MenuBar.cpp +92 -0
  908. feather_tk-0.12.0/lib/ftk/UIPy/MessageDialog.cpp +38 -0
  909. feather_tk-0.12.0/lib/ftk/UIPy/OverlayLayout.cpp +30 -0
  910. feather_tk-0.12.0/lib/ftk/UIPy/PieChart.cpp +47 -0
  911. feather_tk-0.12.0/lib/ftk/UIPy/ProgressDialog.cpp +42 -0
  912. feather_tk-0.12.0/lib/ftk/UIPy/PushButton.cpp +44 -0
  913. feather_tk-0.12.0/lib/ftk/UIPy/RadioButton.cpp +43 -0
  914. feather_tk-0.12.0/lib/ftk/UIPy/RecentFilesModel.cpp +67 -0
  915. feather_tk-0.12.0/lib/ftk/UIPy/RowLayout.cpp +70 -0
  916. feather_tk-0.12.0/lib/ftk/UIPy/SVGWidget.cpp +42 -0
  917. feather_tk-0.12.0/lib/ftk/UIPy/ScreenshotTag.cpp +44 -0
  918. feather_tk-0.12.0/lib/ftk/UIPy/ScrollArea.cpp +47 -0
  919. feather_tk-0.12.0/lib/ftk/UIPy/ScrollBar.cpp +36 -0
  920. feather_tk-0.12.0/lib/ftk/UIPy/ScrollWidget.cpp +63 -0
  921. feather_tk-0.12.0/lib/ftk/UIPy/SearchBox.cpp +36 -0
  922. feather_tk-0.12.0/lib/ftk/UIPy/Settings.cpp +94 -0
  923. feather_tk-0.12.0/lib/ftk/UIPy/ShuttleWidget.cpp +32 -0
  924. feather_tk-0.12.0/lib/ftk/UIPy/Spacer.cpp +31 -0
  925. feather_tk-0.12.0/lib/ftk/UIPy/Splitter.cpp +39 -0
  926. feather_tk-0.12.0/lib/ftk/UIPy/Splitter2D.cpp +38 -0
  927. feather_tk-0.12.0/lib/ftk/UIPy/StackLayout.cpp +43 -0
  928. feather_tk-0.12.0/lib/ftk/UIPy/Style.cpp +29 -0
  929. feather_tk-0.12.0/lib/ftk/UIPy/SysLogModel.cpp +38 -0
  930. feather_tk-0.12.0/lib/ftk/UIPy/TabBar.cpp +44 -0
  931. feather_tk-0.12.0/lib/ftk/UIPy/TabWidget.cpp +80 -0
  932. feather_tk-0.12.0/lib/ftk/UIPy/TextEdit.cpp +76 -0
  933. feather_tk-0.12.0/lib/ftk/UIPy/TextEditModel.cpp +95 -0
  934. feather_tk-0.12.0/lib/ftk/UIPy/ToolBar.cpp +73 -0
  935. feather_tk-0.12.0/lib/ftk/UIPy/ToolButton.cpp +54 -0
  936. feather_tk-0.12.0/lib/ftk/UIPy/Tooltip.cpp +29 -0
  937. feather_tk-0.12.0/lib/ftk/UIPy/WidgetOptions.cpp +35 -0
  938. feather_tk-0.12.0/lib/ftk/UIPy/WidgetTrampoline.h +135 -0
  939. feather_tk-0.12.0/lib/ftk/UIPy/Window.cpp +89 -0
  940. feather_tk-0.12.0/lib/ftk/UITest/ActionGroupTest.cpp +190 -0
  941. feather_tk-0.12.0/lib/ftk/UITest/ActionGroupTest.h +32 -0
  942. feather_tk-0.12.0/lib/ftk/UITest/ActionTest.cpp +101 -0
  943. feather_tk-0.12.0/lib/ftk/UITest/ActionTest.h +27 -0
  944. feather_tk-0.12.0/lib/ftk/UITest/AppTest.cpp +72 -0
  945. feather_tk-0.12.0/lib/ftk/UITest/AppTest.h +27 -0
  946. feather_tk-0.12.0/lib/ftk/UITest/BellowsTest.cpp +68 -0
  947. feather_tk-0.12.0/lib/ftk/UITest/BellowsTest.h +27 -0
  948. feather_tk-0.12.0/lib/ftk/UITest/ButtonGroupTest.cpp +131 -0
  949. feather_tk-0.12.0/lib/ftk/UITest/ButtonGroupTest.h +27 -0
  950. feather_tk-0.12.0/lib/ftk/UITest/ButtonTest.cpp +156 -0
  951. feather_tk-0.12.0/lib/ftk/UITest/ButtonTest.h +38 -0
  952. feather_tk-0.12.0/lib/ftk/UITest/CMakeLists.txt +129 -0
  953. feather_tk-0.12.0/lib/ftk/UITest/ColorWidgetTest.cpp +82 -0
  954. feather_tk-0.12.0/lib/ftk/UITest/ColorWidgetTest.h +27 -0
  955. feather_tk-0.12.0/lib/ftk/UITest/ComboBoxTest.cpp +158 -0
  956. feather_tk-0.12.0/lib/ftk/UITest/ComboBoxTest.h +27 -0
  957. feather_tk-0.12.0/lib/ftk/UITest/ConfirmDialogTest.cpp +125 -0
  958. feather_tk-0.12.0/lib/ftk/UITest/ConfirmDialogTest.h +27 -0
  959. feather_tk-0.12.0/lib/ftk/UITest/ContextMenuTest.cpp +304 -0
  960. feather_tk-0.12.0/lib/ftk/UITest/ContextMenuTest.h +26 -0
  961. feather_tk-0.12.0/lib/ftk/UITest/DoubleEditSliderTest.cpp +74 -0
  962. feather_tk-0.12.0/lib/ftk/UITest/DoubleEditSliderTest.h +27 -0
  963. feather_tk-0.12.0/lib/ftk/UITest/DoubleEditTest.cpp +73 -0
  964. feather_tk-0.12.0/lib/ftk/UITest/DoubleEditTest.h +27 -0
  965. feather_tk-0.12.0/lib/ftk/UITest/DoubleModelTest.cpp +106 -0
  966. feather_tk-0.12.0/lib/ftk/UITest/DoubleModelTest.h +27 -0
  967. feather_tk-0.12.0/lib/ftk/UITest/DoubleSliderTest.cpp +66 -0
  968. feather_tk-0.12.0/lib/ftk/UITest/DoubleSliderTest.h +27 -0
  969. feather_tk-0.12.0/lib/ftk/UITest/DragDropTest.cpp +266 -0
  970. feather_tk-0.12.0/lib/ftk/UITest/DragDropTest.h +26 -0
  971. feather_tk-0.12.0/lib/ftk/UITest/DrawUtilTest.cpp +99 -0
  972. feather_tk-0.12.0/lib/ftk/UITest/DrawUtilTest.h +27 -0
  973. feather_tk-0.12.0/lib/ftk/UITest/EventTest.cpp +45 -0
  974. feather_tk-0.12.0/lib/ftk/UITest/EventTest.h +30 -0
  975. feather_tk-0.12.0/lib/ftk/UITest/FileBrowserTest.cpp +767 -0
  976. feather_tk-0.12.0/lib/ftk/UITest/FileBrowserTest.h +59 -0
  977. feather_tk-0.12.0/lib/ftk/UITest/FileEditTest.cpp +67 -0
  978. feather_tk-0.12.0/lib/ftk/UITest/FileEditTest.h +27 -0
  979. feather_tk-0.12.0/lib/ftk/UITest/FloatEditShuttleTest.cpp +123 -0
  980. feather_tk-0.12.0/lib/ftk/UITest/FloatEditShuttleTest.h +26 -0
  981. feather_tk-0.12.0/lib/ftk/UITest/FloatEditSliderTest.cpp +74 -0
  982. feather_tk-0.12.0/lib/ftk/UITest/FloatEditSliderTest.h +27 -0
  983. feather_tk-0.12.0/lib/ftk/UITest/FloatEditTest.cpp +73 -0
  984. feather_tk-0.12.0/lib/ftk/UITest/FloatEditTest.h +27 -0
  985. feather_tk-0.12.0/lib/ftk/UITest/FloatModelTest.cpp +105 -0
  986. feather_tk-0.12.0/lib/ftk/UITest/FloatModelTest.h +27 -0
  987. feather_tk-0.12.0/lib/ftk/UITest/FloatSliderTest.cpp +288 -0
  988. feather_tk-0.12.0/lib/ftk/UITest/FloatSliderTest.h +27 -0
  989. feather_tk-0.12.0/lib/ftk/UITest/FlowLayoutTest.cpp +85 -0
  990. feather_tk-0.12.0/lib/ftk/UITest/FlowLayoutTest.h +26 -0
  991. feather_tk-0.12.0/lib/ftk/UITest/GridLayoutTest.cpp +71 -0
  992. feather_tk-0.12.0/lib/ftk/UITest/GridLayoutTest.h +27 -0
  993. feather_tk-0.12.0/lib/ftk/UITest/GroupBoxTest.cpp +60 -0
  994. feather_tk-0.12.0/lib/ftk/UITest/GroupBoxTest.h +27 -0
  995. feather_tk-0.12.0/lib/ftk/UITest/IWidgetTest.cpp +113 -0
  996. feather_tk-0.12.0/lib/ftk/UITest/IWidgetTest.h +27 -0
  997. feather_tk-0.12.0/lib/ftk/UITest/IconTest.cpp +77 -0
  998. feather_tk-0.12.0/lib/ftk/UITest/IconTest.h +27 -0
  999. feather_tk-0.12.0/lib/ftk/UITest/IntEditSliderTest.cpp +71 -0
  1000. feather_tk-0.12.0/lib/ftk/UITest/IntEditSliderTest.h +27 -0
  1001. feather_tk-0.12.0/lib/ftk/UITest/IntEditTest.cpp +69 -0
  1002. feather_tk-0.12.0/lib/ftk/UITest/IntEditTest.h +27 -0
  1003. feather_tk-0.12.0/lib/ftk/UITest/IntModelTest.cpp +105 -0
  1004. feather_tk-0.12.0/lib/ftk/UITest/IntModelTest.h +27 -0
  1005. feather_tk-0.12.0/lib/ftk/UITest/IntSliderTest.cpp +66 -0
  1006. feather_tk-0.12.0/lib/ftk/UITest/IntSliderTest.h +27 -0
  1007. feather_tk-0.12.0/lib/ftk/UITest/LabelTest.cpp +112 -0
  1008. feather_tk-0.12.0/lib/ftk/UITest/LabelTest.h +27 -0
  1009. feather_tk-0.12.0/lib/ftk/UITest/LayoutUtilTest.cpp +40 -0
  1010. feather_tk-0.12.0/lib/ftk/UITest/LayoutUtilTest.h +27 -0
  1011. feather_tk-0.12.0/lib/ftk/UITest/LineEditModelTest.cpp +56 -0
  1012. feather_tk-0.12.0/lib/ftk/UITest/LineEditModelTest.h +27 -0
  1013. feather_tk-0.12.0/lib/ftk/UITest/LineEditTest.cpp +218 -0
  1014. feather_tk-0.12.0/lib/ftk/UITest/LineEditTest.h +27 -0
  1015. feather_tk-0.12.0/lib/ftk/UITest/ListWidgetTest.cpp +79 -0
  1016. feather_tk-0.12.0/lib/ftk/UITest/ListWidgetTest.h +38 -0
  1017. feather_tk-0.12.0/lib/ftk/UITest/MDIWidgetTest.cpp +88 -0
  1018. feather_tk-0.12.0/lib/ftk/UITest/MDIWidgetTest.h +31 -0
  1019. feather_tk-0.12.0/lib/ftk/UITest/MenuBarTest.cpp +153 -0
  1020. feather_tk-0.12.0/lib/ftk/UITest/MenuBarTest.h +27 -0
  1021. feather_tk-0.12.0/lib/ftk/UITest/MessageDialogTest.cpp +48 -0
  1022. feather_tk-0.12.0/lib/ftk/UITest/MessageDialogTest.h +27 -0
  1023. feather_tk-0.12.0/lib/ftk/UITest/PieChartTest.cpp +71 -0
  1024. feather_tk-0.12.0/lib/ftk/UITest/PieChartTest.h +27 -0
  1025. feather_tk-0.12.0/lib/ftk/UITest/ProgressDialogTest.cpp +47 -0
  1026. feather_tk-0.12.0/lib/ftk/UITest/ProgressDialogTest.h +27 -0
  1027. feather_tk-0.12.0/lib/ftk/UITest/RecentFilesModelTest.cpp +110 -0
  1028. feather_tk-0.12.0/lib/ftk/UITest/RecentFilesModelTest.h +27 -0
  1029. feather_tk-0.12.0/lib/ftk/UITest/RowLayoutTest.cpp +149 -0
  1030. feather_tk-0.12.0/lib/ftk/UITest/RowLayoutTest.h +39 -0
  1031. feather_tk-0.12.0/lib/ftk/UITest/ScrollAreaTest.cpp +39 -0
  1032. feather_tk-0.12.0/lib/ftk/UITest/ScrollAreaTest.h +30 -0
  1033. feather_tk-0.12.0/lib/ftk/UITest/ScrollBarTest.cpp +67 -0
  1034. feather_tk-0.12.0/lib/ftk/UITest/ScrollBarTest.h +39 -0
  1035. feather_tk-0.12.0/lib/ftk/UITest/ScrollWidgetTest.cpp +111 -0
  1036. feather_tk-0.12.0/lib/ftk/UITest/ScrollWidgetTest.h +38 -0
  1037. feather_tk-0.12.0/lib/ftk/UITest/SearchBoxTest.cpp +61 -0
  1038. feather_tk-0.12.0/lib/ftk/UITest/SearchBoxTest.h +27 -0
  1039. feather_tk-0.12.0/lib/ftk/UITest/SettingsTest.cpp +80 -0
  1040. feather_tk-0.12.0/lib/ftk/UITest/SettingsTest.h +26 -0
  1041. feather_tk-0.12.0/lib/ftk/UITest/SplitterTest.cpp +150 -0
  1042. feather_tk-0.12.0/lib/ftk/UITest/SplitterTest.h +42 -0
  1043. feather_tk-0.12.0/lib/ftk/UITest/StackLayoutTest.cpp +83 -0
  1044. feather_tk-0.12.0/lib/ftk/UITest/StackLayoutTest.h +27 -0
  1045. feather_tk-0.12.0/lib/ftk/UITest/StyleTest.cpp +87 -0
  1046. feather_tk-0.12.0/lib/ftk/UITest/StyleTest.h +31 -0
  1047. feather_tk-0.12.0/lib/ftk/UITest/TabWidgetTest.cpp +133 -0
  1048. feather_tk-0.12.0/lib/ftk/UITest/TabWidgetTest.h +31 -0
  1049. feather_tk-0.12.0/lib/ftk/UITest/TextEditModelTest.cpp +756 -0
  1050. feather_tk-0.12.0/lib/ftk/UITest/TextEditModelTest.h +27 -0
  1051. feather_tk-0.12.0/lib/ftk/UITest/WidgetJsonTest.cpp +163 -0
  1052. feather_tk-0.12.0/lib/ftk/UITest/WidgetJsonTest.h +25 -0
  1053. feather_tk-0.12.0/lib/ftk/UITest/WidgetOptionsTest.cpp +42 -0
  1054. feather_tk-0.12.0/lib/ftk/UITest/WidgetOptionsTest.h +30 -0
  1055. feather_tk-0.12.0/lib/ftk/ftkPy/Bindings.cpp +18 -0
  1056. feather_tk-0.12.0/lib/ftk/ftkPy/CMakeLists.txt +50 -0
  1057. feather_tk-0.12.0/lib/ftk/ftkPy/__init__.py +39 -0
  1058. feather_tk-0.12.0/pyproject.toml +87 -0
  1059. feather_tk-0.12.0/sbuild-linux.sh +9 -0
  1060. feather_tk-0.12.0/sbuild-macos.sh +9 -0
  1061. feather_tk-0.12.0/sbuild-win.bat +14 -0
  1062. feather_tk-0.12.0/tests/CMakeLists.txt +22 -0
  1063. feather_tk-0.12.0/tests/CorePyTest/__init__.py +0 -0
  1064. feather_tk-0.12.0/tests/CorePyTest/testBox.py +112 -0
  1065. feather_tk-0.12.0/tests/CorePyTest/testCmdLine.py +40 -0
  1066. feather_tk-0.12.0/tests/CorePyTest/testColor.py +56 -0
  1067. feather_tk-0.12.0/tests/CorePyTest/testCommand.py +236 -0
  1068. feather_tk-0.12.0/tests/CorePyTest/testEnums.py +38 -0
  1069. feather_tk-0.12.0/tests/CorePyTest/testImage.py +85 -0
  1070. feather_tk-0.12.0/tests/CorePyTest/testMath.py +55 -0
  1071. feather_tk-0.12.0/tests/CorePyTest/testMatrix.py +116 -0
  1072. feather_tk-0.12.0/tests/CorePyTest/testMemory.py +34 -0
  1073. feather_tk-0.12.0/tests/CorePyTest/testMesh.py +82 -0
  1074. feather_tk-0.12.0/tests/CorePyTest/testNoise.py +27 -0
  1075. feather_tk-0.12.0/tests/CorePyTest/testObservable.py +47 -0
  1076. feather_tk-0.12.0/tests/CorePyTest/testObservableExtended.py +192 -0
  1077. feather_tk-0.12.0/tests/CorePyTest/testObservableRange.py +50 -0
  1078. feather_tk-0.12.0/tests/CorePyTest/testPath.py +88 -0
  1079. feather_tk-0.12.0/tests/CorePyTest/testRandom.py +64 -0
  1080. feather_tk-0.12.0/tests/CorePyTest/testRange.py +73 -0
  1081. feather_tk-0.12.0/tests/CorePyTest/testRenderOptions.py +63 -0
  1082. feather_tk-0.12.0/tests/CorePyTest/testSize.py +62 -0
  1083. feather_tk-0.12.0/tests/CorePyTest/testString.py +31 -0
  1084. feather_tk-0.12.0/tests/CorePyTest/testTime.py +21 -0
  1085. feather_tk-0.12.0/tests/CorePyTest/testTimer.py +43 -0
  1086. feather_tk-0.12.0/tests/CorePyTest/testVector.py +114 -0
  1087. feather_tk-0.12.0/tests/UIPyTest/__init__.py +0 -0
  1088. feather_tk-0.12.0/tests/UIPyTest/testApp.py +66 -0
  1089. feather_tk-0.12.0/tests/UIPyTest/testModels.py +296 -0
  1090. feather_tk-0.12.0/tests/UIPyTest/testWidgets.py +169 -0
  1091. feather_tk-0.12.0/tests/ftk-test/CMakeLists.txt +27 -0
  1092. feather_tk-0.12.0/tests/ftk-test/ftk-test.cpp +387 -0
  1093. feather_tk-0.12.0/tests/ftk-test/ftk-test.h +37 -0
  1094. feather_tk-0.12.0/tests/run-python-tests.py +31 -0
@@ -0,0 +1,14 @@
1
+ build
2
+ doxygen
3
+ *~
4
+ .git
5
+ .vscode
6
+ __pycache__
7
+ .DS_Store
8
+
9
+ # Personal build settings, read by etc/Config/default.cmake.
10
+ etc/Config/local.cmake
11
+
12
+ # Python wheel builds.
13
+ build-wheel
14
+ dist
@@ -0,0 +1,260 @@
1
+ cmake_minimum_required(VERSION 3.31)
2
+ cmake_policy(SET CMP0091 NEW)
3
+ cmake_policy(SET CMP0114 NEW)
4
+ if(POLICY CMP0135)
5
+ cmake_policy(SET CMP0135 NEW)
6
+ endif()
7
+
8
+ file(READ "lib/ftk/Core/Version.h" VERSION_H)
9
+ string(REGEX MATCH "VERSION_MAJOR ([0-9]*)" _ ${VERSION_H})
10
+ set(ftk_VERSION_MAJOR ${CMAKE_MATCH_1})
11
+ string(REGEX MATCH "VERSION_MINOR ([0-9]*)" _ ${VERSION_H})
12
+ set(ftk_VERSION_MINOR ${CMAKE_MATCH_1})
13
+ string(REGEX MATCH "VERSION_PATCH ([0-9]*)" _ ${VERSION_H})
14
+ set(ftk_VERSION_PATCH ${CMAKE_MATCH_1})
15
+ string(REGEX MATCH "VERSION_DEV \"([0-9a-z.-]*)\"" _ ${VERSION_H})
16
+ set(ftk_VERSION_DEV ${CMAKE_MATCH_1})
17
+ # Composed here rather than read: the header builds it from the macros
18
+ # above, so there is no literal in the file to match. Keep this in step
19
+ # with the way the header spells it.
20
+ set(ftk_VERSION_FULL
21
+ "${ftk_VERSION_MAJOR}.${ftk_VERSION_MINOR}.${ftk_VERSION_PATCH}${ftk_VERSION_DEV}")
22
+
23
+ project(
24
+ feather-tk
25
+ VERSION ${ftk_VERSION_MAJOR}.${ftk_VERSION_MINOR}.${ftk_VERSION_PATCH}
26
+ LANGUAGES CXX C)
27
+
28
+ # A Python wheel build: scikit-build-core sets SKBUILD. The wheel settings
29
+ # are read before the options below, the way "cmake -C" would read them, so
30
+ # they win; the dependencies are built here too, since pip runs one CMake
31
+ # project and nothing before it.
32
+ if(SKBUILD)
33
+ include(etc/Config/wheel.cmake)
34
+ include(etc/Python/ftkWheelDeps.cmake)
35
+ endif()
36
+
37
+ #-------------------------------------------------------------------------------
38
+ # Options
39
+
40
+ set(ftk_API "GL_4_1" CACHE STRING "Graphics API (GL_4_1, GL_4_1_Debug, GLES_3)")
41
+ # The build runs ftk-resource to embed the resources, so a cross build --
42
+ # Emscripten, say -- cannot use the one it is compiling. Point this at a
43
+ # native build's executable instead.
44
+ set(ftk_RESOURCE "" CACHE FILEPATH "A native ftk-resource executable, for cross-compiling")
45
+ if(ftk_RESOURCE)
46
+ set(ftk_RESOURCE_COMMAND ${ftk_RESOURCE})
47
+ else()
48
+ set(ftk_RESOURCE_COMMAND ftk-resource)
49
+ endif()
50
+ # The pan-CJK font is 16MB, most of the size of a web build, and the
51
+ # web build cannot compose CJK input anyway.
52
+ set(ftk_CJK_DEFAULT ON)
53
+ if(EMSCRIPTEN)
54
+ set(ftk_CJK_DEFAULT OFF)
55
+ endif()
56
+ set(ftk_CJK ${ftk_CJK_DEFAULT} CACHE BOOL "Bundle the pan-CJK fallback font")
57
+ # The web build stays on SDL2: Emscripten supplies its own SDL2 port,
58
+ # and the Emscripten code paths were written against it. Everywhere
59
+ # else SDL3 is the default.
60
+ if(EMSCRIPTEN)
61
+ set(ftk_SDL2 ON CACHE BOOL "Enable support for SDL2")
62
+ set(ftk_SDL3 OFF CACHE BOOL "Enable support for SDL3")
63
+ else()
64
+ set(ftk_SDL2 OFF CACHE BOOL "Enable support for SDL2")
65
+ set(ftk_SDL3 ON CACHE BOOL "Enable support for SDL3")
66
+ endif()
67
+ set(ftk_nfd_DEFAULT OFF)
68
+ if(WIN32 OR APPLE)
69
+ set(ftk_nfd_DEFAULT ON)
70
+ endif()
71
+ set(ftk_nfd ${ftk_nfd_DEFAULT} CACHE BOOL "Enable support for native file dialogs")
72
+ set(ftk_PYTHON OFF CACHE BOOL "Enable support for Python")
73
+ # One module for every Python from 3.12 on, rather than one per version.
74
+ set(ftk_PYTHON_STABLE_ABI ON CACHE BOOL "Build the Python module against the stable ABI")
75
+ # Where the feather_tk package goes, relative to the install prefix. The
76
+ # default keeps "PYTHONPATH=<prefix>/lib" working; a wheel puts the
77
+ # package at its root instead.
78
+ set(ftk_PYTHON_INSTALL_DIR "lib/feather_tk" CACHE STRING "Python package install directory")
79
+ set(ftk_TESTS ON CACHE BOOL "Enable tests")
80
+ set(ftk_TESTS_NO_GL OFF CACHE BOOL "Run only the tests that do not need OpenGL")
81
+ set(ftk_EXAMPLES ON CACHE BOOL "Enable examples")
82
+ if(APPLE)
83
+ set(ftk_IGNORE_PREFIX_PATH_DEFAULT /opt/homebrew)
84
+ endif()
85
+ set(ftk_IGNORE_PREFIX_PATH ${ftk_IGNORE_PREFIX_PATH_DEFAULT} CACHE STRING "Ignore the given prefix path")
86
+ set(ftk_GCOV OFF CACHE BOOL "Enable gcov code coverage")
87
+ set(ftk_GPROF OFF CACHE BOOL "Enable gprof code profiling")
88
+ set(ftk_SANITIZE "" CACHE STRING "Enable sanitizers (comma-separated, e.g. address,undefined)")
89
+
90
+ #-------------------------------------------------------------------------------
91
+ # Internal configuration
92
+
93
+ list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/Modules)
94
+
95
+ if(NOT CMAKE_CXX_STANDARD)
96
+ set(CMAKE_CXX_STANDARD 20)
97
+ endif()
98
+
99
+ if(NOT BUILD_SHARED_LIBS)
100
+ set(BUILD_SHARED_LIBS OFF)
101
+ endif()
102
+
103
+ if(NOT CMAKE_POSITION_INDEPENDENT_CODE)
104
+ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
105
+ endif()
106
+
107
+ if(ftk_IGNORE_PREFIX_PATH)
108
+ set(CMAKE_IGNORE_PREFIX_PATH ${ftk_IGNORE_PREFIX_PATH})
109
+ endif()
110
+
111
+ if(MSVC)
112
+ set(CMAKE_MSVC_RUNTIME_LIBRARY MultiThreaded$<$<CONFIG:Debug>:Debug>DLL)
113
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP")
114
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /MP")
115
+ endif()
116
+
117
+ if(APPLE)
118
+ set(CMAKE_FIND_FRAMEWORK LAST)
119
+ endif()
120
+
121
+ if(WIN32)
122
+ elseif(APPLE)
123
+ # @loader_path rather than @executable_path, so that the libraries have
124
+ # an rpath of their own as well as the executables: the loading chain's
125
+ # rpaths usually cover a library, but not one loaded by itself, and the
126
+ # wheel repair tool checks each library that way.
127
+ set(CMAKE_INSTALL_RPATH "@loader_path/../lib")
128
+ # The freshly built libraries have to come before the installed
129
+ # copies, or a binary run from the build tree quietly loads the
130
+ # stale install -- so they are gathered into one directory that
131
+ # leads the search path. The install prefix entry cannot simply be
132
+ # dropped: CMake adds it back for the prebuilt dependencies, and
133
+ # after the build tree's own directories only because they are
134
+ # listed here first.
135
+ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
136
+ set(CMAKE_BUILD_RPATH
137
+ "${CMAKE_BINARY_DIR}/lib"
138
+ "${CMAKE_INSTALL_PREFIX}/lib")
139
+ else()
140
+ set(CMAKE_INSTALL_RPATH "$ORIGIN/../lib")
141
+ endif()
142
+
143
+ if(ftk_TESTS)
144
+ set(CTEST_OUTPUT_ON_FAILURE ON)
145
+ enable_testing()
146
+ endif()
147
+
148
+ if(ftk_GCOV)
149
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage -fprofile-update=atomic")# -fkeep-inline-functions")
150
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --coverage -fprofile-update=atomic")# -fkeep-inline-functions")
151
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage -fprofile-update=atomic")
152
+ endif()
153
+ if(ftk_GPROF)
154
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pg")
155
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pg")
156
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pg")
157
+ endif()
158
+ if(ftk_SANITIZE)
159
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=${ftk_SANITIZE} -fno-omit-frame-pointer")
160
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=${ftk_SANITIZE} -fno-omit-frame-pointer")
161
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=${ftk_SANITIZE}")
162
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fsanitize=${ftk_SANITIZE}")
163
+ endif()
164
+
165
+ set_property(GLOBAL PROPERTY USE_FOLDERS ON)
166
+
167
+ #-------------------------------------------------------------------------------
168
+ # Dependencies
169
+
170
+ find_package(Threads REQUIRED)
171
+ find_package(nlohmann_json REQUIRED)
172
+ find_package(ZLIB REQUIRED)
173
+ find_package(PNG REQUIRED)
174
+ find_package(Freetype REQUIRED)
175
+ find_package(lunasvg REQUIRED)
176
+
177
+ if ("${ftk_API}" STREQUAL "GL_4_1" OR
178
+ "${ftk_API}" STREQUAL "GL_4_1_Debug" OR
179
+ "${ftk_API}" STREQUAL "GLES_3")
180
+ set(ftk_GLAD_DIR ${PROJECT_SOURCE_DIR}/deps/glad_${ftk_API})
181
+ add_subdirectory(deps/glad_${ftk_API})
182
+ if(EMSCRIPTEN)
183
+ # SDL and GL come from Emscripten itself: the SDL port supplies the
184
+ # headers and the implementation, and the GL calls land on WebGL.
185
+ # The compile option is what adds the port's include path, so it is
186
+ # global rather than a link detail.
187
+ # Exceptions are part of how this code base reports errors, and
188
+ # Emscripten turns them off unless asked: without this the first
189
+ # throw aborts the program.
190
+ add_compile_options("-sUSE_SDL=2" "-fwasm-exceptions")
191
+ add_link_options(
192
+ "-sUSE_SDL=2"
193
+ "-fwasm-exceptions"
194
+ "-sSUPPORT_LONGJMP=wasm"
195
+ "-sFULL_ES3=1"
196
+ "-sMIN_WEBGL_VERSION=2"
197
+ "-sMAX_WEBGL_VERSION=2"
198
+ "-sALLOW_MEMORY_GROWTH=1")
199
+ else()
200
+ find_package(OpenGL REQUIRED)
201
+ if(ftk_SDL2)
202
+ find_package(SDL2 REQUIRED)
203
+ elseif(ftk_SDL3)
204
+ find_package(SDL3 REQUIRED)
205
+ endif()
206
+ endif()
207
+ endif()
208
+
209
+ if(ftk_nfd)
210
+ find_package(nfd)
211
+ endif()
212
+
213
+ if(ftk_PYTHON)
214
+ # Development.Module rather than Development: an extension module does not
215
+ # link libpython, which the manylinux images do not have and which a
216
+ # macOS wheel would otherwise carry with it. The interpreter that loads
217
+ # the module supplies the symbols.
218
+ set(ftk_PYTHON_COMPONENTS Interpreter Development.Module)
219
+ set(ftk_PYTHON_VERSION 3.10)
220
+ if(ftk_PYTHON_STABLE_ABI)
221
+ # nanobind supports the stable ABI from Python 3.12.
222
+ list(APPEND ftk_PYTHON_COMPONENTS Development.SABIModule)
223
+ set(ftk_PYTHON_VERSION 3.12)
224
+ endif()
225
+ find_package(Python ${ftk_PYTHON_VERSION} REQUIRED COMPONENTS ${ftk_PYTHON_COMPONENTS})
226
+ find_package(nanobind REQUIRED CONFIG)
227
+ endif()
228
+
229
+ #-------------------------------------------------------------------------------
230
+ # Subdirectories
231
+
232
+ include(cmake/ftkEmbedText.cmake)
233
+ include(cmake/ftkIconResources.cmake)
234
+
235
+ add_subdirectory(bin/ftk-resource)
236
+ add_subdirectory(lib/ftk)
237
+ if(ftk_TESTS)
238
+ add_subdirectory(tests)
239
+ endif()
240
+ if(ftk_EXAMPLES)
241
+ add_subdirectory(examples)
242
+ endif()
243
+ add_subdirectory(etc/Legal)
244
+
245
+ include(CMakePackageConfigHelpers)
246
+ set(INCLUDE_INSTALL_DIR include)
247
+ configure_package_config_file(
248
+ ftkConfig.cmake.in
249
+ ${CMAKE_CURRENT_BINARY_DIR}/ftkConfig.cmake
250
+ INSTALL_DESTINATION lib/cmake/ftk
251
+ PATH_VARS INCLUDE_INSTALL_DIR)
252
+ install(
253
+ FILES
254
+ ${CMAKE_CURRENT_BINARY_DIR}/ftkConfig.cmake
255
+ cmake/ftkEmbedText.cmake
256
+ cmake/ftkIconResources.cmake
257
+ cmake/ftkIconResources.h.in
258
+ cmake/ftkIconResources.cpp.in
259
+ DESTINATION lib/cmake/ftk
260
+ COMPONENT dev)