sunny_macos_ui library
Flutter widgets and themes implementing the current macOS design language.
To use, import 'package:sunny_macos_ui/sunny_macos_ui.dart';
This library is designed for apps that run on macOS. While it will work on other Flutter-supported platforms, we encourage the use of the following libraries for apps that run on other desktop platforms:
Classes
- CapacityIndicator
- A capacity indicator illustrates the current level in relation to a finite capacity. Capacity indicators are often used when communicating factors like disk and battery usage. Mail, for example, uses a capacity indicator to show the percentage of data used in relation to an email account’s quota.
- CapacityIndicatorCell
- The cell CapacityIndicator uses to draw itself.
- ContentArea
- The widget that fills the rest of the body of the macOS MacosScaffold.
- HelpButton
- A help button appears within a view and opens app-specific help documentation when clicked. For help documentation creation guidance, see Help. All help buttons are circular, consistently sized buttons that contain a question mark icon. Whenever possible, open a help topic related to the current context. For example, the Rules pane of Mail preferences includes a help button. When clicked, it opens directly to a Rules preferences help topic.
- HelpButtonState
- HelpButtonTheme
- Overrides the default style of its HelpButton descendants.
- HelpButtonThemeData
- A style that overrides the default appearance of HelpButtons when it's used with HelpButtonTheme or with the overall MacosTheme's MacosThemeData.helpButtonTheme.
- Label
- A label is a static text field that describes an onscreen interface element or provides a short message. Although people can’t edit labels, they can sometimes copy label contents.
- MacosAlertDialog
- A macOS-style AlertDialog.
- MacosApp
- An application that uses macOS design.
- MacosBackButton
- A macOS style back button.
- MacosBackButtonState
- MacosCheckbox
- A checkbox is a type of button that lets the user choose between two opposite states, actions, or values. A selected checkbox is considered on when it contains a checkmark and off when it's empty. A checkbox is almost always followed by a title unless it appears in a checklist.
- MacosColor
- An immutable 32 bit color value in ARGB format.
- MacosColors
- A collection of color values lifted from the macOS system color picker.
- MacosIcon
- An Icon widget that respects a macOS icon theme.
- MacosIconButton
- A macOS-style icon button.
- MacosIconButtonState
- MacosIconButtonTheme
- Overrides the default style of its MacosIconButton descendants.
- MacosIconButtonThemeData
- A style that overrides the default appearance of MacosIconButtons when it's used with MacosIconButtonTheme or with the overall MacosTheme's MacosThemeData.macosIconButtonTheme.
- MacosIconTheme
- Controls the default color, opacity, and size of icons in a widget subtree.
- MacosIconThemeData
- Defines the color, opacity, and size of icons.
- MacosListTile
- A widget that aims to approximate the ListTile widget found in Flutter's material library.
-
MacosPopupButton<
T> - A macOS-style pop-up button.
- MacosPopupButtonTheme
- Overrides the default style of its MacosPopupButton descendants.
- MacosPopupButtonThemeData
-
A style that overrides the default appearance of
MacosPopupButtons when it is used with MacosPopupButtonTheme or with the
overall MacosTheme's
MacosThemeData.MacosPopupButtonTheme
. -
MacosPopupMenuItem<
T> - An item in a menu created by a MacosPopupButton.
-
MacosRadioButton<
T> - A radio button is a small, circular button followed by a title. Typically presented in groups of two to five, radio buttons provide the user a set of related but mutually exclusive choices. A radio button’s state is either on (a filled circle) or off (an empty circle).
- MacosScaffold
- A macOS page widget.
- MacosScrollbar
- A Macos Design scrollbar.
- MacosScrollBehavior
-
Describes how Scrollable widgets behave for
FluentApp
s. - MacosSheet
- A modal dialog that’s attached to a particular window and prevents further interaction with the window until the sheet is dismissed.
- MacosSwitch
- A switch is a visual toggle between two mutually exclusive states — on and off. A switch shows that it's on when the accent color is visible and off when the switch appears colorless.
- MacosTextField
- An macos-style text field.
- MacosTextFieldTheme
- MacosTextFieldThemeData
- MacosTheme
- Applies a macOS-style theme to descendant macOS widgets.
- MacosThemeData
- Defines the configuration of the overall visual MacosTheme for a MacosApp or a widget subtree within the app.
- MacosTooltip
- Tooltips, succinctly describe how to use controls without shifting people’s focus away from the primary interface. Tooltips appear when the user positions the pointer over a control for a few seconds. A tooltip remains visible for 10 seconds, or until the pointer moves away from the control.
- MacosTypography
- macOS typography.
- MacosWindow
- A basic frame layout.
- MacosWindowScope
- A MacosWindowScope serves as a scope for its descendants to rely on values needed for the layout of the descendants.
- ProgressBar
- A ProgressBar that shows progress in a horizontal bar.
- ProgressCircle
- A ProgressCircle that shows progress in a circular form, either as a spinner or as a circle that fills in as progress continues.
- PushButton
- A macOS-style button.
- PushButtonState
- PushButtonTheme
- Overrides the default style of its PushButton descendants.
- PushButtonThemeData
- A style that overrides the default appearance of PushButtons when it's used with PushButtonTheme or with the overall MacosTheme's MacosThemeData.pushButtonTheme.
- RatingIndicator
- A rating indicator uses a series of horizontally arranged graphical symbols to communicate a ranking level. The default symbol is a star.
- RelevanceIndicator
- A relevance indicator communicates relevancy using a series of vertical bars. It often appears in a list of search results for reference when sorting and comparing multiple items.
- ResizablePane
- ResolvedMacosDynamicColor
- ScrollbarTheme
- Applies a scrollbar theme to descendant MacosScrollbar widgets.
- ScrollbarThemeData
- Defines default property values for descendant MacosScrollbar widgets.
- Sidebar
- A macOS-style side bar at left side of the MacosScaffold.
- SidebarItem
- A macOS style navigation-list item intended for use in a Sidebar
- SidebarItems
- A scrollable widget that renders SidebarItems.
- TextInputType
- The type of information for which to optimize the text input control.
- TitleBar
- TooltipThemeData
Enums
- ButtonSize
- OverlayVisibilityMode
- Visibility of text field overlays based on the state of the current text entry.
- ResizableSide
- Indicates the draggable side of the ResizablePane for resizing
- SmartDashesType
- Indicates how to handle the intelligent replacement of dashes in text input.
- SmartQuotesType
- Indicates how to handle the intelligent replacement of quotes in text input.
- TextCapitalization
- Configures how the platform keyboard will select an uppercase or lowercase keyboard.
- TextInputAction
- An action the user has requested the text input control to perform.
Extensions
Constants
- kResizablePaneSafeArea → const EdgeInsets
- Default value for ResizablePane top padding
- kTitleBarHeight → const double
- Defines the height of a regular-sized TitleBar
Functions
-
showMacosAlertDialog<
T> ({required BuildContext context, required WidgetBuilder builder, bool barrierDismissible = false, Color? barrierColor, String? barrierLabel, RouteSettings? routeSettings, Constraints? constraints}) → Future< T?> - Displays a macos alert dialog above the current contents of the app.
-
showMacosSheet<
T> ({required BuildContext context, required WidgetBuilder builder, bool barrierDismissible = false, Color? barrierColor, String? barrierLabel, RouteSettings? routeSettings, Constraints? constraints}) → Future< T?> - Displays a MacosSheet above the current application.
Typedefs
-
MacosPopupButtonBuilder
= List<
Widget> Function(BuildContext context) - A builder to customize popup buttons.