mirror of
https://github.com/Maschell/libgui.git
synced 2024-11-23 21:29:17 +01:00
59 lines
2.0 KiB
Markdown
59 lines
2.0 KiB
Markdown
# libgui
|
|
[![Build Status](https://travis-ci.org/Maschell/libgui.svg?branch=master)](https://travis-ci.org/Maschell/libgui)
|
|
|
|
## Usage
|
|
Following steps are required for initialization:
|
|
```C
|
|
InitOSFunctionPointers(); // Load OS functions
|
|
InitPadScoreFunctionPointers();
|
|
InitVPadFunctionPointers(); // Input functions for GUI control
|
|
InitFSFunctionPointers(); // To load file from the SD Card
|
|
InitGX2FunctionPointers(); // For rendering
|
|
InitAXFunctionPointers(); // For sound
|
|
|
|
mount_sd_fat("sd"); // Mounting the SD Card
|
|
memoryInitialize(); // Initialize memory management
|
|
|
|
//DO GUI STUFF HERE!
|
|
|
|
memoryRelease();
|
|
unmount_sd_fat("sd");
|
|
```
|
|
|
|
Link the application with:
|
|
```Makefile
|
|
-lgui -lutils -ldynamiclibs -lfreetype -lgd -lpng -ljpeg -lz -lmad -lvorbisidec -logg -lbz2
|
|
```
|
|
|
|
You also need to add the include path to your Makefile. Example:
|
|
|
|
```Makefile
|
|
export INCLUDE := [...] -I$(PORTLIBS)/include/freetype2 \
|
|
-I$(PORTLIBS)/include/libgui \
|
|
-I$(PORTLIBS)/include
|
|
```
|
|
|
|
TODO: provide more information
|
|
|
|
## Dependencies
|
|
To be able to use libgui, you need to install the following dependencies:
|
|
|
|
- Application needs to be loaded from the [homebrew_launcher](https://github.com/dimok789/homebrew_launcher)
|
|
- [libutils](https://github.com/Maschell/libutils) for common functions.
|
|
- [dynamic_libs](https://github.com/Maschell/dynamic_libs/tree/lib) for access to the functions.
|
|
|
|
- Install the required portlibs via `(dkp-)pacman -Syu ppc-zlib ppc-libmad ppc-libogg ppc-libgd ppc-freetype ppc-libjpeg-turbo ppc-libpng ppc-libvorbisidec ppc-glm ppc-bzip2`
|
|
|
|
# Use the prebuilt files from a Docker image.
|
|
The image `wiiulegacy/libgui` on [Docker Hub](https://hub.docker.com/r/wiiulegacy/libgui/) provides a prebuilt library in the `/artifacts` directory. Copy it into your DevkitPPC portlibs folder.
|
|
|
|
Example:
|
|
```
|
|
COPY --from=wiiulegacy/libgui:0.1 /artifacts $DEVKITPRO/portlibs
|
|
```
|
|
|
|
# Credits
|
|
- Orignally based on https://github.com/dborth/libwiigui
|
|
- Wii U port / modification / new functions / sound / much more by dimok.
|
|
- Minor changes by Maschell
|