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.
- feather_tk-0.12.0/.gitignore +14 -0
- feather_tk-0.12.0/CMakeLists.txt +260 -0
- feather_tk-0.12.0/Doxyfile +2701 -0
- feather_tk-0.12.0/LICENSE.txt +26 -0
- feather_tk-0.12.0/PKG-INFO +420 -0
- feather_tk-0.12.0/README.md +386 -0
- feather_tk-0.12.0/bin/ftk-resource/App.cpp +240 -0
- feather_tk-0.12.0/bin/ftk-resource/App.h +33 -0
- feather_tk-0.12.0/bin/ftk-resource/CMakeLists.txt +31 -0
- feather_tk-0.12.0/bin/ftk-resource/main.cpp +26 -0
- feather_tk-0.12.0/cmake/Modules/Findnfd.cmake +61 -0
- feather_tk-0.12.0/cmake/ftkEmbedText.cmake +28 -0
- feather_tk-0.12.0/cmake/ftkIconResources.cmake +64 -0
- feather_tk-0.12.0/cmake/ftkIconResources.cpp.in +19 -0
- feather_tk-0.12.0/cmake/ftkIconResources.h.in +17 -0
- feather_tk-0.12.0/deps/glad_GLES_3/CMakeLists.txt +28 -0
- feather_tk-0.12.0/deps/glad_GLES_3/ftk/KHR/khrplatform.h +311 -0
- feather_tk-0.12.0/deps/glad_GLES_3/ftk/glad/glad.h +1515 -0
- feather_tk-0.12.0/deps/glad_GLES_3/src/glad.c +690 -0
- feather_tk-0.12.0/deps/glad_GL_4_1/CMakeLists.txt +28 -0
- feather_tk-0.12.0/deps/glad_GL_4_1/ftk/KHR/khrplatform.h +311 -0
- feather_tk-0.12.0/deps/glad_GL_4_1/ftk/glad/gl.h +2661 -0
- feather_tk-0.12.0/deps/glad_GL_4_1/src/gl.c +1410 -0
- feather_tk-0.12.0/deps/glad_GL_4_1_Debug/CMakeLists.txt +28 -0
- feather_tk-0.12.0/deps/glad_GL_4_1_Debug/ftk/KHR/khrplatform.h +311 -0
- feather_tk-0.12.0/deps/glad_GL_4_1_Debug/ftk/glad/gl.h +3231 -0
- feather_tk-0.12.0/deps/glad_GL_4_1_Debug/src/gl.c +5914 -0
- feather_tk-0.12.0/etc/Config/ci-linux-gles3.cmake +6 -0
- feather_tk-0.12.0/etc/Config/ci-linux-python.cmake +11 -0
- feather_tk-0.12.0/etc/Config/ci-linux-sdl2.cmake +5 -0
- feather_tk-0.12.0/etc/Config/ci-linux.cmake +6 -0
- feather_tk-0.12.0/etc/Config/ci-macos-python.cmake +11 -0
- feather_tk-0.12.0/etc/Config/ci-windows-python.cmake +11 -0
- feather_tk-0.12.0/etc/Config/ci.cmake +20 -0
- feather_tk-0.12.0/etc/Config/default.cmake +71 -0
- feather_tk-0.12.0/etc/Config/wheel.cmake +24 -0
- feather_tk-0.12.0/etc/Fonts/NotoMono-Regular.ttf +0 -0
- feather_tk-0.12.0/etc/Fonts/NotoSans-Bold.ttf +0 -0
- feather_tk-0.12.0/etc/Fonts/NotoSans-Regular.ttf +0 -0
- feather_tk-0.12.0/etc/Fonts/NotoSansCJK-Regular.otf +0 -0
- feather_tk-0.12.0/etc/Fonts/NotoSansMono-Regular.ttf +0 -0
- feather_tk-0.12.0/etc/Fonts/NotoSansSymbols2-Regular.ttf +0 -0
- feather_tk-0.12.0/etc/Icons/Add.svg +81 -0
- feather_tk-0.12.0/etc/Icons/AddSmall.svg +81 -0
- feather_tk-0.12.0/etc/Icons/ArrowDown.svg +80 -0
- feather_tk-0.12.0/etc/Icons/ArrowLeft.svg +80 -0
- feather_tk-0.12.0/etc/Icons/ArrowRight.svg +80 -0
- feather_tk-0.12.0/etc/Icons/ArrowUp.svg +80 -0
- feather_tk-0.12.0/etc/Icons/Audio.svg +80 -0
- feather_tk-0.12.0/etc/Icons/BellowsClosed.svg +82 -0
- feather_tk-0.12.0/etc/Icons/BellowsOpen.svg +85 -0
- feather_tk-0.12.0/etc/Icons/Clear.svg +76 -0
- feather_tk-0.12.0/etc/Icons/ClearSmall.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Close.svg +81 -0
- feather_tk-0.12.0/etc/Icons/CloseSmall.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Copy.svg +85 -0
- feather_tk-0.12.0/etc/Icons/Cut.svg +85 -0
- feather_tk-0.12.0/etc/Icons/Decrement.svg +78 -0
- feather_tk-0.12.0/etc/Icons/Directory.svg +80 -0
- feather_tk-0.12.0/etc/Icons/DirectoryBack.svg +80 -0
- feather_tk-0.12.0/etc/Icons/DirectoryForward.svg +80 -0
- feather_tk-0.12.0/etc/Icons/DirectoryUp.svg +80 -0
- feather_tk-0.12.0/etc/Icons/Edit.svg +75 -0
- feather_tk-0.12.0/etc/Icons/Empty.svg +75 -0
- feather_tk-0.12.0/etc/Icons/File.svg +113 -0
- feather_tk-0.12.0/etc/Icons/FileBrowser.svg +74 -0
- feather_tk-0.12.0/etc/Icons/FileClose.svg +85 -0
- feather_tk-0.12.0/etc/Icons/FileCloseAll.svg +106 -0
- feather_tk-0.12.0/etc/Icons/FileNew.svg +142 -0
- feather_tk-0.12.0/etc/Icons/FileOpen.svg +85 -0
- feather_tk-0.12.0/etc/Icons/FileReload.svg +88 -0
- feather_tk-0.12.0/etc/Icons/FileSave.svg +85 -0
- feather_tk-0.12.0/etc/Icons/FrameEnd.svg +92 -0
- feather_tk-0.12.0/etc/Icons/FrameInOut.svg +106 -0
- feather_tk-0.12.0/etc/Icons/FrameNext.svg +90 -0
- feather_tk-0.12.0/etc/Icons/FramePrev.svg +90 -0
- feather_tk-0.12.0/etc/Icons/FrameStart.svg +91 -0
- feather_tk-0.12.0/etc/Icons/Increment.svg +78 -0
- feather_tk-0.12.0/etc/Icons/Info.svg +80 -0
- feather_tk-0.12.0/etc/Icons/MenuArrow.svg +81 -0
- feather_tk-0.12.0/etc/Icons/MenuChecked.svg +82 -0
- feather_tk-0.12.0/etc/Icons/Mute.svg +89 -0
- feather_tk-0.12.0/etc/Icons/Next.svg +81 -0
- feather_tk-0.12.0/etc/Icons/PanelBottom.svg +83 -0
- feather_tk-0.12.0/etc/Icons/PanelLeft.svg +83 -0
- feather_tk-0.12.0/etc/Icons/PanelRight.svg +83 -0
- feather_tk-0.12.0/etc/Icons/PanelTop.svg +83 -0
- feather_tk-0.12.0/etc/Icons/Paste.svg +85 -0
- feather_tk-0.12.0/etc/Icons/PlaybackForward.svg +64 -0
- feather_tk-0.12.0/etc/Icons/PlaybackReverse.svg +79 -0
- feather_tk-0.12.0/etc/Icons/PlaybackStop.svg +84 -0
- feather_tk-0.12.0/etc/Icons/Prev.svg +80 -0
- feather_tk-0.12.0/etc/Icons/Redo.svg +85 -0
- feather_tk-0.12.0/etc/Icons/Reload.svg +90 -0
- feather_tk-0.12.0/etc/Icons/Remove.svg +81 -0
- feather_tk-0.12.0/etc/Icons/RemoveSmall.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Reset.svg +63 -0
- feather_tk-0.12.0/etc/Icons/ReverseSort.svg +87 -0
- feather_tk-0.12.0/etc/Icons/Search.svg +86 -0
- feather_tk-0.12.0/etc/Icons/Settings.svg +77 -0
- feather_tk-0.12.0/etc/Icons/Shuttle0.svg +80 -0
- feather_tk-0.12.0/etc/Icons/Shuttle1.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Shuttle2.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Shuttle3.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Shuttle4.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Shuttle5.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Shuttle6.svg +81 -0
- feather_tk-0.12.0/etc/Icons/Shuttle7.svg +81 -0
- feather_tk-0.12.0/etc/Icons/SubMenuArrow.svg +75 -0
- feather_tk-0.12.0/etc/Icons/Time.svg +86 -0
- feather_tk-0.12.0/etc/Icons/TimeEnd.svg +90 -0
- feather_tk-0.12.0/etc/Icons/TimeStart.svg +90 -0
- feather_tk-0.12.0/etc/Icons/Undo.svg +84 -0
- feather_tk-0.12.0/etc/Icons/ViewFrame.svg +97 -0
- feather_tk-0.12.0/etc/Icons/ViewZoomIn.svg +99 -0
- feather_tk-0.12.0/etc/Icons/ViewZoomOut.svg +97 -0
- feather_tk-0.12.0/etc/Icons/ViewZoomReset.svg +97 -0
- feather_tk-0.12.0/etc/Icons/Volume.svg +78 -0
- feather_tk-0.12.0/etc/Icons/WindowFullScreen.svg +89 -0
- feather_tk-0.12.0/etc/Icons/feather_tk_32.png +0 -0
- feather_tk-0.12.0/etc/Icons/feather_tk_32.svg +41 -0
- feather_tk-0.12.0/etc/Icons/feather_tk_512.svg +67 -0
- feather_tk-0.12.0/etc/Images/Charlie.png +0 -0
- feather_tk-0.12.0/etc/Images/TestDrawing.svg +89 -0
- feather_tk-0.12.0/etc/Images/imageview.png +0 -0
- feather_tk-0.12.0/etc/Images/objview.png +0 -0
- feather_tk-0.12.0/etc/Images/textedit.png +0 -0
- feather_tk-0.12.0/etc/Images/widgets.png +0 -0
- feather_tk-0.12.0/etc/Legal/CMakeLists.txt +16 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_CMake.txt +132 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_FreeType.txt +169 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_OFL.txt +93 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_SDL2.txt +18 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_feather-tk.txt +26 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_glad.txt +21 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_libpng.txt +134 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_lunasvg.txt +21 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_nlohmann_json.txt +21 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_plutovg.txt +21 -0
- feather_tk-0.12.0/etc/Legal/LICENSE_zlib.txt +21 -0
- feather_tk-0.12.0/etc/Linux/lcov.sh +12 -0
- feather_tk-0.12.0/etc/Linux/sbuild.sh +38 -0
- feather_tk-0.12.0/etc/Linux/setup-gha.sh +15 -0
- feather_tk-0.12.0/etc/Linux/stats.sh +5 -0
- feather_tk-0.12.0/etc/Objects/Bolt.obj +20856 -0
- feather_tk-0.12.0/etc/Objects/Cube.obj +35 -0
- feather_tk-0.12.0/etc/Objects/Square.obj +16 -0
- feather_tk-0.12.0/etc/Python/ftkWheelDeps.cmake +72 -0
- feather_tk-0.12.0/etc/SuperBuild/CMakeLists.txt +143 -0
- feather_tk-0.12.0/etc/SuperBuild/ZLIB-patch/CMakeLists.txt +221 -0
- feather_tk-0.12.0/etc/SuperBuild/ZLIB-patch/zconf.h.cmakein +541 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildFreetype.cmake +26 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildPNG.cmake +38 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildSDL2.cmake +35 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildSDL3.cmake +57 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/BuildZLIB.cmake +26 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/Buildlunasvg.cmake +17 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/Buildnanobind.cmake +17 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/Buildnfd.cmake +17 -0
- feather_tk-0.12.0/etc/SuperBuild/cmake/Modules/Buildnlohmann_json.cmake +15 -0
- feather_tk-0.12.0/etc/Web/gallery.html +40 -0
- feather_tk-0.12.0/etc/Web/index.html.in +93 -0
- feather_tk-0.12.0/etc/Windows/sbuild.bat +31 -0
- feather_tk-0.12.0/etc/macOS/sbuild.sh +38 -0
- feather_tk-0.12.0/examples/CMakeLists.txt +37 -0
- feather_tk-0.12.0/examples/gfx/App.cpp +51 -0
- feather_tk-0.12.0/examples/gfx/App.h +38 -0
- feather_tk-0.12.0/examples/gfx/CMakeLists.txt +26 -0
- feather_tk-0.12.0/examples/gfx/GOL.cpp +200 -0
- feather_tk-0.12.0/examples/gfx/GOL.h +48 -0
- feather_tk-0.12.0/examples/gfx/MainWindow.cpp +39 -0
- feather_tk-0.12.0/examples/gfx/MainWindow.h +36 -0
- feather_tk-0.12.0/examples/gfx/Noise.cpp +99 -0
- feather_tk-0.12.0/examples/gfx/Noise.h +41 -0
- feather_tk-0.12.0/examples/gfx/main.cpp +23 -0
- feather_tk-0.12.0/examples/imageview/Actions.cpp +351 -0
- feather_tk-0.12.0/examples/imageview/Actions.h +76 -0
- feather_tk-0.12.0/examples/imageview/App.cpp +186 -0
- feather_tk-0.12.0/examples/imageview/App.h +85 -0
- feather_tk-0.12.0/examples/imageview/CMakeLists.txt +42 -0
- feather_tk-0.12.0/examples/imageview/Document.cpp +56 -0
- feather_tk-0.12.0/examples/imageview/Document.h +52 -0
- feather_tk-0.12.0/examples/imageview/DocumentTabs.cpp +138 -0
- feather_tk-0.12.0/examples/imageview/DocumentTabs.h +56 -0
- feather_tk-0.12.0/examples/imageview/ImageView.cpp +163 -0
- feather_tk-0.12.0/examples/imageview/ImageView.h +69 -0
- feather_tk-0.12.0/examples/imageview/MainWindow.cpp +128 -0
- feather_tk-0.12.0/examples/imageview/MainWindow.h +72 -0
- feather_tk-0.12.0/examples/imageview/MenuBar.cpp +116 -0
- feather_tk-0.12.0/examples/imageview/MenuBar.h +57 -0
- feather_tk-0.12.0/examples/imageview/Settings.cpp +57 -0
- feather_tk-0.12.0/examples/imageview/Settings.h +36 -0
- feather_tk-0.12.0/examples/imageview/SettingsModel.cpp +126 -0
- feather_tk-0.12.0/examples/imageview/SettingsModel.h +62 -0
- feather_tk-0.12.0/examples/imageview/SettingsWidget.cpp +135 -0
- feather_tk-0.12.0/examples/imageview/SettingsWidget.h +49 -0
- feather_tk-0.12.0/examples/imageview/StatusBar.cpp +71 -0
- feather_tk-0.12.0/examples/imageview/StatusBar.h +42 -0
- feather_tk-0.12.0/examples/imageview/ToolBar.cpp +96 -0
- feather_tk-0.12.0/examples/imageview/ToolBar.h +49 -0
- feather_tk-0.12.0/examples/imageview/main.cpp +23 -0
- feather_tk-0.12.0/examples/objview/Actions.cpp +379 -0
- feather_tk-0.12.0/examples/objview/Actions.h +76 -0
- feather_tk-0.12.0/examples/objview/App.cpp +186 -0
- feather_tk-0.12.0/examples/objview/App.h +85 -0
- feather_tk-0.12.0/examples/objview/CMakeLists.txt +44 -0
- feather_tk-0.12.0/examples/objview/Document.cpp +69 -0
- feather_tk-0.12.0/examples/objview/Document.h +62 -0
- feather_tk-0.12.0/examples/objview/DocumentTabs.cpp +131 -0
- feather_tk-0.12.0/examples/objview/DocumentTabs.h +55 -0
- feather_tk-0.12.0/examples/objview/HUDWidget.cpp +95 -0
- feather_tk-0.12.0/examples/objview/HUDWidget.h +42 -0
- feather_tk-0.12.0/examples/objview/MainWindow.cpp +124 -0
- feather_tk-0.12.0/examples/objview/MainWindow.h +71 -0
- feather_tk-0.12.0/examples/objview/MenuBar.cpp +133 -0
- feather_tk-0.12.0/examples/objview/MenuBar.h +60 -0
- feather_tk-0.12.0/examples/objview/ObjIO.cpp +71 -0
- feather_tk-0.12.0/examples/objview/ObjIO.h +18 -0
- feather_tk-0.12.0/examples/objview/ObjView.cpp +615 -0
- feather_tk-0.12.0/examples/objview/ObjView.h +104 -0
- feather_tk-0.12.0/examples/objview/Settings.cpp +91 -0
- feather_tk-0.12.0/examples/objview/Settings.h +64 -0
- feather_tk-0.12.0/examples/objview/SettingsModel.cpp +133 -0
- feather_tk-0.12.0/examples/objview/SettingsModel.h +72 -0
- feather_tk-0.12.0/examples/objview/SettingsWidget.cpp +135 -0
- feather_tk-0.12.0/examples/objview/SettingsWidget.h +50 -0
- feather_tk-0.12.0/examples/objview/ToolBar.cpp +207 -0
- feather_tk-0.12.0/examples/objview/ToolBar.h +66 -0
- feather_tk-0.12.0/examples/objview/main.cpp +21 -0
- feather_tk-0.12.0/examples/panel/CMakeLists.txt +19 -0
- feather_tk-0.12.0/examples/panel/panel.cpp +92 -0
- feather_tk-0.12.0/examples/panel/panel.json +26 -0
- feather_tk-0.12.0/examples/preview/CMakeLists.txt +22 -0
- feather_tk-0.12.0/examples/preview/preview.cpp +162 -0
- feather_tk-0.12.0/examples/preview/preview.json +43 -0
- feather_tk-0.12.0/examples/python/CMakeLists.txt +46 -0
- feather_tk-0.12.0/examples/python/bellows.py +72 -0
- feather_tk-0.12.0/examples/python/buttons.py +97 -0
- feather_tk-0.12.0/examples/python/dialogs.py +89 -0
- feather_tk-0.12.0/examples/python/icons.py +43 -0
- feather_tk-0.12.0/examples/python/mdi.py +61 -0
- feather_tk-0.12.0/examples/python/panel.json +26 -0
- feather_tk-0.12.0/examples/python/panel.py +55 -0
- feather_tk-0.12.0/examples/python/simple.py +27 -0
- feather_tk-0.12.0/examples/python/sliders.py +82 -0
- feather_tk-0.12.0/examples/python/tabs.py +37 -0
- feather_tk-0.12.0/examples/python/testing.py +95 -0
- feather_tk-0.12.0/examples/python/textedit.py +793 -0
- feather_tk-0.12.0/examples/simple/CMakeLists.txt +13 -0
- feather_tk-0.12.0/examples/simple/simple.cpp +46 -0
- feather_tk-0.12.0/examples/textedit/Actions.cpp +362 -0
- feather_tk-0.12.0/examples/textedit/Actions.h +69 -0
- feather_tk-0.12.0/examples/textedit/App.cpp +362 -0
- feather_tk-0.12.0/examples/textedit/App.h +88 -0
- feather_tk-0.12.0/examples/textedit/CMakeLists.txt +40 -0
- feather_tk-0.12.0/examples/textedit/Document.cpp +125 -0
- feather_tk-0.12.0/examples/textedit/Document.h +71 -0
- feather_tk-0.12.0/examples/textedit/DocumentTabs.cpp +160 -0
- feather_tk-0.12.0/examples/textedit/DocumentTabs.h +51 -0
- feather_tk-0.12.0/examples/textedit/MainWindow.cpp +115 -0
- feather_tk-0.12.0/examples/textedit/MainWindow.h +62 -0
- feather_tk-0.12.0/examples/textedit/MenuBar.cpp +112 -0
- feather_tk-0.12.0/examples/textedit/MenuBar.h +54 -0
- feather_tk-0.12.0/examples/textedit/Settings.cpp +57 -0
- feather_tk-0.12.0/examples/textedit/Settings.h +36 -0
- feather_tk-0.12.0/examples/textedit/SettingsModel.cpp +149 -0
- feather_tk-0.12.0/examples/textedit/SettingsModel.h +78 -0
- feather_tk-0.12.0/examples/textedit/SettingsWidget.cpp +209 -0
- feather_tk-0.12.0/examples/textedit/SettingsWidget.h +54 -0
- feather_tk-0.12.0/examples/textedit/StatusBar.cpp +92 -0
- feather_tk-0.12.0/examples/textedit/StatusBar.h +51 -0
- feather_tk-0.12.0/examples/textedit/ToolBar.cpp +68 -0
- feather_tk-0.12.0/examples/textedit/ToolBar.h +39 -0
- feather_tk-0.12.0/examples/textedit/main.cpp +23 -0
- feather_tk-0.12.0/examples/widgets/App.cpp +61 -0
- feather_tk-0.12.0/examples/widgets/App.h +40 -0
- feather_tk-0.12.0/examples/widgets/Buttons.cpp +169 -0
- feather_tk-0.12.0/examples/widgets/Buttons.h +39 -0
- feather_tk-0.12.0/examples/widgets/CMakeLists.txt +52 -0
- feather_tk-0.12.0/examples/widgets/Dialogs.cpp +177 -0
- feather_tk-0.12.0/examples/widgets/Dialogs.h +41 -0
- feather_tk-0.12.0/examples/widgets/DragDrop.cpp +347 -0
- feather_tk-0.12.0/examples/widgets/DragDrop.h +121 -0
- feather_tk-0.12.0/examples/widgets/Fonts.cpp +114 -0
- feather_tk-0.12.0/examples/widgets/Fonts.h +43 -0
- feather_tk-0.12.0/examples/widgets/Graphs.cpp +50 -0
- feather_tk-0.12.0/examples/widgets/Graphs.h +40 -0
- feather_tk-0.12.0/examples/widgets/Icons.cpp +69 -0
- feather_tk-0.12.0/examples/widgets/Icons.h +36 -0
- feather_tk-0.12.0/examples/widgets/Images.cpp +125 -0
- feather_tk-0.12.0/examples/widgets/Images.h +36 -0
- feather_tk-0.12.0/examples/widgets/Layouts.cpp +117 -0
- feather_tk-0.12.0/examples/widgets/Layouts.h +36 -0
- feather_tk-0.12.0/examples/widgets/Lists.cpp +106 -0
- feather_tk-0.12.0/examples/widgets/Lists.h +36 -0
- feather_tk-0.12.0/examples/widgets/MDI.cpp +94 -0
- feather_tk-0.12.0/examples/widgets/MDI.h +40 -0
- feather_tk-0.12.0/examples/widgets/MainWindow.cpp +194 -0
- feather_tk-0.12.0/examples/widgets/MainWindow.h +46 -0
- feather_tk-0.12.0/examples/widgets/Offscreen.cpp +215 -0
- feather_tk-0.12.0/examples/widgets/Offscreen.h +44 -0
- feather_tk-0.12.0/examples/widgets/Popups.cpp +97 -0
- feather_tk-0.12.0/examples/widgets/Popups.h +37 -0
- feather_tk-0.12.0/examples/widgets/Sliders.cpp +165 -0
- feather_tk-0.12.0/examples/widgets/Sliders.h +36 -0
- feather_tk-0.12.0/examples/widgets/Splitters.cpp +67 -0
- feather_tk-0.12.0/examples/widgets/Splitters.h +36 -0
- feather_tk-0.12.0/examples/widgets/SysLog.cpp +69 -0
- feather_tk-0.12.0/examples/widgets/SysLog.h +38 -0
- feather_tk-0.12.0/examples/widgets/main.cpp +32 -0
- feather_tk-0.12.0/examples/windows/CMakeLists.txt +13 -0
- feather_tk-0.12.0/examples/windows/windows.cpp +135 -0
- feather_tk-0.12.0/ftkConfig.cmake.in +65 -0
- feather_tk-0.12.0/lib/ftk/CMakeLists.txt +46 -0
- feather_tk-0.12.0/lib/ftk/Core/Assert.cpp +17 -0
- feather_tk-0.12.0/lib/ftk/Core/Assert.h +35 -0
- feather_tk-0.12.0/lib/ftk/Core/Box.cpp +123 -0
- feather_tk-0.12.0/lib/ftk/Core/Box.h +188 -0
- feather_tk-0.12.0/lib/ftk/Core/BoxInline.h +469 -0
- feather_tk-0.12.0/lib/ftk/Core/BoxPack.cpp +179 -0
- feather_tk-0.12.0/lib/ftk/Core/BoxPack.h +87 -0
- feather_tk-0.12.0/lib/ftk/Core/CMakeLists.txt +171 -0
- feather_tk-0.12.0/lib/ftk/Core/CmdLine.cpp +121 -0
- feather_tk-0.12.0/lib/ftk/Core/CmdLine.h +246 -0
- feather_tk-0.12.0/lib/ftk/Core/CmdLineInline.h +354 -0
- feather_tk-0.12.0/lib/ftk/Core/Color.cpp +306 -0
- feather_tk-0.12.0/lib/ftk/Core/Color.h +184 -0
- feather_tk-0.12.0/lib/ftk/Core/ColorInline.h +280 -0
- feather_tk-0.12.0/lib/ftk/Core/Command.cpp +96 -0
- feather_tk-0.12.0/lib/ftk/Core/Command.h +66 -0
- feather_tk-0.12.0/lib/ftk/Core/Context.cpp +116 -0
- feather_tk-0.12.0/lib/ftk/Core/Context.h +82 -0
- feather_tk-0.12.0/lib/ftk/Core/ContextInline.h +23 -0
- feather_tk-0.12.0/lib/ftk/Core/DiagSystem.cpp +251 -0
- feather_tk-0.12.0/lib/ftk/Core/DiagSystem.h +107 -0
- feather_tk-0.12.0/lib/ftk/Core/Error.cpp +11 -0
- feather_tk-0.12.0/lib/ftk/Core/Error.h +28 -0
- feather_tk-0.12.0/lib/ftk/Core/ErrorWin32.cpp +39 -0
- feather_tk-0.12.0/lib/ftk/Core/Export.h +69 -0
- feather_tk-0.12.0/lib/ftk/Core/FileIO.cpp +302 -0
- feather_tk-0.12.0/lib/ftk/Core/FileIO.h +274 -0
- feather_tk-0.12.0/lib/ftk/Core/FileIOInline.h +12 -0
- feather_tk-0.12.0/lib/ftk/Core/FileIOUnix.cpp +570 -0
- feather_tk-0.12.0/lib/ftk/Core/FileIOWin32.cpp +668 -0
- feather_tk-0.12.0/lib/ftk/Core/FileLogSystem.cpp +201 -0
- feather_tk-0.12.0/lib/ftk/Core/FileLogSystem.h +34 -0
- feather_tk-0.12.0/lib/ftk/Core/FontSystem.cpp +682 -0
- feather_tk-0.12.0/lib/ftk/Core/FontSystem.h +198 -0
- feather_tk-0.12.0/lib/ftk/Core/FontSystemInline.h +25 -0
- feather_tk-0.12.0/lib/ftk/Core/Format.cpp +151 -0
- feather_tk-0.12.0/lib/ftk/Core/Format.h +69 -0
- feather_tk-0.12.0/lib/ftk/Core/FormatInline.h +35 -0
- feather_tk-0.12.0/lib/ftk/Core/IApp.cpp +364 -0
- feather_tk-0.12.0/lib/ftk/Core/IApp.h +83 -0
- feather_tk-0.12.0/lib/ftk/Core/IBaseSystem.cpp +28 -0
- feather_tk-0.12.0/lib/ftk/Core/IBaseSystem.h +63 -0
- feather_tk-0.12.0/lib/ftk/Core/IBaseSystemInline.h +15 -0
- feather_tk-0.12.0/lib/ftk/Core/IRender.cpp +97 -0
- feather_tk-0.12.0/lib/ftk/Core/IRender.h +236 -0
- feather_tk-0.12.0/lib/ftk/Core/ISystem.cpp +35 -0
- feather_tk-0.12.0/lib/ftk/Core/ISystem.h +29 -0
- feather_tk-0.12.0/lib/ftk/Core/Image.cpp +304 -0
- feather_tk-0.12.0/lib/ftk/Core/Image.h +272 -0
- feather_tk-0.12.0/lib/ftk/Core/ImageIO.cpp +193 -0
- feather_tk-0.12.0/lib/ftk/Core/ImageIO.h +148 -0
- feather_tk-0.12.0/lib/ftk/Core/ImageInline.h +96 -0
- feather_tk-0.12.0/lib/ftk/Core/LRUCache.h +76 -0
- feather_tk-0.12.0/lib/ftk/Core/LRUCacheInline.h +155 -0
- feather_tk-0.12.0/lib/ftk/Core/LogSystem.cpp +118 -0
- feather_tk-0.12.0/lib/ftk/Core/LogSystem.h +91 -0
- feather_tk-0.12.0/lib/ftk/Core/Math.cpp +37 -0
- feather_tk-0.12.0/lib/ftk/Core/Math.h +54 -0
- feather_tk-0.12.0/lib/ftk/Core/MathInline.h +41 -0
- feather_tk-0.12.0/lib/ftk/Core/Matrix.cpp +44 -0
- feather_tk-0.12.0/lib/ftk/Core/Matrix.h +181 -0
- feather_tk-0.12.0/lib/ftk/Core/MatrixInline.h +605 -0
- feather_tk-0.12.0/lib/ftk/Core/Memory.cpp +169 -0
- feather_tk-0.12.0/lib/ftk/Core/Memory.h +78 -0
- feather_tk-0.12.0/lib/ftk/Core/MemoryInline.h +43 -0
- feather_tk-0.12.0/lib/ftk/Core/Mesh.cpp +214 -0
- feather_tk-0.12.0/lib/ftk/Core/Mesh.h +122 -0
- feather_tk-0.12.0/lib/ftk/Core/MeshInline.h +60 -0
- feather_tk-0.12.0/lib/ftk/Core/Noise.cpp +86 -0
- feather_tk-0.12.0/lib/ftk/Core/Noise.h +31 -0
- feather_tk-0.12.0/lib/ftk/Core/OS.cpp +31 -0
- feather_tk-0.12.0/lib/ftk/Core/OS.h +79 -0
- feather_tk-0.12.0/lib/ftk/Core/OSUnix.cpp +240 -0
- feather_tk-0.12.0/lib/ftk/Core/OSWin32.cpp +240 -0
- feather_tk-0.12.0/lib/ftk/Core/Observable.h +116 -0
- feather_tk-0.12.0/lib/ftk/Core/ObservableInline.h +156 -0
- feather_tk-0.12.0/lib/ftk/Core/ObservableList.h +162 -0
- feather_tk-0.12.0/lib/ftk/Core/ObservableListInline.h +270 -0
- feather_tk-0.12.0/lib/ftk/Core/ObservableMap.h +135 -0
- feather_tk-0.12.0/lib/ftk/Core/ObservableMapInline.h +223 -0
- feather_tk-0.12.0/lib/ftk/Core/PNG.cpp +80 -0
- feather_tk-0.12.0/lib/ftk/Core/PNG.h +78 -0
- feather_tk-0.12.0/lib/ftk/Core/PNGPrivate.h +26 -0
- feather_tk-0.12.0/lib/ftk/Core/PNGRead.cpp +308 -0
- feather_tk-0.12.0/lib/ftk/Core/PNGWrite.cpp +189 -0
- feather_tk-0.12.0/lib/ftk/Core/Path.cpp +1090 -0
- feather_tk-0.12.0/lib/ftk/Core/Path.h +431 -0
- feather_tk-0.12.0/lib/ftk/Core/PathInline.h +181 -0
- feather_tk-0.12.0/lib/ftk/Core/PathMacOS.mm +40 -0
- feather_tk-0.12.0/lib/ftk/Core/PathMacOSPrivate.h +11 -0
- feather_tk-0.12.0/lib/ftk/Core/PathUnix.cpp +107 -0
- feather_tk-0.12.0/lib/ftk/Core/PathWin32.cpp +102 -0
- feather_tk-0.12.0/lib/ftk/Core/Random.cpp +81 -0
- feather_tk-0.12.0/lib/ftk/Core/Random.h +52 -0
- feather_tk-0.12.0/lib/ftk/Core/RandomInline.h +11 -0
- feather_tk-0.12.0/lib/ftk/Core/Range.cpp +57 -0
- feather_tk-0.12.0/lib/ftk/Core/Range.h +84 -0
- feather_tk-0.12.0/lib/ftk/Core/RangeInline.h +116 -0
- feather_tk-0.12.0/lib/ftk/Core/RenderOptions.cpp +70 -0
- feather_tk-0.12.0/lib/ftk/Core/RenderOptions.h +145 -0
- feather_tk-0.12.0/lib/ftk/Core/RenderOptionsInline.h +7 -0
- feather_tk-0.12.0/lib/ftk/Core/RenderUtil.cpp +114 -0
- feather_tk-0.12.0/lib/ftk/Core/RenderUtil.h +82 -0
- feather_tk-0.12.0/lib/ftk/Core/Size.cpp +106 -0
- feather_tk-0.12.0/lib/ftk/Core/Size.h +138 -0
- feather_tk-0.12.0/lib/ftk/Core/SizeInline.h +245 -0
- feather_tk-0.12.0/lib/ftk/Core/String.cpp +542 -0
- feather_tk-0.12.0/lib/ftk/Core/String.h +150 -0
- feather_tk-0.12.0/lib/ftk/Core/Time.cpp +54 -0
- feather_tk-0.12.0/lib/ftk/Core/Time.h +30 -0
- feather_tk-0.12.0/lib/ftk/Core/TimeUnix.cpp +14 -0
- feather_tk-0.12.0/lib/ftk/Core/TimeWin32.cpp +26 -0
- feather_tk-0.12.0/lib/ftk/Core/Timer.cpp +192 -0
- feather_tk-0.12.0/lib/ftk/Core/Timer.h +88 -0
- feather_tk-0.12.0/lib/ftk/Core/Util.h +117 -0
- feather_tk-0.12.0/lib/ftk/Core/Vector.cpp +141 -0
- feather_tk-0.12.0/lib/ftk/Core/Vector.h +182 -0
- feather_tk-0.12.0/lib/ftk/Core/VectorInline.h +364 -0
- feather_tk-0.12.0/lib/ftk/Core/Version.h +16 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Bindings.cpp +55 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Bindings.h +129 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Box.cpp +173 -0
- feather_tk-0.12.0/lib/ftk/CorePy/CMakeLists.txt +68 -0
- feather_tk-0.12.0/lib/ftk/CorePy/CmdLine.cpp +61 -0
- feather_tk-0.12.0/lib/ftk/CorePy/CmdLineInline.h +66 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Color.cpp +107 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Command.cpp +61 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Context.cpp +35 -0
- feather_tk-0.12.0/lib/ftk/CorePy/DiagSystem.cpp +67 -0
- feather_tk-0.12.0/lib/ftk/CorePy/FileLogSystem.cpp +35 -0
- feather_tk-0.12.0/lib/ftk/CorePy/FontSystem.cpp +95 -0
- feather_tk-0.12.0/lib/ftk/CorePy/IApp.cpp +36 -0
- feather_tk-0.12.0/lib/ftk/CorePy/IRender.cpp +73 -0
- feather_tk-0.12.0/lib/ftk/CorePy/ISystem.cpp +37 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Image.cpp +126 -0
- feather_tk-0.12.0/lib/ftk/CorePy/LogSystem.cpp +54 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Math.cpp +40 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Matrix.cpp +94 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Memory.cpp +38 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Mesh.cpp +88 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Noise.cpp +25 -0
- feather_tk-0.12.0/lib/ftk/CorePy/OS.cpp +34 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Observable.cpp +45 -0
- feather_tk-0.12.0/lib/ftk/CorePy/ObservableInline.h +50 -0
- feather_tk-0.12.0/lib/ftk/CorePy/ObservableList.cpp +32 -0
- feather_tk-0.12.0/lib/ftk/CorePy/ObservableListInline.h +45 -0
- feather_tk-0.12.0/lib/ftk/CorePy/ObservableMap.cpp +28 -0
- feather_tk-0.12.0/lib/ftk/CorePy/ObservableMapInline.h +30 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Path.cpp +185 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Random.cpp +31 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Range.cpp +103 -0
- feather_tk-0.12.0/lib/ftk/CorePy/RenderOptions.cpp +74 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Size.cpp +122 -0
- feather_tk-0.12.0/lib/ftk/CorePy/String.cpp +50 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Time.cpp +42 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Timer.cpp +47 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Vector.cpp +166 -0
- feather_tk-0.12.0/lib/ftk/CorePy/Version.cpp +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/AppTest.cpp +151 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/AppTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/BoxPackTest.cpp +94 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/BoxPackTest.h +36 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/BoxTest.cpp +253 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/BoxTest.h +33 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/CMakeLists.txt +80 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/CmdLineTest.cpp +177 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/CmdLineTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ColorTest.cpp +270 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ColorTest.h +33 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/CommandTest.cpp +123 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/CommandTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ErrorTest.cpp +37 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ErrorTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/FileIOTest.cpp +453 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/FileIOTest.h +34 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/FontSystemTest.cpp +105 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/FontSystemTest.h +32 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/FormatTest.cpp +58 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/FormatTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ImageIOTest.cpp +80 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ImageIOTest.h +31 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ImageTest.cpp +122 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ImageTest.h +33 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/LRUCacheTest.cpp +94 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/LRUCacheTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/MathTest.cpp +66 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/MathTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/MatrixTest.cpp +298 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/MatrixTest.h +34 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/MemoryTest.cpp +121 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/MemoryTest.h +32 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/MeshTest.cpp +62 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/MeshTest.h +30 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/NoiseTest.cpp +60 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/NoiseTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/OSTest.cpp +75 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/OSTest.h +31 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ObservableTest.cpp +179 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/ObservableTest.h +32 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/PNGTest.cpp +107 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/PNGTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/PathTest.cpp +852 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/PathTest.h +40 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/RandomTest.cpp +116 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/RandomTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/RangeTest.cpp +130 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/RangeTest.h +32 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/RenderOptionsTest.cpp +59 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/RenderOptionsTest.h +31 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/RenderUtilTest.cpp +250 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/RenderUtilTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/SizeTest.cpp +185 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/SizeTest.h +33 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/StringTest.cpp +193 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/StringTest.h +34 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/SystemTest.cpp +105 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/SystemTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/TimeTest.cpp +48 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/TimeTest.h +31 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/TimerTest.cpp +78 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/TimerTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/VectorTest.cpp +275 -0
- feather_tk-0.12.0/lib/ftk/CoreTest/VectorTest.h +33 -0
- feather_tk-0.12.0/lib/ftk/GL/CMakeLists.txt +112 -0
- feather_tk-0.12.0/lib/ftk/GL/Export.h +34 -0
- feather_tk-0.12.0/lib/ftk/GL/GL.h +11 -0
- feather_tk-0.12.0/lib/ftk/GL/Init.cpp +46 -0
- feather_tk-0.12.0/lib/ftk/GL/Init.h +25 -0
- feather_tk-0.12.0/lib/ftk/GL/Mesh.cpp +777 -0
- feather_tk-0.12.0/lib/ftk/GL/Mesh.h +126 -0
- feather_tk-0.12.0/lib/ftk/GL/OffscreenBuffer.cpp +439 -0
- feather_tk-0.12.0/lib/ftk/GL/OffscreenBuffer.h +171 -0
- feather_tk-0.12.0/lib/ftk/GL/Render.cpp +639 -0
- feather_tk-0.12.0/lib/ftk/GL/Render.h +181 -0
- feather_tk-0.12.0/lib/ftk/GL/RenderPrims.cpp +971 -0
- feather_tk-0.12.0/lib/ftk/GL/RenderPrivate.h +107 -0
- feather_tk-0.12.0/lib/ftk/GL/RenderShaders_GLES_3.cpp +404 -0
- feather_tk-0.12.0/lib/ftk/GL/RenderShaders_GL_4_1.cpp +611 -0
- feather_tk-0.12.0/lib/ftk/GL/Shader.cpp +345 -0
- feather_tk-0.12.0/lib/ftk/GL/Shader.h +108 -0
- feather_tk-0.12.0/lib/ftk/GL/System.cpp +298 -0
- feather_tk-0.12.0/lib/ftk/GL/System.h +52 -0
- feather_tk-0.12.0/lib/ftk/GL/Texture.cpp +756 -0
- feather_tk-0.12.0/lib/ftk/GL/Texture.h +163 -0
- feather_tk-0.12.0/lib/ftk/GL/TextureAtlas.cpp +146 -0
- feather_tk-0.12.0/lib/ftk/GL/TextureAtlas.h +79 -0
- feather_tk-0.12.0/lib/ftk/GL/Util.cpp +309 -0
- feather_tk-0.12.0/lib/ftk/GL/Util.h +75 -0
- feather_tk-0.12.0/lib/ftk/GL/Window.cpp +642 -0
- feather_tk-0.12.0/lib/ftk/GL/Window.h +157 -0
- feather_tk-0.12.0/lib/ftk/GLTest/CMakeLists.txt +32 -0
- feather_tk-0.12.0/lib/ftk/GLTest/MeshTest.cpp +143 -0
- feather_tk-0.12.0/lib/ftk/GLTest/MeshTest.h +32 -0
- feather_tk-0.12.0/lib/ftk/GLTest/OffscreenBufferTest.cpp +175 -0
- feather_tk-0.12.0/lib/ftk/GLTest/OffscreenBufferTest.h +33 -0
- feather_tk-0.12.0/lib/ftk/GLTest/RenderTest.cpp +200 -0
- feather_tk-0.12.0/lib/ftk/GLTest/RenderTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/GLTest/ShaderTest.cpp +161 -0
- feather_tk-0.12.0/lib/ftk/GLTest/ShaderTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/GLTest/TextureAtlasTest.cpp +82 -0
- feather_tk-0.12.0/lib/ftk/GLTest/TextureAtlasTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/GLTest/TextureTest.cpp +132 -0
- feather_tk-0.12.0/lib/ftk/GLTest/TextureTest.h +32 -0
- feather_tk-0.12.0/lib/ftk/GLTest/UtilTest.cpp +36 -0
- feather_tk-0.12.0/lib/ftk/GLTest/UtilTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/GLTest/WindowTest.cpp +57 -0
- feather_tk-0.12.0/lib/ftk/GLTest/WindowTest.h +32 -0
- feather_tk-0.12.0/lib/ftk/Resource/CMakeLists.txt +79 -0
- feather_tk-0.12.0/lib/ftk/TestLib/CMakeLists.txt +31 -0
- feather_tk-0.12.0/lib/ftk/TestLib/ITest.cpp +71 -0
- feather_tk-0.12.0/lib/ftk/TestLib/ITest.h +104 -0
- feather_tk-0.12.0/lib/ftk/UI/Action.cpp +379 -0
- feather_tk-0.12.0/lib/ftk/UI/Action.h +199 -0
- feather_tk-0.12.0/lib/ftk/UI/ActionGroup.cpp +183 -0
- feather_tk-0.12.0/lib/ftk/UI/ActionGroup.h +93 -0
- feather_tk-0.12.0/lib/ftk/UI/App.h +288 -0
- feather_tk-0.12.0/lib/ftk/UI/AppGL.cpp +2043 -0
- feather_tk-0.12.0/lib/ftk/UI/Bellows.cpp +152 -0
- feather_tk-0.12.0/lib/ftk/UI/Bellows.h +72 -0
- feather_tk-0.12.0/lib/ftk/UI/BellowsButton.cpp +248 -0
- feather_tk-0.12.0/lib/ftk/UI/BellowsPrivate.h +44 -0
- feather_tk-0.12.0/lib/ftk/UI/ButtonGroup.cpp +182 -0
- feather_tk-0.12.0/lib/ftk/UI/ButtonGroup.h +68 -0
- feather_tk-0.12.0/lib/ftk/UI/CMakeLists.txt +305 -0
- feather_tk-0.12.0/lib/ftk/UI/Capture.cpp +881 -0
- feather_tk-0.12.0/lib/ftk/UI/Capture.h +145 -0
- feather_tk-0.12.0/lib/ftk/UI/CheckBox.cpp +270 -0
- feather_tk-0.12.0/lib/ftk/UI/CheckBox.h +56 -0
- feather_tk-0.12.0/lib/ftk/UI/ChoiceDialog.cpp +200 -0
- feather_tk-0.12.0/lib/ftk/UI/ChoiceDialog.h +53 -0
- feather_tk-0.12.0/lib/ftk/UI/ClipboardSystem.cpp +116 -0
- feather_tk-0.12.0/lib/ftk/UI/ClipboardSystem.h +39 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorDot.cpp +225 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorDot.h +61 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorPopup.cpp +54 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorPopup.h +45 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorSlider.cpp +646 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorSlider.h +209 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorSwatch.cpp +315 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorSwatch.h +79 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorWidget.cpp +813 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorWidget.h +205 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorWidgetSystem.cpp +65 -0
- feather_tk-0.12.0/lib/ftk/UI/ColorWidgetSystem.h +49 -0
- feather_tk-0.12.0/lib/ftk/UI/ComboBox.cpp +560 -0
- feather_tk-0.12.0/lib/ftk/UI/ComboBox.h +124 -0
- feather_tk-0.12.0/lib/ftk/UI/ComboBoxButton.cpp +235 -0
- feather_tk-0.12.0/lib/ftk/UI/ComboBoxMenu.cpp +188 -0
- feather_tk-0.12.0/lib/ftk/UI/ComboBoxPrivate.h +81 -0
- feather_tk-0.12.0/lib/ftk/UI/ConfirmDialog.cpp +219 -0
- feather_tk-0.12.0/lib/ftk/UI/ConfirmDialog.h +50 -0
- feather_tk-0.12.0/lib/ftk/UI/DiagWidget.cpp +120 -0
- feather_tk-0.12.0/lib/ftk/UI/DiagWidget.h +45 -0
- feather_tk-0.12.0/lib/ftk/UI/DialogSystem.cpp +152 -0
- feather_tk-0.12.0/lib/ftk/UI/DialogSystem.h +72 -0
- feather_tk-0.12.0/lib/ftk/UI/Divider.cpp +80 -0
- feather_tk-0.12.0/lib/ftk/UI/Divider.h +43 -0
- feather_tk-0.12.0/lib/ftk/UI/DocumentModel.cpp +133 -0
- feather_tk-0.12.0/lib/ftk/UI/DocumentModel.h +81 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleEdit.cpp +392 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleEdit.h +146 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleEditShuttle.cpp +216 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleEditShuttle.h +102 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleEditSlider.cpp +258 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleEditSlider.h +104 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleModel.cpp +180 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleModel.h +115 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleSlider.cpp +512 -0
- feather_tk-0.12.0/lib/ftk/UI/DoubleSlider.h +134 -0
- feather_tk-0.12.0/lib/ftk/UI/DrawUtil.cpp +379 -0
- feather_tk-0.12.0/lib/ftk/UI/DrawUtil.h +43 -0
- feather_tk-0.12.0/lib/ftk/UI/DrivesModel.cpp +109 -0
- feather_tk-0.12.0/lib/ftk/UI/DrivesModel.h +43 -0
- feather_tk-0.12.0/lib/ftk/UI/Event.cpp +403 -0
- feather_tk-0.12.0/lib/ftk/UI/Event.h +413 -0
- feather_tk-0.12.0/lib/ftk/UI/Export.h +34 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowser.cpp +172 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowser.h +486 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowserModel.cpp +181 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowserPanel.cpp +478 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowserPath.cpp +194 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowserPrivate.h +39 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowserSystem.cpp +483 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowserView.cpp +1172 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowserWidget.cpp +761 -0
- feather_tk-0.12.0/lib/ftk/UI/FileBrowserWidgets.h +266 -0
- feather_tk-0.12.0/lib/ftk/UI/FileEdit.cpp +207 -0
- feather_tk-0.12.0/lib/ftk/UI/FileEdit.h +66 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatEdit.cpp +382 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatEdit.h +140 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatEditShuttle.cpp +216 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatEditShuttle.h +102 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatEditSlider.cpp +257 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatEditSlider.h +104 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatModel.cpp +180 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatModel.h +115 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatSlider.cpp +510 -0
- feather_tk-0.12.0/lib/ftk/UI/FloatSlider.h +134 -0
- feather_tk-0.12.0/lib/ftk/UI/FlowLayout.cpp +189 -0
- feather_tk-0.12.0/lib/ftk/UI/FlowLayout.h +70 -0
- feather_tk-0.12.0/lib/ftk/UI/FormLayout.cpp +211 -0
- feather_tk-0.12.0/lib/ftk/UI/FormLayout.h +81 -0
- feather_tk-0.12.0/lib/ftk/UI/GraphWidget.cpp +396 -0
- feather_tk-0.12.0/lib/ftk/UI/GraphWidget.h +60 -0
- feather_tk-0.12.0/lib/ftk/UI/GridLayout.cpp +548 -0
- feather_tk-0.12.0/lib/ftk/UI/GridLayout.h +84 -0
- feather_tk-0.12.0/lib/ftk/UI/GroupBox.cpp +214 -0
- feather_tk-0.12.0/lib/ftk/UI/GroupBox.h +65 -0
- feather_tk-0.12.0/lib/ftk/UI/IButton.cpp +339 -0
- feather_tk-0.12.0/lib/ftk/UI/IButton.h +148 -0
- feather_tk-0.12.0/lib/ftk/UI/IContainer.cpp +61 -0
- feather_tk-0.12.0/lib/ftk/UI/IContainer.h +73 -0
- feather_tk-0.12.0/lib/ftk/UI/IDialog.cpp +348 -0
- feather_tk-0.12.0/lib/ftk/UI/IDialog.h +70 -0
- feather_tk-0.12.0/lib/ftk/UI/IMenuPopup.cpp +409 -0
- feather_tk-0.12.0/lib/ftk/UI/IMenuPopup.h +87 -0
- feather_tk-0.12.0/lib/ftk/UI/IMouseWidget.cpp +123 -0
- feather_tk-0.12.0/lib/ftk/UI/IMouseWidget.h +64 -0
- feather_tk-0.12.0/lib/ftk/UI/IPopup.cpp +21 -0
- feather_tk-0.12.0/lib/ftk/UI/IPopup.h +33 -0
- feather_tk-0.12.0/lib/ftk/UI/IWidget.cpp +529 -0
- feather_tk-0.12.0/lib/ftk/UI/IWidget.h +418 -0
- feather_tk-0.12.0/lib/ftk/UI/IWidgetInline.h +169 -0
- feather_tk-0.12.0/lib/ftk/UI/IWidgetPopup.cpp +362 -0
- feather_tk-0.12.0/lib/ftk/UI/IWidgetPopup.h +75 -0
- feather_tk-0.12.0/lib/ftk/UI/IWindow.cpp +1467 -0
- feather_tk-0.12.0/lib/ftk/UI/IWindow.h +372 -0
- feather_tk-0.12.0/lib/ftk/UI/Icon.cpp +164 -0
- feather_tk-0.12.0/lib/ftk/UI/Icon.h +60 -0
- feather_tk-0.12.0/lib/ftk/UI/IconSystem.cpp +355 -0
- feather_tk-0.12.0/lib/ftk/UI/IconSystem.h +65 -0
- feather_tk-0.12.0/lib/ftk/UI/ImageWidget.cpp +134 -0
- feather_tk-0.12.0/lib/ftk/UI/ImageWidget.h +56 -0
- feather_tk-0.12.0/lib/ftk/UI/IncButtons.cpp +173 -0
- feather_tk-0.12.0/lib/ftk/UI/IncButtons.h +76 -0
- feather_tk-0.12.0/lib/ftk/UI/Init.cpp +53 -0
- feather_tk-0.12.0/lib/ftk/UI/Init.h +19 -0
- feather_tk-0.12.0/lib/ftk/UI/InputDialog.cpp +265 -0
- feather_tk-0.12.0/lib/ftk/UI/InputDialog.h +54 -0
- feather_tk-0.12.0/lib/ftk/UI/IntEdit.cpp +367 -0
- feather_tk-0.12.0/lib/ftk/UI/IntEdit.h +134 -0
- feather_tk-0.12.0/lib/ftk/UI/IntEditShuttle.cpp +206 -0
- feather_tk-0.12.0/lib/ftk/UI/IntEditShuttle.h +96 -0
- feather_tk-0.12.0/lib/ftk/UI/IntEditSlider.cpp +247 -0
- feather_tk-0.12.0/lib/ftk/UI/IntEditSlider.h +98 -0
- feather_tk-0.12.0/lib/ftk/UI/IntModel.cpp +178 -0
- feather_tk-0.12.0/lib/ftk/UI/IntModel.h +115 -0
- feather_tk-0.12.0/lib/ftk/UI/IntSlider.cpp +509 -0
- feather_tk-0.12.0/lib/ftk/UI/IntSlider.h +134 -0
- feather_tk-0.12.0/lib/ftk/UI/ItemButton.cpp +327 -0
- feather_tk-0.12.0/lib/ftk/UI/ItemButton.h +104 -0
- feather_tk-0.12.0/lib/ftk/UI/ItemButtonList.cpp +267 -0
- feather_tk-0.12.0/lib/ftk/UI/ItemButtonList.h +87 -0
- feather_tk-0.12.0/lib/ftk/UI/Label.cpp +445 -0
- feather_tk-0.12.0/lib/ftk/UI/Label.h +123 -0
- feather_tk-0.12.0/lib/ftk/UI/LayoutUtil.cpp +84 -0
- feather_tk-0.12.0/lib/ftk/UI/LayoutUtil.h +30 -0
- feather_tk-0.12.0/lib/ftk/UI/LevelsSlider.cpp +756 -0
- feather_tk-0.12.0/lib/ftk/UI/LevelsSlider.h +223 -0
- feather_tk-0.12.0/lib/ftk/UI/LineEdit.cpp +878 -0
- feather_tk-0.12.0/lib/ftk/UI/LineEdit.h +165 -0
- feather_tk-0.12.0/lib/ftk/UI/LineEditModel.cpp +608 -0
- feather_tk-0.12.0/lib/ftk/UI/LineEditModel.h +157 -0
- feather_tk-0.12.0/lib/ftk/UI/ListItemButton.cpp +196 -0
- feather_tk-0.12.0/lib/ftk/UI/ListItemsWidget.cpp +319 -0
- feather_tk-0.12.0/lib/ftk/UI/ListItemsWidget.h +102 -0
- feather_tk-0.12.0/lib/ftk/UI/ListItemsWidgetPrivate.h +46 -0
- feather_tk-0.12.0/lib/ftk/UI/ListWidget.cpp +131 -0
- feather_tk-0.12.0/lib/ftk/UI/ListWidget.h +76 -0
- feather_tk-0.12.0/lib/ftk/UI/MDICanvas.cpp +420 -0
- feather_tk-0.12.0/lib/ftk/UI/MDICanvas.h +74 -0
- feather_tk-0.12.0/lib/ftk/UI/MDIMiniMap.cpp +332 -0
- feather_tk-0.12.0/lib/ftk/UI/MDIMiniMap.h +57 -0
- feather_tk-0.12.0/lib/ftk/UI/MDIWidget.cpp +437 -0
- feather_tk-0.12.0/lib/ftk/UI/MDIWidget.h +111 -0
- feather_tk-0.12.0/lib/ftk/UI/MainWindow.cpp +294 -0
- feather_tk-0.12.0/lib/ftk/UI/MainWindow.h +54 -0
- feather_tk-0.12.0/lib/ftk/UI/Menu.cpp +600 -0
- feather_tk-0.12.0/lib/ftk/UI/Menu.h +114 -0
- feather_tk-0.12.0/lib/ftk/UI/MenuBar.cpp +389 -0
- feather_tk-0.12.0/lib/ftk/UI/MenuBar.h +103 -0
- feather_tk-0.12.0/lib/ftk/UI/MenuBarButton.cpp +196 -0
- feather_tk-0.12.0/lib/ftk/UI/MenuBarPrivate.h +46 -0
- feather_tk-0.12.0/lib/ftk/UI/MenuButton.cpp +412 -0
- feather_tk-0.12.0/lib/ftk/UI/MenuPrivate.h +53 -0
- feather_tk-0.12.0/lib/ftk/UI/MessageDialog.cpp +193 -0
- feather_tk-0.12.0/lib/ftk/UI/MessageDialog.h +46 -0
- feather_tk-0.12.0/lib/ftk/UI/OverlayLayout.cpp +110 -0
- feather_tk-0.12.0/lib/ftk/UI/OverlayLayout.h +49 -0
- feather_tk-0.12.0/lib/ftk/UI/PieChart.cpp +188 -0
- feather_tk-0.12.0/lib/ftk/UI/PieChart.h +70 -0
- feather_tk-0.12.0/lib/ftk/UI/ProgressDialog.cpp +417 -0
- feather_tk-0.12.0/lib/ftk/UI/ProgressDialog.h +72 -0
- feather_tk-0.12.0/lib/ftk/UI/PushButton.cpp +286 -0
- feather_tk-0.12.0/lib/ftk/UI/PushButton.h +56 -0
- feather_tk-0.12.0/lib/ftk/UI/RadioButton.cpp +247 -0
- feather_tk-0.12.0/lib/ftk/UI/RadioButton.h +56 -0
- feather_tk-0.12.0/lib/ftk/UI/RecentFilesModel.cpp +148 -0
- feather_tk-0.12.0/lib/ftk/UI/RecentFilesModel.h +67 -0
- feather_tk-0.12.0/lib/ftk/UI/RowLayout.cpp +425 -0
- feather_tk-0.12.0/lib/ftk/UI/RowLayout.h +133 -0
- feather_tk-0.12.0/lib/ftk/UI/SVGWidget.cpp +188 -0
- feather_tk-0.12.0/lib/ftk/UI/SVGWidget.h +62 -0
- feather_tk-0.12.0/lib/ftk/UI/ScreenshotTag.h +53 -0
- feather_tk-0.12.0/lib/ftk/UI/ScrollArea.cpp +314 -0
- feather_tk-0.12.0/lib/ftk/UI/ScrollArea.h +102 -0
- feather_tk-0.12.0/lib/ftk/UI/ScrollBar.cpp +333 -0
- feather_tk-0.12.0/lib/ftk/UI/ScrollBar.h +70 -0
- feather_tk-0.12.0/lib/ftk/UI/ScrollWidget.cpp +625 -0
- feather_tk-0.12.0/lib/ftk/UI/ScrollWidget.h +195 -0
- feather_tk-0.12.0/lib/ftk/UI/SearchBox.cpp +106 -0
- feather_tk-0.12.0/lib/ftk/UI/SearchBox.h +50 -0
- feather_tk-0.12.0/lib/ftk/UI/Settings.cpp +409 -0
- feather_tk-0.12.0/lib/ftk/UI/Settings.h +93 -0
- feather_tk-0.12.0/lib/ftk/UI/SettingsInline.h +31 -0
- feather_tk-0.12.0/lib/ftk/UI/ShuttleWidget.cpp +226 -0
- feather_tk-0.12.0/lib/ftk/UI/ShuttleWidget.h +52 -0
- feather_tk-0.12.0/lib/ftk/UI/SliderPopup.cpp +413 -0
- feather_tk-0.12.0/lib/ftk/UI/SliderPopup.h +92 -0
- feather_tk-0.12.0/lib/ftk/UI/Spacer.cpp +99 -0
- feather_tk-0.12.0/lib/ftk/UI/Spacer.h +49 -0
- feather_tk-0.12.0/lib/ftk/UI/Splitter.cpp +387 -0
- feather_tk-0.12.0/lib/ftk/UI/Splitter.h +84 -0
- feather_tk-0.12.0/lib/ftk/UI/Splitter2D.cpp +420 -0
- feather_tk-0.12.0/lib/ftk/UI/Splitter2D.h +84 -0
- feather_tk-0.12.0/lib/ftk/UI/StackLayout.cpp +261 -0
- feather_tk-0.12.0/lib/ftk/UI/StackLayout.h +94 -0
- feather_tk-0.12.0/lib/ftk/UI/Style.cpp +367 -0
- feather_tk-0.12.0/lib/ftk/UI/Style.h +190 -0
- feather_tk-0.12.0/lib/ftk/UI/SysLogModel.cpp +105 -0
- feather_tk-0.12.0/lib/ftk/UI/SysLogModel.h +53 -0
- feather_tk-0.12.0/lib/ftk/UI/TabBar.cpp +461 -0
- feather_tk-0.12.0/lib/ftk/UI/TabBar.h +97 -0
- feather_tk-0.12.0/lib/ftk/UI/TabBarButton.cpp +201 -0
- feather_tk-0.12.0/lib/ftk/UI/TabBarPrivate.h +46 -0
- feather_tk-0.12.0/lib/ftk/UI/TabWidget.cpp +261 -0
- feather_tk-0.12.0/lib/ftk/UI/TabWidget.h +103 -0
- feather_tk-0.12.0/lib/ftk/UI/TextEdit.cpp +291 -0
- feather_tk-0.12.0/lib/ftk/UI/TextEdit.h +124 -0
- feather_tk-0.12.0/lib/ftk/UI/TextEditModel.cpp +976 -0
- feather_tk-0.12.0/lib/ftk/UI/TextEditModel.h +207 -0
- feather_tk-0.12.0/lib/ftk/UI/TextEditPrivate.h +68 -0
- feather_tk-0.12.0/lib/ftk/UI/TextEditWidget.cpp +628 -0
- feather_tk-0.12.0/lib/ftk/UI/ToolBar.cpp +105 -0
- feather_tk-0.12.0/lib/ftk/UI/ToolBar.h +65 -0
- feather_tk-0.12.0/lib/ftk/UI/ToolButton.cpp +535 -0
- feather_tk-0.12.0/lib/ftk/UI/ToolButton.h +103 -0
- feather_tk-0.12.0/lib/ftk/UI/Tooltip.cpp +221 -0
- feather_tk-0.12.0/lib/ftk/UI/Tooltip.h +51 -0
- feather_tk-0.12.0/lib/ftk/UI/Util.cpp +16 -0
- feather_tk-0.12.0/lib/ftk/UI/Util.h +13 -0
- feather_tk-0.12.0/lib/ftk/UI/WidgetDump.cpp +90 -0
- feather_tk-0.12.0/lib/ftk/UI/WidgetDump.h +24 -0
- feather_tk-0.12.0/lib/ftk/UI/WidgetJson.cpp +533 -0
- feather_tk-0.12.0/lib/ftk/UI/WidgetJson.h +81 -0
- feather_tk-0.12.0/lib/ftk/UI/WidgetOptions.cpp +38 -0
- feather_tk-0.12.0/lib/ftk/UI/WidgetOptions.h +62 -0
- feather_tk-0.12.0/lib/ftk/UI/Window.h +68 -0
- feather_tk-0.12.0/lib/ftk/UI/WindowGL.cpp +559 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Action.cpp +130 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ActionGroup.cpp +44 -0
- feather_tk-0.12.0/lib/ftk/UIPy/App.cpp +211 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Bellows.cpp +49 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Bindings.cpp +179 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Bindings.h +121 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ButtonGroup.cpp +49 -0
- feather_tk-0.12.0/lib/ftk/UIPy/CMakeLists.txt +135 -0
- feather_tk-0.12.0/lib/ftk/UIPy/CheckBox.cpp +43 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ChoiceDialog.cpp +39 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ClipboardSystem.cpp +39 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ColorDot.cpp +37 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ColorPopup.cpp +37 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ColorSlider.cpp +90 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ColorSwatch.cpp +40 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ColorWidget.cpp +37 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ComboBox.cpp +82 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ConfirmDialog.cpp +40 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DiagWidget.cpp +34 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DialogSystem.cpp +65 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Divider.cpp +34 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DocumentModel.cpp +72 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DoubleEdit.cpp +55 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DoubleEditShuttle.cpp +55 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DoubleEditSlider.cpp +56 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DoubleModel.cpp +50 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DoubleSlider.cpp +55 -0
- feather_tk-0.12.0/lib/ftk/UIPy/DrivesModel.cpp +40 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Event.cpp +153 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FileBrowser.cpp +138 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FileBrowserWidgets.cpp +101 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FileEdit.cpp +57 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FloatEdit.cpp +54 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FloatEditShuttle.cpp +55 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FloatEditSlider.cpp +55 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FloatModel.cpp +50 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FloatSlider.cpp +55 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FlowLayout.cpp +29 -0
- feather_tk-0.12.0/lib/ftk/UIPy/FormLayout.cpp +43 -0
- feather_tk-0.12.0/lib/ftk/UIPy/GraphWidget.cpp +43 -0
- feather_tk-0.12.0/lib/ftk/UIPy/GridLayout.cpp +49 -0
- feather_tk-0.12.0/lib/ftk/UIPy/GroupBox.cpp +46 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IButton.cpp +43 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IContainer.cpp +71 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IDialog.cpp +34 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IMenuPopup.cpp +62 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IMouseWidget.cpp +93 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IPopup.cpp +31 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IWidget.cpp +208 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IWidgetPopup.cpp +41 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IWindow.cpp +119 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Icon.cpp +45 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IconSystem.cpp +43 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ImageWidget.cpp +31 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IncButtons.cpp +36 -0
- feather_tk-0.12.0/lib/ftk/UIPy/InputDialog.cpp +41 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IntEdit.cpp +53 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IntEditShuttle.cpp +54 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IntEditSlider.cpp +54 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IntModel.cpp +50 -0
- feather_tk-0.12.0/lib/ftk/UIPy/IntSlider.cpp +55 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ItemButton.cpp +60 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Label.cpp +60 -0
- feather_tk-0.12.0/lib/ftk/UIPy/LevelsSlider.cpp +83 -0
- feather_tk-0.12.0/lib/ftk/UIPy/LineEdit.cpp +61 -0
- feather_tk-0.12.0/lib/ftk/UIPy/LineEditModel.cpp +67 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ListItemsWidget.cpp +67 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ListWidget.cpp +52 -0
- feather_tk-0.12.0/lib/ftk/UIPy/MDICanvas.cpp +38 -0
- feather_tk-0.12.0/lib/ftk/UIPy/MDIMiniMap.cpp +38 -0
- feather_tk-0.12.0/lib/ftk/UIPy/MDIWidget.cpp +45 -0
- feather_tk-0.12.0/lib/ftk/UIPy/MainWindow.cpp +105 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Menu.cpp +116 -0
- feather_tk-0.12.0/lib/ftk/UIPy/MenuBar.cpp +92 -0
- feather_tk-0.12.0/lib/ftk/UIPy/MessageDialog.cpp +38 -0
- feather_tk-0.12.0/lib/ftk/UIPy/OverlayLayout.cpp +30 -0
- feather_tk-0.12.0/lib/ftk/UIPy/PieChart.cpp +47 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ProgressDialog.cpp +42 -0
- feather_tk-0.12.0/lib/ftk/UIPy/PushButton.cpp +44 -0
- feather_tk-0.12.0/lib/ftk/UIPy/RadioButton.cpp +43 -0
- feather_tk-0.12.0/lib/ftk/UIPy/RecentFilesModel.cpp +67 -0
- feather_tk-0.12.0/lib/ftk/UIPy/RowLayout.cpp +70 -0
- feather_tk-0.12.0/lib/ftk/UIPy/SVGWidget.cpp +42 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ScreenshotTag.cpp +44 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ScrollArea.cpp +47 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ScrollBar.cpp +36 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ScrollWidget.cpp +63 -0
- feather_tk-0.12.0/lib/ftk/UIPy/SearchBox.cpp +36 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Settings.cpp +94 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ShuttleWidget.cpp +32 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Spacer.cpp +31 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Splitter.cpp +39 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Splitter2D.cpp +38 -0
- feather_tk-0.12.0/lib/ftk/UIPy/StackLayout.cpp +43 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Style.cpp +29 -0
- feather_tk-0.12.0/lib/ftk/UIPy/SysLogModel.cpp +38 -0
- feather_tk-0.12.0/lib/ftk/UIPy/TabBar.cpp +44 -0
- feather_tk-0.12.0/lib/ftk/UIPy/TabWidget.cpp +80 -0
- feather_tk-0.12.0/lib/ftk/UIPy/TextEdit.cpp +76 -0
- feather_tk-0.12.0/lib/ftk/UIPy/TextEditModel.cpp +95 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ToolBar.cpp +73 -0
- feather_tk-0.12.0/lib/ftk/UIPy/ToolButton.cpp +54 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Tooltip.cpp +29 -0
- feather_tk-0.12.0/lib/ftk/UIPy/WidgetOptions.cpp +35 -0
- feather_tk-0.12.0/lib/ftk/UIPy/WidgetTrampoline.h +135 -0
- feather_tk-0.12.0/lib/ftk/UIPy/Window.cpp +89 -0
- feather_tk-0.12.0/lib/ftk/UITest/ActionGroupTest.cpp +190 -0
- feather_tk-0.12.0/lib/ftk/UITest/ActionGroupTest.h +32 -0
- feather_tk-0.12.0/lib/ftk/UITest/ActionTest.cpp +101 -0
- feather_tk-0.12.0/lib/ftk/UITest/ActionTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/AppTest.cpp +72 -0
- feather_tk-0.12.0/lib/ftk/UITest/AppTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/BellowsTest.cpp +68 -0
- feather_tk-0.12.0/lib/ftk/UITest/BellowsTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/ButtonGroupTest.cpp +131 -0
- feather_tk-0.12.0/lib/ftk/UITest/ButtonGroupTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/ButtonTest.cpp +156 -0
- feather_tk-0.12.0/lib/ftk/UITest/ButtonTest.h +38 -0
- feather_tk-0.12.0/lib/ftk/UITest/CMakeLists.txt +129 -0
- feather_tk-0.12.0/lib/ftk/UITest/ColorWidgetTest.cpp +82 -0
- feather_tk-0.12.0/lib/ftk/UITest/ColorWidgetTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/ComboBoxTest.cpp +158 -0
- feather_tk-0.12.0/lib/ftk/UITest/ComboBoxTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/ConfirmDialogTest.cpp +125 -0
- feather_tk-0.12.0/lib/ftk/UITest/ConfirmDialogTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/ContextMenuTest.cpp +304 -0
- feather_tk-0.12.0/lib/ftk/UITest/ContextMenuTest.h +26 -0
- feather_tk-0.12.0/lib/ftk/UITest/DoubleEditSliderTest.cpp +74 -0
- feather_tk-0.12.0/lib/ftk/UITest/DoubleEditSliderTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/DoubleEditTest.cpp +73 -0
- feather_tk-0.12.0/lib/ftk/UITest/DoubleEditTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/DoubleModelTest.cpp +106 -0
- feather_tk-0.12.0/lib/ftk/UITest/DoubleModelTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/DoubleSliderTest.cpp +66 -0
- feather_tk-0.12.0/lib/ftk/UITest/DoubleSliderTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/DragDropTest.cpp +266 -0
- feather_tk-0.12.0/lib/ftk/UITest/DragDropTest.h +26 -0
- feather_tk-0.12.0/lib/ftk/UITest/DrawUtilTest.cpp +99 -0
- feather_tk-0.12.0/lib/ftk/UITest/DrawUtilTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/EventTest.cpp +45 -0
- feather_tk-0.12.0/lib/ftk/UITest/EventTest.h +30 -0
- feather_tk-0.12.0/lib/ftk/UITest/FileBrowserTest.cpp +767 -0
- feather_tk-0.12.0/lib/ftk/UITest/FileBrowserTest.h +59 -0
- feather_tk-0.12.0/lib/ftk/UITest/FileEditTest.cpp +67 -0
- feather_tk-0.12.0/lib/ftk/UITest/FileEditTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatEditShuttleTest.cpp +123 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatEditShuttleTest.h +26 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatEditSliderTest.cpp +74 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatEditSliderTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatEditTest.cpp +73 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatEditTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatModelTest.cpp +105 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatModelTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatSliderTest.cpp +288 -0
- feather_tk-0.12.0/lib/ftk/UITest/FloatSliderTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/FlowLayoutTest.cpp +85 -0
- feather_tk-0.12.0/lib/ftk/UITest/FlowLayoutTest.h +26 -0
- feather_tk-0.12.0/lib/ftk/UITest/GridLayoutTest.cpp +71 -0
- feather_tk-0.12.0/lib/ftk/UITest/GridLayoutTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/GroupBoxTest.cpp +60 -0
- feather_tk-0.12.0/lib/ftk/UITest/GroupBoxTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/IWidgetTest.cpp +113 -0
- feather_tk-0.12.0/lib/ftk/UITest/IWidgetTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/IconTest.cpp +77 -0
- feather_tk-0.12.0/lib/ftk/UITest/IconTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/IntEditSliderTest.cpp +71 -0
- feather_tk-0.12.0/lib/ftk/UITest/IntEditSliderTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/IntEditTest.cpp +69 -0
- feather_tk-0.12.0/lib/ftk/UITest/IntEditTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/IntModelTest.cpp +105 -0
- feather_tk-0.12.0/lib/ftk/UITest/IntModelTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/IntSliderTest.cpp +66 -0
- feather_tk-0.12.0/lib/ftk/UITest/IntSliderTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/LabelTest.cpp +112 -0
- feather_tk-0.12.0/lib/ftk/UITest/LabelTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/LayoutUtilTest.cpp +40 -0
- feather_tk-0.12.0/lib/ftk/UITest/LayoutUtilTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/LineEditModelTest.cpp +56 -0
- feather_tk-0.12.0/lib/ftk/UITest/LineEditModelTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/LineEditTest.cpp +218 -0
- feather_tk-0.12.0/lib/ftk/UITest/LineEditTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/ListWidgetTest.cpp +79 -0
- feather_tk-0.12.0/lib/ftk/UITest/ListWidgetTest.h +38 -0
- feather_tk-0.12.0/lib/ftk/UITest/MDIWidgetTest.cpp +88 -0
- feather_tk-0.12.0/lib/ftk/UITest/MDIWidgetTest.h +31 -0
- feather_tk-0.12.0/lib/ftk/UITest/MenuBarTest.cpp +153 -0
- feather_tk-0.12.0/lib/ftk/UITest/MenuBarTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/MessageDialogTest.cpp +48 -0
- feather_tk-0.12.0/lib/ftk/UITest/MessageDialogTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/PieChartTest.cpp +71 -0
- feather_tk-0.12.0/lib/ftk/UITest/PieChartTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/ProgressDialogTest.cpp +47 -0
- feather_tk-0.12.0/lib/ftk/UITest/ProgressDialogTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/RecentFilesModelTest.cpp +110 -0
- feather_tk-0.12.0/lib/ftk/UITest/RecentFilesModelTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/RowLayoutTest.cpp +149 -0
- feather_tk-0.12.0/lib/ftk/UITest/RowLayoutTest.h +39 -0
- feather_tk-0.12.0/lib/ftk/UITest/ScrollAreaTest.cpp +39 -0
- feather_tk-0.12.0/lib/ftk/UITest/ScrollAreaTest.h +30 -0
- feather_tk-0.12.0/lib/ftk/UITest/ScrollBarTest.cpp +67 -0
- feather_tk-0.12.0/lib/ftk/UITest/ScrollBarTest.h +39 -0
- feather_tk-0.12.0/lib/ftk/UITest/ScrollWidgetTest.cpp +111 -0
- feather_tk-0.12.0/lib/ftk/UITest/ScrollWidgetTest.h +38 -0
- feather_tk-0.12.0/lib/ftk/UITest/SearchBoxTest.cpp +61 -0
- feather_tk-0.12.0/lib/ftk/UITest/SearchBoxTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/SettingsTest.cpp +80 -0
- feather_tk-0.12.0/lib/ftk/UITest/SettingsTest.h +26 -0
- feather_tk-0.12.0/lib/ftk/UITest/SplitterTest.cpp +150 -0
- feather_tk-0.12.0/lib/ftk/UITest/SplitterTest.h +42 -0
- feather_tk-0.12.0/lib/ftk/UITest/StackLayoutTest.cpp +83 -0
- feather_tk-0.12.0/lib/ftk/UITest/StackLayoutTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/StyleTest.cpp +87 -0
- feather_tk-0.12.0/lib/ftk/UITest/StyleTest.h +31 -0
- feather_tk-0.12.0/lib/ftk/UITest/TabWidgetTest.cpp +133 -0
- feather_tk-0.12.0/lib/ftk/UITest/TabWidgetTest.h +31 -0
- feather_tk-0.12.0/lib/ftk/UITest/TextEditModelTest.cpp +756 -0
- feather_tk-0.12.0/lib/ftk/UITest/TextEditModelTest.h +27 -0
- feather_tk-0.12.0/lib/ftk/UITest/WidgetJsonTest.cpp +163 -0
- feather_tk-0.12.0/lib/ftk/UITest/WidgetJsonTest.h +25 -0
- feather_tk-0.12.0/lib/ftk/UITest/WidgetOptionsTest.cpp +42 -0
- feather_tk-0.12.0/lib/ftk/UITest/WidgetOptionsTest.h +30 -0
- feather_tk-0.12.0/lib/ftk/ftkPy/Bindings.cpp +18 -0
- feather_tk-0.12.0/lib/ftk/ftkPy/CMakeLists.txt +50 -0
- feather_tk-0.12.0/lib/ftk/ftkPy/__init__.py +39 -0
- feather_tk-0.12.0/pyproject.toml +87 -0
- feather_tk-0.12.0/sbuild-linux.sh +9 -0
- feather_tk-0.12.0/sbuild-macos.sh +9 -0
- feather_tk-0.12.0/sbuild-win.bat +14 -0
- feather_tk-0.12.0/tests/CMakeLists.txt +22 -0
- feather_tk-0.12.0/tests/CorePyTest/__init__.py +0 -0
- feather_tk-0.12.0/tests/CorePyTest/testBox.py +112 -0
- feather_tk-0.12.0/tests/CorePyTest/testCmdLine.py +40 -0
- feather_tk-0.12.0/tests/CorePyTest/testColor.py +56 -0
- feather_tk-0.12.0/tests/CorePyTest/testCommand.py +236 -0
- feather_tk-0.12.0/tests/CorePyTest/testEnums.py +38 -0
- feather_tk-0.12.0/tests/CorePyTest/testImage.py +85 -0
- feather_tk-0.12.0/tests/CorePyTest/testMath.py +55 -0
- feather_tk-0.12.0/tests/CorePyTest/testMatrix.py +116 -0
- feather_tk-0.12.0/tests/CorePyTest/testMemory.py +34 -0
- feather_tk-0.12.0/tests/CorePyTest/testMesh.py +82 -0
- feather_tk-0.12.0/tests/CorePyTest/testNoise.py +27 -0
- feather_tk-0.12.0/tests/CorePyTest/testObservable.py +47 -0
- feather_tk-0.12.0/tests/CorePyTest/testObservableExtended.py +192 -0
- feather_tk-0.12.0/tests/CorePyTest/testObservableRange.py +50 -0
- feather_tk-0.12.0/tests/CorePyTest/testPath.py +88 -0
- feather_tk-0.12.0/tests/CorePyTest/testRandom.py +64 -0
- feather_tk-0.12.0/tests/CorePyTest/testRange.py +73 -0
- feather_tk-0.12.0/tests/CorePyTest/testRenderOptions.py +63 -0
- feather_tk-0.12.0/tests/CorePyTest/testSize.py +62 -0
- feather_tk-0.12.0/tests/CorePyTest/testString.py +31 -0
- feather_tk-0.12.0/tests/CorePyTest/testTime.py +21 -0
- feather_tk-0.12.0/tests/CorePyTest/testTimer.py +43 -0
- feather_tk-0.12.0/tests/CorePyTest/testVector.py +114 -0
- feather_tk-0.12.0/tests/UIPyTest/__init__.py +0 -0
- feather_tk-0.12.0/tests/UIPyTest/testApp.py +66 -0
- feather_tk-0.12.0/tests/UIPyTest/testModels.py +296 -0
- feather_tk-0.12.0/tests/UIPyTest/testWidgets.py +169 -0
- feather_tk-0.12.0/tests/ftk-test/CMakeLists.txt +27 -0
- feather_tk-0.12.0/tests/ftk-test/ftk-test.cpp +387 -0
- feather_tk-0.12.0/tests/ftk-test/ftk-test.h +37 -0
- feather_tk-0.12.0/tests/run-python-tests.py +31 -0
|
@@ -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)
|