This package helps you to showcase your project or play with computer OS interface for any kind of projects.
All the functions are ready include in the package such as:
- Window management system
- Customizable toast notifications
- OS-specific functionalities
- Multi-language support
Demo
See real examples:
Table of contents
Run this command:
With Flutter:
flutter pub add os_ui
This will add a line like this to your package's pubspec.yaml with the latest version (and run an implicit flutter pub get):
dependencies:
os_ui: <latest_version>
Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more about it.
Import the package in your code:
import 'package:os_ui/os_ui.dart';
You can use standard os_ui like so :
Os(
osIndentifier: OsIndentifier(
type: OsType.macos,
windowsManagementController:
WindowsManagementController(
applications: [],
),
),
)
If you want to customize it, you can use something like this :
Os(
osIndentifier: OsIndentifier(
type: OsType.macos,
windowsManagementController: WindowsManagementController(
// [dockStyle] make you change the style of the dock
dockStyle: DockStyle(),
// [topBarStyle] make you change the style of the top bar
topBarModel: TopBarModel(),
applications: []),
),
),
Properties of TopBarModel
Property | Type | Description |
---|---|---|
backgroundColor | Color? | The background color of the top bar |
textStyle | TextStyle? | The text style of the top bar |
iconColor | Color? | The color of the icons in the top bar |
barText | String? | The text displayed in the top bar |
popupMenuItemsOnAppleIcon | List | The popup menu items displayed when clicking on the Apple icon |
popupMenuItemColor | Color? | The color of the popup menu items |
popupMenuItemShadowColor | Color? | The color of the shadow of the popup menu items |
popupMenuItemSurfaceTintColor | Color? | The color of the surface of the popup menu items |
listLanguages | List | The list of available languages |
dateFormat | DateFormat? | The date format for the top bar |
Properties of DockStyle
Property | Type | Description |
---|---|---|
backgroundColor | Color? | The background color of the dock |
tooltipBackgroundColor | Color? | The background color of the tooltips in the dock |
tooltipTextStyle | TextStyle? | The text style of the tooltips in the dock |
Properties of WindowsModel
Property | Type | Default Value | Description |
---|---|---|---|
index | int | Auto-incremented | The index of the window |
iconUrl | String | Required | The URL of the window icon (supports network and asset) |
name | String | Required | The name of the window |
iconPosition | AppIconPosition | AppIconPosition.none | The position of the app icon |
size | Size | Required | The size of the window |
style | WindowsModelStyle? | null | The style of the window |
canExpand | bool | true | Whether the window can be expanded |
canMinimized | bool | true | Whether the window can be minimized |
isMinimized | bool | false | Whether the window is minimized |
entryApp | EntryWidgetBuilder? | null | The child widget of the window |
onTap | EntryTapBuilder? | null | The callback function for the "Open" action |
isFullScreen | bool | false | Whether the window is in full screen mode |
isCurrentScreen | bool | true | Whether the window is the current screen |
states | List | [] | The list of states of the window |
isOpenWindow | bool | false | Whether the window is open |
isLaunchpad | bool | false | Whether the window is a launchpad |
enableDragWidgets | bool | true | Whether drag widgets are enabled |
lastPosition | WindowPosition? | null | The last position of the window |
Note: iconUrl
, name
, and size
are required parameters when creating a new WindowsModel instance.