Warning, /maui/station/src/widgets/SettingsDialog.qml is written in an unsupported language. File is not indexed.

0001 import QtQuick 2.14
0002 import QtQuick.Controls 2.14
0003 import QtQuick.Layouts 1.3
0004 
0005 import org.mauikit.controls 1.3 as Maui
0006 import org.mauikit.terminal 1.0 as Term
0007 
0008 import org.maui.station 1.0 as Station
0009 
0010 Maui.SettingsDialog
0011 {
0012     id: control
0013 
0014     Component
0015     {
0016         id:_fontPageComponent
0017 
0018         Maui.SettingsPage
0019         {
0020             title: i18n("Font")
0021 
0022             Maui.FontPicker
0023             {
0024                 Layout.fillWidth: true
0025 
0026                 mfont: settings.font
0027                 model.onlyMonospaced: true
0028 
0029                 onFontModified:
0030                 {
0031                     settings.font = font
0032                 }
0033             }
0034         }
0035     }
0036 
0037     Component
0038     {
0039         id:_csPageComponent
0040         
0041         Term.ColorSchemesPage
0042         {
0043             currentColorScheme: settings.colorScheme
0044             enabled: !settings.adaptiveColorScheme
0045             
0046             onCurrentColorSchemeChanged: settings.colorScheme = currentColorScheme
0047         }
0048     }
0049 
0050     Component
0051     {
0052         id: _alertsPageComponent
0053 
0054         Maui.SettingsPage
0055         {
0056             title: i18n("Alerts")
0057             Maui.SectionItem
0058             {
0059                 label1.text: i18n("Running Task")
0060                 label2.text: i18n("Prevent from closing a running task.")
0061 
0062                 Switch
0063                 {
0064                     checked: settings.preventClosing
0065                     onToggled: settings.preventClosing = ! settings.preventClosing
0066                 }
0067             }
0068 
0069             Maui.SectionItem
0070             {
0071                 label1.text: i18n("Finished Task")
0072                 label2.text: i18n("Emit a notification when a pending process has finished.")
0073 
0074                 Switch
0075                 {
0076                     checked: settings.alertProcess
0077                     onToggled: settings.alertProcess = ! settings.alertProcess
0078                 }
0079             }
0080 
0081             Maui.SectionItem
0082             {
0083                 label1.text: i18n("Silent")
0084                 label2.text: i18n("Emit an alert when a running task has been silent for more than 30 seconds.")
0085 
0086                 Switch
0087                 {
0088                     checked: settings.watchForSilence
0089                     onToggled: settings.watchForSilence = ! settings.watchForSilence
0090                 }
0091             }
0092         }
0093     }
0094 
0095     Maui.SectionGroup
0096     {
0097         title: i18n("Interface")
0098 //        description: i18n("Configure the application components and behaviour.")
0099 
0100         Maui.SectionItem
0101         {
0102             label1.text: i18n("Color")
0103             label2.text: i18n("Switch between light and dark colorscheme.")
0104 
0105             Maui.ToolActions
0106             {
0107                 autoExclusive: true
0108 
0109                 Action
0110                 {
0111                     text: i18n("Light")
0112                     onTriggered: settings.colorStyle = Maui.Style.Light
0113                     checked: settings.colorStyle === Maui.Style.Light
0114                 }
0115 
0116                 Action
0117                 {
0118                     text: i18n("Dark")
0119                     onTriggered: settings.colorStyle = Maui.Style.Dark
0120                     checked: settings.colorStyle === Maui.Style.Dark
0121                 }
0122 
0123 
0124                 Action
0125                 {
0126                     text: i18n("Adaptive")
0127                     onTriggered:
0128                     {
0129                         settings.colorStyle = Maui.Style.Adaptive
0130                     }
0131 
0132                     checked: settings.colorStyle === Maui.Style.Adaptive
0133                 }/*
0134 
0135                 Action
0136                 {
0137                     text: i18n("System")
0138                     onTriggered:
0139                     {
0140                         settings.colorStyle = undefined
0141                     }
0142 
0143                     checked: Maui.Style.styleType === 'undefined'
0144                 }*/
0145             }
0146         }
0147 
0148         Maui.SectionItem
0149         {
0150             label1.text: i18n("Translucency")
0151             label2.text: i18n("Translucent background.")
0152 
0153             Switch
0154             {
0155                 checked: settings.windowTranslucency
0156                 onToggled: settings.windowTranslucency = !settings.windowTranslucency
0157             }
0158         }
0159 
0160         Maui.SectionItem
0161         {
0162             label1.text: i18n("Tab Title")
0163 
0164             Maui.ToolActions
0165             {
0166                 autoExclusive: true
0167 
0168                 Action
0169                 {
0170                     text: i18n("Auto")
0171                     onTriggered: settings.tabTitleStyle = Terminal.TabTitle.Auto
0172                     checked: settings.tabTitleStyle === Terminal.TabTitle.Auto
0173                 }
0174 
0175                 Action
0176                 {
0177                     text: i18n("Process")
0178                     onTriggered: settings.tabTitleStyle = Terminal.TabTitle.ProcessName
0179                     checked: settings.tabTitleStyle === Terminal.TabTitle.ProcessName
0180                 }
0181 
0182                 Action
0183                 {
0184                     text: i18n("Directory")
0185                     onTriggered: settings.tabTitleStyle = Terminal.TabTitle.WorkingDirectory
0186                     checked: settings.tabTitleStyle === Terminal.TabTitle.WorkingDirectory
0187                 }
0188             }
0189         }
0190     }
0191 
0192     Maui.SectionGroup
0193     {
0194         title: i18n("Terminal")
0195 //        description: i18n("Configure the app UI and plugins.")
0196 
0197         Maui.SectionItem
0198         {
0199             label1.text: i18n("Save Session")
0200             label2.text: i18n("Restore previous session on startup.")
0201 
0202             Switch
0203             {
0204                 checkable: true
0205                 checked:  settings.restoreSession
0206                 onToggled: settings.restoreSession = ! settings.restoreSession
0207             }
0208 
0209         }
0210 
0211         Maui.SectionItem
0212         {
0213             label1.text: i18n("Adaptive Color Scheme")
0214             label2.text: i18n("Colors based on the current style.")
0215 
0216             Switch
0217             {
0218                 checkable: true
0219                 checked:  settings.adaptiveColorScheme
0220                 onToggled: settings.adaptiveColorScheme = ! settings.adaptiveColorScheme
0221             }
0222 
0223         }
0224 
0225         Maui.SectionItem
0226         {
0227             label1.text: i18n("Color Scheme")
0228             label2.text: i18n("Change the color scheme of the terminal.")
0229             enabled: !settings.adaptiveColorScheme
0230 
0231             ToolButton
0232             {
0233                 checkable: true
0234                 icon.name: "go-next"
0235                 onToggled: control.addPage(_csPageComponent)
0236             }
0237         }
0238 
0239         Maui.SectionItem
0240         {
0241             label1.text: i18n("Alerts")
0242             label2.text: i18n("Alert on processes and prevent closing them.")
0243 
0244             ToolButton
0245             {
0246                 checkable: true
0247                 icon.name: "go-next"
0248                 onToggled: control.addPage(_alertsPageComponent)
0249             }
0250         }
0251     }
0252 
0253     Maui.SectionGroup
0254     {
0255         title: i18n("Display")
0256 //        description: i18n("Configure the terminal font and display options.")
0257 
0258         Maui.SectionItem
0259         {
0260             label1.text: i18n("Font")
0261             label2.text: i18n("Font family and size.")
0262 
0263             ToolButton
0264             {
0265                 checkable: true
0266                 icon.name: "go-next"
0267                 onToggled: control.addPage(_fontPageComponent)
0268             }
0269         }
0270 
0271         Maui.SectionItem
0272         {
0273             label1.text:  i18n("Line Spacing")
0274 
0275             SpinBox
0276             {
0277                 from: 0; to : 500
0278                 value: settings.lineSpacing
0279                 onValueChanged: settings.lineSpacing = value
0280             }
0281         }
0282 
0283 
0284         Maui.SectionItem
0285         {
0286             label1.text:  i18n("History Size")
0287             label2.text: i18n("Number of lines to keep in buffer. Less than zero means infinite lines.")
0288 
0289             SpinBox
0290             {
0291                 from: -1; to : 9999
0292                 value: settings.historySize
0293                 onValueChanged: settings.historySize = value
0294             }
0295         }
0296 
0297         Maui.SectionItem
0298         {
0299             label1.text:  i18n("Enable Bold")
0300 
0301             Switch
0302             {
0303                checked: settings.enableBold
0304                onToggled:  settings.enableBold = !settings.enableBold
0305             }
0306         }
0307 
0308         Maui.SectionItem
0309         {
0310             label1.text:  i18n("Blinking Cursor")
0311 
0312             Switch
0313             {
0314                checked: settings.blinkingCursor
0315                onToggled:  settings.blinkingCursor = !settings.blinkingCursor
0316             }
0317         }
0318 
0319         Maui.SectionItem
0320         {
0321             label1.text:  i18n("Full Cursor Height")
0322 
0323             Switch
0324             {
0325                checked: settings.fullCursorHeight
0326                onToggled:  settings.fullCursorHeight = !settings.fullCursorHeight
0327             }
0328         }
0329 
0330         Maui.SectionItem
0331         {
0332             label1.text:  i18n("Antialias text")
0333 
0334             Switch
0335             {
0336                checked: settings.antialiasText
0337                onToggled:  settings.antialiasText = !settings.antialiasText
0338             }
0339         }
0340     }
0341 }