AdaptivePresentationDesk<T> class

A staged presentation workspace that coordinates a slide list, a stage preview, and speaker notes from one adaptive model.

Inheritance

Constructors

AdaptivePresentationDesk({Key? key, required List<T> slides, required Widget itemBuilder(BuildContext context, T slide, bool selected, VoidCallback onTap), required Widget stageBuilder(BuildContext context, T slide), required Widget notesBuilder(BuildContext context, T slide), required String listTitle, required String notesTitle, Widget? header, Widget? emptyState, String? listDescription, Widget? listLeading, String? notesDescription, Widget? notesLeading, String modalListLabel = 'Open slides', Widget modalListIcon = const Icon(Icons.view_carousel_outlined), String modalNotesLabel = 'Open notes', Widget modalNotesIcon = const Icon(Icons.sticky_note_2_outlined), AdaptiveSize listDockedAt = AdaptiveSize.medium, AdaptiveSize notesDockedAt = AdaptiveSize.expanded, AdaptiveHeight minimumListDockedHeight = AdaptiveHeight.compact, AdaptiveHeight minimumNotesDockedHeight = AdaptiveHeight.medium, bool useContainerConstraints = true, bool considerOrientation = false, int? selectedIndex, int initialIndex = 0, ValueChanged<int>? onSelectedIndexChanged, double spacing = 16, double itemSpacing = 12, int listFlex = 2, int stageFlex = 4, int notesFlex = 2, EdgeInsetsGeometry listPadding = const EdgeInsets.all(16), EdgeInsetsGeometry stagePadding = const EdgeInsets.all(16), EdgeInsetsGeometry notesPadding = const EdgeInsets.all(16), double modalHeightFactor = 0.72, bool showModalDragHandle = true, bool animateSize = true, Duration animationDuration = const Duration(milliseconds: 250), Curve animationCurve = Curves.easeInOutCubic})
Creates an adaptive presentation desk.
const

Properties

animateSize bool
Whether to animate size changes when the mode changes.
final
animationCurve Curve
Curve used by AnimatedSize and AnimatedSwitcher.
final
animationDuration Duration
Duration used by AnimatedSize and AnimatedSwitcher.
final
considerOrientation bool
Whether orientation should influence container-based breakpoint selection.
final
emptyState Widget?
Optional empty state shown when slides is empty.
final
hashCode int
The hash code for this object.
no setterinherited
Optional header shown above the stage.
final
initialIndex int
Initial selected slide index for uncontrolled usage.
final
itemBuilder Widget Function(BuildContext context, T slide, bool selected, VoidCallback onTap)
Builds an individual slide row or thumbnail.
final
itemSpacing double
Space between adjacent slide items.
final
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
listDescription String?
Optional description shown below listTitle.
final
listDockedAt AdaptiveSize
Semantic size at which the slide list should dock inline.
final
listFlex int
Flex used by the docked list region.
final
listLeading Widget?
Optional leading widget shown beside listTitle.
final
listPadding EdgeInsetsGeometry
Padding applied inside the slide list surface.
final
listTitle String
Title shown above the slide list.
final
minimumListDockedHeight AdaptiveHeight
Minimum height class required before the slide list can dock inline.
final
minimumNotesDockedHeight AdaptiveHeight
Minimum height class required before the notes surface can dock inline.
final
modalHeightFactor double
Height factor used by compact modal sheets.
final
modalListIcon Widget
Icon used by the compact slide-list trigger.
final
modalListLabel String
Label used by the compact slide-list trigger.
final
modalNotesIcon Widget
Icon used by the compact notes trigger.
final
modalNotesLabel String
Label used by the compact notes trigger.
final
notesBuilder Widget Function(BuildContext context, T slide)
Builds the speaker notes for the selected slide.
final
notesDescription String?
Optional description shown below notesTitle.
final
notesDockedAt AdaptiveSize
Semantic size at which the notes surface should dock inline.
final
notesFlex int
Flex used by the docked notes region.
final
notesLeading Widget?
Optional leading widget shown beside notesTitle.
final
notesPadding EdgeInsetsGeometry
Padding applied inside the notes surface.
final
notesTitle String
Title shown above the notes surface.
final
onSelectedIndexChanged ValueChanged<int>?
Called when the selected slide changes.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
selectedIndex int?
Optional controlled selected slide index.
final
showModalDragHandle bool
Whether to show a drag handle in compact modal sheets.
final
slides List<T>
Slides shown in the list.
final
spacing double
Space between adjacent regions.
final
stageBuilder Widget Function(BuildContext context, T slide)
Builds the active stage preview for the selected slide.
final
stageFlex int
Flex used by the stage region.
final
stagePadding EdgeInsetsGeometry
Padding applied inside the stage surface.
final
useContainerConstraints bool
Whether to derive layout decisions from parent constraints.
final

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() State<AdaptivePresentationDesk<T>>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited