12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- package Emulator
- import (
- "github.com/clockworkpi/LauncherGoDev/sysgo/UI"
- )
- type ActionConfig struct {
- ROM string `ini:"ROM"`
- ROM_SO string `ini:"ROM_SO"`
- EXT []string `ini:"EXT,omitempty"`
- EXCLUDE []string `ini:"EXCLUDE,omitempty"`
- FILETYPE string `ini:"FILETYPE"` // defalut is file
- LAUNCHER string `ini:"LAUNCHER"`
- TITLE string `ini:"TITLE"` // defaut is Game
- SO_URL string `ini:"SO_URL"`
- RETRO_CONFIG string `ini:"RETRO_CONFIG"`
- }
- var (
- FavGID = 31415
- FavGname = "cpifav"
- )
- type MyEmulator struct { // as leader of RomListPage and FavListPage, it's a PluginInterface
- Name string
- RomPage *RomListPage
- FavPage *FavListPage
- DeleteConfirmPage *UI.DeleteConfirmPage
- EmulatorConfig *ActionConfig
- SpeedMax int
- SpeedTimeInter int
- }
- func NewMyEmulator() *MyEmulator {
- p := &MyEmulator{}
- p.SpeedMax = 5
- p.SpeedTimeInter = 300
- return p
- }
- func (self *MyEmulator) GetName() string {
- return "MyEmulator"
- }
- func (self *MyEmulator) Init(main_screen *UI.MainScreen) {
- self.DeleteConfirmPage = UI.NewDeleteConfirmPage()
- self.DeleteConfirmPage.Screen = main_screen
- self.DeleteConfirmPage.Name = "Delete Confirm"
- self.DeleteConfirmPage.Init()
- self.RomPage = NewRomListPage()
- self.RomPage.Screen = main_screen
- self.RomPage.Name = self.EmulatorConfig.TITLE
- self.RomPage.EmulatorConfig = self.EmulatorConfig
- self.RomPage.Leader = self
- self.RomPage.Init()
- self.FavPage = NewFavListPage()
- self.FavPage.Screen = main_screen
- self.FavPage.Name = "FavouriteGames"
- self.FavPage.EmulatorConfig = self.EmulatorConfig
- self.FavPage.Leader = self
- self.FavPage.Init()
- }
- func (self *MyEmulator) Run(main_screen *UI.MainScreen) {
- if main_screen != nil {
- main_screen.PushCurPage()
- main_screen.SetCurPage(self.RomPage)
- main_screen.Refresh()
- }
- }
|