Release folder of all projects.
Read the LICENSE first.
Read GacUI website or the mirror website for more information.
The website indexed GacUI, it provides high level ideas with acceptable accuracy, but it is problematic in details.
Executables in Tools are no longer committed to this repo. Read Tools/README.md for building tools.
Download code from public releases to get the latest stable release. Code from this repo is also usable but I don't make any promise. I will only make a new release when I think the code is ready to update.
When iGac and gGac targets on a certain GacUI version, iGac and gGac will use the same version number as a tag to the commits.
- A GacUI release will always be
X.Y.Z.0, the last digit increases when only small bug fixing is introduced. - If iGac and gGac have multiple releases based on the same GacUI release, only the last digit will change.
Copy Vlpp.natvis to Visual Studio's visualizers folder.
For example, VS2022's default visualizers folder will be C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Packages\Debugger\Visualizers.
The prompts folder copies all task in Visual Studio github copilot recognized format.
- 0-scrum.prompt.md creates
Copilot_Scrum.md.- Use
# Problemfor the problem. - Convert your feature request to multiple tasks.
- Use
- 1-design.prompt.md creates
Copilot_Task.md.- Use
# Problemfor the problem. It will find the first unfinished task inCopilot_Scrum.md. - Create a more detailed design for the task.
- Use
- 2-planning.prompt.md creates
Copilot_Planning.md.- Propose actual code change from the detailed design.
- 3-summarizing.prompt.md creates
Copilot_Execution.md.- Extract proposed code change.
- 4-execution.prompt.md edit source files according to
Copilot_Execution.md.- Apply proposed code change, ensure it compiles.
- 5-verifying.prompt.md compiles and runs unit test.
- Ensure passing all test cases.
- You can always use
# Updatein any phrase for adjustment.
Example:
#win-0-scrum.prompt.md <-- vscode will convert it to a #file tag, otherwise you are not typing it correctly
I would like to do this feature. Here are proposed task splitting:
- Complete the source code
- Complete unit testYou can copy the whole .github folder to your own repo.
.vscode/tasks.json needs to be ready, see tasks-example.json for details.
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterThemeto set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- GlrParserGen.exe General LR parser to C++ code generator
- CodePack.exe Merge a group of C++ source files into multiple pairs of .h/.cpp big files
- GacBuild.ps1 Do everything for you if you don't want to understand build steps. This one builds multiple resource xml files at the same time. Read the comment for more information.
- GacClear.ps1 Force
GacBuild.ps1rebuilding all resource xml files for the next time.
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
- GacUI_Windows Demo how to interact with native Windows OS features.
Image files are not owned by this repo or organization except for GacUI logos.
WARNING: it is not maintained by members in vczh-libraries organization, please check the version number before using.
Third party project for GacUI 1.0: https://github.com/mangosroom/GacUI-CMake-support
WARNING: it is not maintained by members in vczh-libraries organization, please check the version number before using.
You can build and install vlpp using vcpkg dependency manager:
- git clone https://github.com/Microsoft/vcpkg.git
- cd vcpkg
- ./bootstrap-vcpkg.sh # ./bootstrap-vcpkg.bat for Windows
- ./vcpkg integrate install
- ./vcpkg install vlpp
Source files in the "Import" folder are grouped by different features defined in CMakeLists.txt.
The vlpp port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please create an issue or pull request on the vcpkg repository.