Documentation
¶
Index ¶
- Constants
- Variables
- func CheckUpdate(enforceHashIntegrity bool, ut UpdateType) error
- func DeleteConfiguration(removeLock bool)
- func DeleteFile(filepath string) error
- func Exit(code int)
- func FileExists(name string) bool
- func Get(s Storable) error
- func GetCaller() string
- func GetDataFilePath() string
- func IsErrAlreadyRunning(err error) bool
- func IsErrAuthFailed(err error) bool
- func IsErrHashMismatch(err error) bool
- func IsProcessRunning(processNames ...string) (bool, string, int, []string, map[string]int, error)
- func Launch() error
- func LoadUI(cfg *Configuration)
- func NewLogger() *qlogger
- func Save(s Storable) error
- func SetEntitlementAPI()
- func Setup()
- func ShowErrorMsg(title, message string, owner walk.Form)
- func ShowFatalErrorMsg(title, message string, owner walk.Form)
- func ShowInfoMsg(title, message string, owner walk.Form)
- func ShowQCRunningMsg(pid int) bool
- func ShowWarningMsg(title, message string, owner walk.Form)
- type AuthResponse
- type Branch
- type BranchBuildHistory
- type BranchInfoResponse
- type BuildInfoResponse
- type Configuration
- type Dependency
- type Depot
- type DepotItem
- type EntitlementBlacklist
- type EntitlementBlacklistBranch
- type EntitlementBlacklistProject
- type EntitlementBranch
- type EntitlementCheckAPIResponse
- type EntitlementInfoResponse
- type EntitlementProject
- type FileDiffContainer
- type FileHash
- type GameCodeResponse
- type Language
- type LaunchArgsResponse
- type LaunchInfo
- type LaunchInfoItem
- type LauncherSettings
- type LauncherStore
- type LauncherUpdateInfo
- type Project
- type QCCoreSettings
- type QCExperimentalSettings
- type QCLMainWindow
- type QCLMainWindowOptions
- type QCLSettingsTab
- type QCLSettingsWindow
- type QCLSettingsWindowOptions
- type ServerStatusResponse
- type Single
- type Storable
- type TokenAuth
- type TokenKey
- type UpdateLauncherResponse
- type UpdateQCResponse
- type UpdateTime
- type UpdateType
Constants ¶
View Source
const ( LogFile = "qclauncher.log" DataFile = "data.qcl" LockFile = "qcl.lock" ShowMainWindowFlag = "show" XAppDefVer = "1.43.3" XLibDefVer = "1.43.3" XSrcFpDef = "" )
View Source
const (
QCExe = "QuakeChampions.exe"
)
Variables ¶
View Source
var ( ConfLocal bool ConfDebug bool ConfAppendCustomArgs string ConfLocalAddr string ConfXAppVer string ConfXLibVer string ConfXSrcFp string ConfUpdateInterval int64 ConfSkipUpdates bool ConfEnforceHash bool ConfMaxFPS int ConfBaseSvc string ConfBaseBi string ConfShowMainWindow bool ConfUseEntitlementAPI bool Lock *Single )
View Source
var ( UILaunchErrorMsg = fmt.Sprintf("An error occurred while executing the launch process. See %s for more information. For support visit: https://github.com/syncore/qclauncher/issues", LogFile) )
View Source
var UseEntitlementAPI = true
Functions ¶
func CheckUpdate ¶
func CheckUpdate(enforceHashIntegrity bool, ut UpdateType) error
func DeleteConfiguration ¶
func DeleteConfiguration(removeLock bool)
func DeleteFile ¶
func FileExists ¶
func GetDataFilePath ¶
func GetDataFilePath() string
func IsErrAlreadyRunning ¶
func IsErrAuthFailed ¶
func IsErrHashMismatch ¶
func IsProcessRunning ¶
func LoadUI ¶
func LoadUI(cfg *Configuration)
func SetEntitlementAPI ¶
func SetEntitlementAPI()
func ShowErrorMsg ¶
func ShowFatalErrorMsg ¶
func ShowInfoMsg ¶
func ShowQCRunningMsg ¶
func ShowWarningMsg ¶
Types ¶
type AuthResponse ¶
type AuthResponse struct { OAuthToken interface{} `json:"oauth_token"` BeamClientAPIKey string `json:"beam_client_api_key"` Token string `json:"token"` SessionID string `json:"session_id"` BeamToken []string `json:"beam_token"` EntitlementIDs []int `json:"entitlement_ids"` // contains filtered or unexported fields }
type BranchBuildHistory ¶
type BranchInfoResponse ¶
type BranchInfoResponse struct { StorageURL string `json:"storage_url"` LaunchinfoList []int `json:"launchinfo_list"` FileDiffBuildList []int `json:"file_diff_build_list"` FileDiffContainers []FileDiffContainer `json:"filediffcontainers"` BuildHistory []BranchBuildHistory `json:"build_history"` Preload bool `json:"preload"` PreloadOndeck bool `json:"preload_ondeck"` Available bool `json:"available"` BranchType int `json:"branch_type"` DiffType int `json:"diff_type"` Project int `json:"project"` Name string `json:"name"` OnDeckBuild interface{} `json:"on_deck_build"` DepotList Depot `json:"depot_list"` Build int `json:"build"` PreloadLiveTime interface{} `json:"preload_live_time"` }
type BuildInfoResponse ¶
type Configuration ¶
type Configuration struct { Core *QCCoreSettings Experimental *QCExperimentalSettings Launcher *LauncherSettings Auth *TokenAuth }
func GetConfiguration ¶
func GetConfiguration() (*Configuration, error)
func GetEmptyConfiguration ¶
func GetEmptyConfiguration() *Configuration
type Dependency ¶
type DepotItem ¶
type DepotItem struct { ID int `json:"id"` Platform int `json:"platform"` Region int `json:"region"` CompressionType int `json:"compression_type"` DepotType int `json:"depot_type"` DeploymentOrder int `json:"deployment_order"` DefaultRegion bool `json:"default_region"` EncryptionType int `json:"encryption_type"` Language int `json:"language"` SizeOnDisk int64 `json:"size_on_disk"` Name string `json:"name"` DefaultLanguage bool `json:"default_language"` Build int `json:"build"` DownloadSize int64 `json:"download_size"` Architecture int `json:"architecture"` BytesPerChunk int `json:"bytes_per_chunk"` PropertiesID int `json:"properties_id"` }
type EntitlementBlacklist ¶
type EntitlementBlacklist struct { Branches []EntitlementBlacklistBranch `json:"branches"` Country string `json:"country"` IP string `json:"ip"` Projects []EntitlementBlacklistProject `json:"projects"` }
type EntitlementBlacklistProject ¶
type EntitlementBlacklistProject struct {
ID int `json:"id"`
}
type EntitlementBranch ¶
type EntitlementCheckAPIResponse ¶
type EntitlementCheckAPIResponse struct {
UseEntitlementAPI bool `json:"useEntitlementAPI"`
}
type EntitlementInfoResponse ¶
type EntitlementInfoResponse struct { Blacklist EntitlementBlacklist `json:"blacklist"` Branches []EntitlementBranch `json:"branches"` Projects []EntitlementProject `json:"projects"` }
type EntitlementProject ¶
type FileDiffContainer ¶
type GameCodeResponse ¶
type LaunchArgsResponse ¶
type LaunchArgsResponse struct { CheckFilter bool `json:"check_filter"` DefaultBranch int `json:"default_branch"` DependencyList []Dependency `json:"dependency_list"` EulaLink string `json:"eula_link"` FirewallLabel string `json:"firewall_label"` FirewallPath string `json:"firewall_path"` HasOauthClientID bool `json:"has_oauth_client_id"` IconLink string `json:"icon_link"` InstallFolder string `json:"install_folder"` InstallRegistry string `json:"install_registry"` LaunchinfoSet LaunchInfo `json:"launchinfo_set"` Name string `json:"name"` NewChunkFormat bool `json:"new_chunk_format"` NewChunkDownload bool `json:"new_chunk_download"` RequireLatest bool `json:"require_latest"` State int `json:"state"` StorageList []interface{} `json:"storage_list"` SupportLink string `json:"support_link"` }
type LaunchInfo ¶
type LaunchInfo struct { Default LaunchInfoItem `json:"8"` // NOTE: Default is the only relevant item; fragile (?) may change in the future BetaTemp LaunchInfoItem `json:"9"` // NOTE: fragile (?) may change in the future TestMaxFPS LaunchInfoItem `json:"10"` // NOTE: fragile (?) may change in the future PTSArenaBackend LaunchInfoItem `json:"14"` // NOTE: fragile (?) may change in the future }
type LaunchInfoItem ¶
type LaunchInfoItem struct { Architecture int `json:"architecture"` Description string `json:"description"` ExePath string `json:"exe_path"` LaunchArgs string `json:"launch_args"` Name string `json:"name"` Platform int `json:"platform"` Registry string `json:"registry"` WorkingDir string `json:"working_dir"` }
type LauncherSettings ¶
type LauncherStore ¶
type LauncherUpdateInfo ¶
type QCCoreSettings ¶
type QCExperimentalSettings ¶
type QCLMainWindow ¶
type QCLMainWindow struct { *walk.MainWindow TrayIcon *walk.NotifyIcon Options *QCLMainWindowOptions Binder *walk.DataBinder }
type QCLMainWindowOptions ¶
type QCLSettingsTab ¶
type QCLSettingsTab struct { wd.TabPage DataBinder *walk.DataBinder }
type QCLSettingsWindow ¶
type QCLSettingsWindow struct { *walk.MainWindow Options *QCLSettingsWindowOptions Binder *walk.DataBinder }
type QCLSettingsWindowOptions ¶
type QCLSettingsWindowOptions struct {
CanSaveSettings bool
}
type ServerStatusResponse ¶
type Single ¶
type Single struct { Locked bool // contains filtered or unexported fields }
Single provides a mechanism to ensure that only one instance of a program is running https://github.com/WeltN24/single
type UpdateLauncherResponse ¶
type UpdateQCResponse ¶
type UpdateTime ¶
Source Files
¶
- client.go
- conf.go
- datastore.go
- endpoints.go
- entitlement.go
- errors.go
- fp.go
- headers.go
- launch.go
- log.go
- requests.go
- responses.go
- responsevalidators.go
- settings.go
- settingscore.go
- settingsexperimental.go
- settingslauncher.go
- steam.go
- token.go
- uibase.go
- uitabcore.go
- uitabexperimental.go
- uitablauncher.go
- uiwindowmain.go
- uiwindowsettings.go
- updater.go
- util.go
Click to show internal directories.
Click to hide internal directories.