Containers
Menu
LiqMenu renders a 286pt translucent rounded panel of LiqMenuItem rows.
Sections can be delineated with LiqMenuSectionTitle and LiqMenuSeparator.
Default
import 'package:docs_snippets/src/snippet_frame.dart';import 'package:flutter/material.dart' show Icon, Icons;import 'package:flutter/widgets.dart';import 'package:liqkit_ui/liqkit_ui.dart';/// Snippet builder consumed by `apps/docs_snippets/lib/src/routes.g.dart`.Widget menuDefaultBuilder(BuildContext context) { return SnippetFrame( maxWidth: 380, height: 560, surface: SnippetFrameSurface.liquidThemed, child: LiqMenu( quickActions: <LiqMenuQuickAction>[ LiqMenuQuickAction( label: 'Copy', icon: const Icon(Icons.content_copy_rounded, size: 18), onPressed: () {}, ), LiqMenuQuickAction( label: 'Share', icon: const Icon(Icons.ios_share_rounded, size: 18), onPressed: () {}, ), LiqMenuQuickAction( label: 'Delete', icon: const Icon(Icons.delete_outline_rounded, size: 18), destructive: true, onPressed: () {}, ), ], children: <Widget>[ LiqMenuItem( label: 'Copy', icon: const Icon(Icons.content_copy_rounded), trailing: const Text('Cmd C'), onPressed: () {}, ), LiqMenuItem( label: 'Paste', icon: const Icon(Icons.content_paste_rounded), trailing: const Text('Cmd V'), onPressed: () {}, ), const LiqMenuItem( label: 'Disabled Action', icon: Icon(Icons.crop_square_rounded), trailing: Text('Cmd B'), ), const LiqMenuSeparator(), LiqMenuItem( label: 'Delete', icon: const Icon(Icons.delete_outline_rounded), trailing: const Text('Del'), style: LiqMenuItemStyle.destructive, onPressed: () {}, ), ], ), );}
With Section
// ignore_for_file: file_names // hyphenated name required by snippet manifest conventionimport 'package:docs_snippets/src/snippet_frame.dart';import 'package:flutter/material.dart' show Icon, Icons;import 'package:flutter/widgets.dart';import 'package:liqkit_ui/liqkit_ui.dart';/// Snippet builder consumed by `apps/docs_snippets/lib/src/routes.g.dart`.Widget menuWithSectionBuilder(BuildContext context) { return SnippetFrame( maxWidth: 380, height: 620, surface: SnippetFrameSurface.liquidThemed, child: LiqMenu( quickActions: <LiqMenuQuickAction>[ LiqMenuQuickAction( label: 'Cut', icon: const Icon(Icons.content_cut_rounded, size: 18), onPressed: () {}, ), LiqMenuQuickAction( label: 'Copy', icon: const Icon(Icons.content_copy_rounded, size: 18), selected: true, onPressed: () {}, ), LiqMenuQuickAction( label: 'Paste', icon: const Icon(Icons.content_paste_rounded, size: 18), onPressed: () {}, ), ], children: <Widget>[ const LiqMenuSectionTitle(title: 'Edit'), LiqMenuItem( label: 'Cut', icon: const Icon(Icons.content_cut_rounded), trailing: const Text('Cmd X'), onPressed: () {}, ), LiqMenuItem( label: 'Copy', icon: const Icon(Icons.content_copy_rounded), trailing: const Text('Cmd C'), onPressed: () {}, ), LiqMenuItem( label: 'Paste', icon: const Icon(Icons.content_paste_rounded), trailing: const Text('Cmd V'), onPressed: () {}, ), const LiqMenuSeparator(), const LiqMenuSectionTitle(title: 'Format'), LiqMenuItem( label: 'Bold', icon: const Icon(Icons.format_bold_rounded), trailing: const Text('Cmd B'), onPressed: () {}, ), LiqMenuItem( label: 'Italic', icon: const Icon(Icons.format_italic_rounded), trailing: const Text('Cmd I'), onPressed: () {}, ), ], ), );}
Dropdown
// ignore_for_file: file_namesimport 'package:docs_snippets/src/snippet_frame.dart';import 'package:flutter/widgets.dart';import 'package:liqkit_ui/examples.dart';Widget menuDropdownBuilder(BuildContext context) { return const SnippetFrame(child: MenuDropdownExample());}
Context
// ignore_for_file: file_namesimport 'package:docs_snippets/src/snippet_frame.dart';import 'package:flutter/widgets.dart';import 'package:liqkit_ui/examples.dart';Widget menuContextBuilder(BuildContext context) { return const SnippetFrame(child: MenuContextExample());}
Menu Bar
// ignore_for_file: file_namesimport 'package:docs_snippets/src/snippet_frame.dart';import 'package:flutter/widgets.dart';import 'package:liqkit_ui/examples.dart';Widget menuMenuBarBuilder(BuildContext context) { return const SnippetFrame(child: MenuBarExample());}
Inline
// ignore_for_file: file_namesimport 'package:docs_snippets/src/snippet_frame.dart';import 'package:flutter/widgets.dart';import 'package:liqkit_ui/examples.dart';Widget menuInlineBuilder(BuildContext context) { return const SnippetFrame(child: MenuInlineExample());}