-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrenderer.tsx
37 lines (35 loc) · 1.14 KB
/
renderer.tsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import "bootstrap/dist/css/bootstrap.min.css"
import React from "react"
import ReactDom from "react-dom"
import TitleBar from "./components/TitleBar"
import VersionDialog from "./components/VersionDialog"
import AudioPlayer from "./components/AudioPlayer"
import AudioEffects from "./components/AudioEffects"
import AudioFilters from "./components/AudioFilters"
import MIDISynth from "./components/MIDISynth"
import ContextMenu from "./components/ContextMenu"
import {ipcRenderer} from "electron"
import "./index.less"
const App = () => {
const onDrop = (event: React.DragEvent) => {
console.log(event)
const file = event.dataTransfer?.files[0]
if (file) ipcRenderer.invoke("upload-file", file.path)
}
const onDragOver = (event: React.DragEvent) => {
event.stopPropagation()
event.preventDefault()
}
return (
<main className="app" onDrop={onDrop} onDragOver={onDragOver}>
<TitleBar/>
<ContextMenu/>
<VersionDialog/>
<AudioEffects/>
<AudioFilters/>
<MIDISynth/>
<AudioPlayer/>
</main>
)
}
ReactDom.render(<App/>, document.getElementById("root"))