Application roles are now strings

This commit is contained in:
Sasha Koshka 2024-04-29 16:21:35 -04:00
parent 58913a6a92
commit e71636ee1b

View File

@ -32,80 +32,48 @@ type ApplicationDescription struct {
// String satisfies the fmt.Stringer interface. // String satisfies the fmt.Stringer interface.
func (application ApplicationDescription) String () string { func (application ApplicationDescription) String () string {
if application.Name == "" { if application.Name == "" {
return application.Role.String() return string(application.Role)
} else { } else {
return application.Name return application.Name
} }
} }
// ApplicationRole describes what an application does. // ApplicationRole describes what an application does.
type ApplicationRole int; const ( type ApplicationRole string; const (
RoleUnknown ApplicationRole = iota RoleUnknown ApplicationRole = ""
RoleWebBrowser RoleWebBrowser ApplicationRole = "Web Browser"
RoleMesssanger RoleMesssanger ApplicationRole = "Messsanger"
RolePhone RolePhone ApplicationRole = "Phone"
RoleMail RoleMail ApplicationRole = "Mail"
RoleTerminalEmulator RoleTerminalEmulator ApplicationRole = "Terminal Emulator"
RoleFileBrowser RoleFileBrowser ApplicationRole = "File Browser"
RoleTextEditor RoleTextEditor ApplicationRole = "Text Editor"
RoleDocumentViewer RoleDocumentViewer ApplicationRole = "Document Viewer"
RoleWordProcessor RoleWordProcessor ApplicationRole = "Word Processor"
RoleSpreadsheet RoleSpreadsheet ApplicationRole = "Spreadsheet"
RoleSlideshow RoleSlideshow ApplicationRole = "Slideshow"
RoleCalculator RoleCalculator ApplicationRole = "Calculator"
RolePreferences RolePreferences ApplicationRole = "Preferences"
RoleProcessManager RoleProcessManager ApplicationRole = "Process Manager"
RoleSystemInformation RoleSystemInformation ApplicationRole = "System Information"
RoleManual RoleManual ApplicationRole = "Manual"
RoleCamera RoleCamera ApplicationRole = "Camera"
RoleImageViewer RoleImageViewer ApplicationRole = "Image Viewer"
RoleMediaPlayer RoleMediaPlayer ApplicationRole = "Media Player"
RoleImageEditor RoleImageEditor ApplicationRole = "Image Editor"
RoleAudioEditor RoleAudioEditor ApplicationRole = "Audio Editor"
RoleVideoEditor RoleVideoEditor ApplicationRole = "Video Editor"
RoleClock RoleClock ApplicationRole = "Clock"
RoleCalendar RoleCalendar ApplicationRole = "Calendar"
RoleChecklist RoleChecklist ApplicationRole = "Checklist"
) )
// String satisfies the fmt.Stringer interface.
func (role ApplicationRole) String () string {
switch role {
case RoleWebBrowser: return "Web Browser"
case RoleMesssanger: return "Messsanger"
case RolePhone: return "Phone"
case RoleMail: return "Mail"
case RoleTerminalEmulator: return "Terminal Emulator"
case RoleFileBrowser: return "File Browser"
case RoleTextEditor: return "Text Editor"
case RoleDocumentViewer: return "Document Viewer"
case RoleWordProcessor: return "Word Processor"
case RoleSpreadsheet: return "Spreadsheet"
case RoleSlideshow: return "Slideshow"
case RoleCalculator: return "Calculator"
case RolePreferences: return "Preferences"
case RoleProcessManager: return "Process Manager"
case RoleSystemInformation: return "System Information"
case RoleManual: return "Manual"
case RoleCamera: return "Camera"
case RoleImageViewer: return "Image Viewer"
case RoleMediaPlayer: return "Media Player"
case RoleImageEditor: return "Image Editor"
case RoleAudioEditor: return "Audio Editor"
case RoleVideoEditor: return "Video Editor"
case RoleClock: return "Clock"
case RoleCalendar: return "Calendar"
case RoleChecklist: return "Checklist"
default: return "unknown"
}
}
// RunApplication is like Run, but runs an application. // RunApplication is like Run, but runs an application.
func RunApplication (application Application) error { func RunApplication (application Application) error {
return tomo.Run(application.Init) return tomo.Run(application.Init)