Merge pull request #16537 from danteruiz/document-qt-launcher

DEV-491: Create a README.md file to document the Qt Launcher
This commit is contained in:
Zach Fox 2019-11-25 18:28:12 -05:00 committed by GitHub
commit 18f410c6db
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 47 additions and 0 deletions

13
launchers/qt/BUILD.md Normal file
View file

@ -0,0 +1,13 @@
# Dependencies
- [cmake](https://cmake.org/download/): 3.9
# Windows
* Download `Visual Studio 2019`
`cmake -G "Visual Studio 16 2019" ..`
# MacOS
* Install `Xcode`
`cmake -G Xcode ..`
If you wish to not use the compiled qml files, pass the `-DLAUNCHER_SOURCE_TREE_RESOURCES=On` argument to cmake.

34
launchers/qt/readme.md Normal file
View file

@ -0,0 +1,34 @@
# HQ Launcher
Behavior of the HQ Launcher is as follows:
* Update the HQ Launcher to the latest version
* Sign up or sign in if is the user is not already signed in
* Download the latest Interface client
* Launch the user in the current HQ domain
# directory structure
## src/ - contains the c++ and objective-c.
* `BuildsRequest` - getting / parsing the build info from thunder api
* `CommandlineOptions` - parses and stores commandline arguments
* `Helper` - helper functions
* `Helper_darwin` - objective-c implemention of helper funcions
* `Helper_windows` - helper function that depend on windows api
* `Launcher` - initialized the Launcher Application and resources
* `LauncherInstaller_windows` - logic of how to install/uninstall HQ Launcher on windows
* `LauncherState` - hold majority of the logic of the launcher (signin, config file, updating, running launcher)
* config files hold the following saved data
* logged in
* home location
* `LauncherWindows` - wrapper for `QQuickWindow` that implements drag feature
* `LoginRequest` - checks the login credentials the user typed in.
* `NSTask+NSTaskExecveAdditions` - Extension of NSTask for replacing Launcher process with interface client process
* `PathUtils` - Helper class for getting relative paths for HQ Launcher
* `SignupRequest` - Determines if the users request to signup for a new account succeeded based on the entered credentials
* `Unzipper` - helper class for extracting zip files
* `UserSettingsRequest` - getting the users setting (home location) from metaverse
## resources/
* `images/`- Holds the images and icon that are used by the launcher
* `qml/`
* UI elements
* `QML_FILE_FOR_UI_STATE` variable in `LauncherState` defines what QML files are used by the Launcher.