downloads button

This commit is contained in:
SpikeHD
2022-05-09 16:26:13 -07:00
parent ba304fa3ea
commit 8798b29b7c
3 changed files with 18 additions and 4 deletions

View File

@@ -4,7 +4,7 @@ import './App.css'
import './custom.css' import './custom.css'
// Config // Config
import { getConfig } from '../utils/configuration' import { getConfig, saveConfig } from '../utils/configuration'
// Major Components // Major Components
import Topbar from './components/TopBar' import Topbar from './components/TopBar'
@@ -20,13 +20,21 @@ async function playGame() {
await invoke('run_program', { path: config.game_path }) await invoke('run_program', { path: config.game_path })
} }
async function toggleGrasscutter() {
const config = await getConfig()
config.toggle_grasscutter = !config.toggle_grasscutter
await saveConfig(config)
}
function App() { function App() {
return ( return (
<div className="App"> <div className="App">
<Topbar /> <Topbar />
<div id="playButton"> <div id="playButton">
<div id="serverControls"> <div id="serverControls">
<Checkbox label="Connect via Grasscutter" /> <Checkbox label="Connect via Grasscutter" onChange={toggleGrasscutter} />
</div> </div>
<BigButton text="PLAY DA GAME :D" onClick={playGame} id="officialPlay" /> <BigButton text="PLAY DA GAME :D" onClick={playGame} id="officialPlay" />
</div> </div>

View File

@@ -4,6 +4,7 @@ import './TopBar.css'
import closeIcon from '../../resources/icons/close.svg' import closeIcon from '../../resources/icons/close.svg'
import minIcon from '../../resources/icons/min.svg' import minIcon from '../../resources/icons/min.svg'
import cogBtn from '../../resources/icons/cog.svg' import cogBtn from '../../resources/icons/cog.svg'
import downBtn from '../../resources/icons/download.svg'
import { app } from '@tauri-apps/api' import { app } from '@tauri-apps/api'
interface IProps { interface IProps {
@@ -47,6 +48,9 @@ export default class TopBar extends React.Component<IProps, IState> {
<div id="settingsBtn" className='TopButton'> <div id="settingsBtn" className='TopButton'>
<img src={cogBtn} alt="settings" /> <img src={cogBtn} alt="settings" />
</div> </div>
<div id="downloadsBtn" className='TopButton'>
<img src={downBtn} alt="downloads" />
</div>
</div> </div>
</div> </div>
) )

View File

@@ -1,7 +1,8 @@
import React from 'react' import React from 'react'
interface IProps { interface IProps {
label: string label: string,
onChange: () => void,
} }
interface IState { interface IState {
@@ -13,12 +14,13 @@ export default class Checkbox extends React.Component<IProps, IState> {
super(props) super(props)
this.state = { this.state = {
checked: false, checked: false
} }
} }
handleChange = () => { handleChange = () => {
this.setState({ checked: !this.state.checked }) this.setState({ checked: !this.state.checked })
this.props.onChange()
} }
render() { render() {