Skip to content

vczh-libraries/gGac

Repository files navigation

Linux port for GacLib

using gtkmm/cairomm/pangomm

License

Read the LICENSE first.

Building & Debug this repo

  • need to have build-essential, cmake, gtkmm-3.0, sigc++-2.0
  • build gGac using CMakeLists.txt in root directory
    • mkdir build
    • cd build
    • cmake ..
    • make -j16
    • sudo make install
  • build Tests using CMakeLists.txt in Tests directory
    • mkdir -p Tests/build
    • cd Tests/build
    • export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
    • cmake ../
    • make -j16
  • use console::Console::WriteLine(L"xxx") to log anything interesting to console output, remember to set LC_ALL to your native lanaguage.
  • to use vscode, you have to set cmake.sourceDirectory in .vscode/settings.json to Tests directory in order to debug Demo projects.

Current Progress:

  • 1.2.0.0 prereleasing

Known Issues/Limiations:

  • AsyncService::Semaphore::WaitForTime
  • Code is compiled under VCZH_DEBUG_NO_REFLECTION, if u need Reflection, remember to remove VCZH_DEBUG_NO_REFLECTION in CMakeLists.txt and add all of Reflection cpp files.

Roadmap

  • Replace gtk by wayland
    • replace all gtk control including all dialog/window/pixbuf etc. by GacUI native control and wayland surface
    • replace all screen relative things by wayland
    • replace all gdk event by wayland
    • gtk4 branch is abandoned, since it remove eventbox and drop a lot work to X/Wayland. i.e. gtk4 is something same as gGac
  • Add vulkan renderer

Examples