Explorar el Código

[mob] Add popup item widget

Neeraj Gupta hace 1 año
padre
commit
ebed315cb0
Se han modificado 1 ficheros con 38 adiciones y 0 borrados
  1. 38 0
      mobile/lib/ui/common/popup_item.dart

+ 38 - 0
mobile/lib/ui/common/popup_item.dart

@@ -0,0 +1,38 @@
+import 'package:flutter/material.dart';
+
+class EntePopupMenuItem<T> extends PopupMenuItem<T> {
+  final String label;
+  final IconData? icon;
+  final Widget? iconWidget;
+
+  EntePopupMenuItem(
+    this.label, {
+    required T value,
+    this.icon,
+    this.iconWidget,
+    Key? key,
+  })  : assert(
+          icon != null || iconWidget != null,
+          'Either icon or iconWidget must be provided.',
+        ),
+        assert(
+          !(icon != null && iconWidget != null),
+          'Only one of icon or iconWidget can be provided.',
+        ),
+        super(
+          value: value,
+          key: key,
+          child: Row(
+            children: [
+              if (iconWidget != null)
+                iconWidget
+              else if (icon != null)
+                Icon(icon),
+              const Padding(
+                padding: EdgeInsets.all(8),
+              ),
+              Text(label),
+            ],
+          ), // Initially empty, will be populated in build
+        );
+}