hornbill library

Classes

CodeBlock
Displays a block of code with syntax highlighting, optional line numbers, a language label, and a button to copy the code to the clipboard. Code can be passed directly as a string, loaded from a Flutter asset, or read from a file on disk.
HAppBar
A responsive SliverAppBar.
HAppBarAction
A single action item shown in HAppBar.
HBreadcrumb
Breadcrumb navigation widget for Hornbill UI.
HBreadcrumbItem
A single breadcrumb entry.
HButton
A custom button widget with four style variants: HButton.filled, HButton.outlined, HButton.plain, HButton.tonal.
HCard
HCheckBox
A lightweight checkbox widget built only on package:flutter/widgets.dart.
HCheckboxListItemData
The data for a single row rendered by HCheckboxListView.
HCheckboxListView
A grouped, rounded-corner, multi-select checkbox list.
HChip
HColourScheme
Preset colour schemes for the Hornbill theme. Use like HColourScheme.red, HColourScheme.blue, etc.
HDataCell
A single cell inside an HDataRow.
HDataColumn
A single column definition for HDataTable.
HDataRow
A single row of data in HDataTable.
HDataTable
A data table built from scratch (no DataTable) to support what Flutter's Material table can't:
HDialog
The visual dialog "card" itself.
HDropDownField
HElevatedCard
HFilledCard
HGradientCard
HIconButton
A custom icon-only button widget with four style variants: HIconButton.filled, HIconButton.outlined, HIconButton.plain, HIconButton.tonal.
HListHeader
A small section header, typically placed above an HListView, HRadioListView, or HCheckboxListView to label the group below it.
HListTile
A standalone list tile that can also be rendered by HListView.
HListView
A grouped, rounded-corner list of HListTile rows.
HNavigationBar
A floating, pill-shaped bottom navigation bar with an animated highlight that slides behind the selected item.
HNavigationBarItem
A single destination in an HNavigationBar.
Hornbill
HPageNavigation
HProgressIndicator
A customizable horizontal (linear) progress indicator.
HRadioListItemData<T>
The data for a single row rendered by HRadioListView.
HRadioListView<T>
A grouped, rounded-corner, single-select radio list.
HScaffold
HScaffoldState
Public so callers can open/close the drawer via a GlobalKey<HScaffoldState>, e.g.:
HSideBar
A vertical navigation sidebar that can collapse into a narrow, icon-only rail (similar to NavigationRail) via a toggle button built into the header.
HSideBarAccount
One entry in the "switch account" section of an HSideBarAccountTile's menu.
HSideBarAccountTile
A footer tile for an HSideBar that shows the signed-in account and opens a menu with "switch account" and "log out" actions.
HSideBarItem
A single navigation tile used inside an HSideBar.
HStatusCard
HSwitch
HTab
Describes a single tab's content for HTabBar.
HTabBar
A horizontal, equal-width tab bar with a sliding underline indicator.
HTabController
Drives a paired HTabBar / HTabView, keeping the selected index and the sliding indicator's position in sync between the two.
HTabView
The paged content area paired with an HTabBar via a shared HTabController. Swiping updates the controller's index (the bar's indicator animates into place once the swipe settles); tapping a tab animates the page across.
HTextField
HTheme
HThemeExtension
HToast
Static API for showing stackable toast notifications.

Enums

ChipType
HButtonIconPosition
Position of the icon relative to the label.
HDialogPosition
Where an HDialog should be placed on screen.
HStatus
HToastPosition
Where the toast stack is anchored on screen.
HToastType
Visual style / severity of a toast.

Constants

kHDialogMobileBreakpoint → const double
Screen width (in logical pixels) below which HDialogPosition.auto resolves to HDialogPosition.bottom instead of HDialogPosition.center.

Functions

appBarTheme(ColorScheme scheme, {String? fontFamily, bool outlined = true}) → AppBarTheme
bottomSheetTheme(ColorScheme scheme) → BottomSheetThemeData
cardTheme(ColorScheme scheme, {bool outlined = true}) → CardThemeData
checkboxTheme(ColorScheme scheme) → CheckboxThemeData
dialogTheme(ColorScheme scheme, {bool outlined = true}) → DialogThemeData
filledButtonTheme(ColorScheme scheme) → FilledButtonThemeData
hIsOutlined(BuildContext context) → bool
iconButtonTheme(ColorScheme scheme) → IconButtonThemeData
inputDecorationTheme(ColorScheme scheme) → InputDecorationTheme
listTileTheme(ColorScheme scheme) → ListTileThemeData
outlinedButtonTheme(ColorScheme scheme) → OutlinedButtonThemeData
pageTransitionTheme() → PageTransitionsTheme
popupMenuTheme(ColorScheme scheme, {bool outlined = true}) → PopupMenuThemeData
resolveHDialogPosition(BuildContext context, HDialogPosition position) → HDialogPosition
Resolves HDialogPosition.auto against the current context's width.
searchBarTheme(ColorScheme scheme, {bool outlined = true}) → SearchBarThemeData
segmentedButtonTheme(ColorScheme scheme) → SegmentedButtonThemeData
showHDialog<T>(BuildContext context, {required WidgetBuilder builder, bool barrierDismissible = true, Color barrierColor = const Color(0x8A000000), Duration transitionDuration = const Duration(milliseconds: 220), String barrierLabel = 'Dismiss'}) → Future<T?>
Shows an HDialog as a modal route.
switchTheme(ColorScheme scheme) → SwitchThemeData

Typedefs

HListItemData = HListTile
Compatibility alias for HListTile. Prefer HListTile in new code.