System Settings Design
System Settings is the new name for Control Center. It includes settings and preferences that generally have no other context (i.e. are not specific to an application).
Settings are arranged into groups and displayed as "Panels" through the System Settings window ("Shell").
Settings Panels
If a settings panel has been implemented, the chances are that its design page is no longer up to date. If you want to help with the design or development of existing panel designs, please check the relevant component in Bugzilla.
Please see the Brainstorm page for ideas put forward on potential inclusions in System Settings.
Panel |
Design Status |
Personal |
|
Stable |
|
Stable |
|
Stable |
|
Needs design |
|
Mostly stable |
|
Needs design |
|
Hardware |
|
Stable |
|
Stable |
|
New design awaiting implementation (might need reviewing) |
|
Stable |
|
Stable |
|
New design for status part needs finishing |
|
Stable |
|
Stable |
|
Needs design |
|
Redesign in progress |
|
Color |
|
System |
|
Stable |
|
Stable |
|
Stable |
|
Design is incomplete |
|
Proposed Panels
Panel |
Design Status |
Needs design |
|
Needs design |
|
Needs design |
|
Needs design (superseding “Startup Applications”) |
UI Patterns
- Messages: how should warning, error and information messages be displayed?
- Authentication: need a common UI for escalating privileges if needed
- Help: where should help messages/button be presented?
- Apply: How to apply settings where instant apply is not appropriate.
- Set Default: How to set the current values as default for all users
- In order to fit on Netbooks screens all panels should be 675x530px
- NB. The shell panel is 26px tall, window decorations on Awaita are 32px tall and the systems settings toolbar is 50px tall. That means a panel needs to be roughly below 490px in height to fit on a netbook screen.
Developers API
A library is available for developers wishing to implement new Settings Panels.
- An abstract class representing the settings shell
- Properties:
- "panel" - the current active settings panel
- Functions:
- set_active_panel_from_id - set the active panel using the given id
- An abstract class to implement a panel
- Properties:
"shell" - construct only property set to the SettingsShell the Panel is inside