Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions package/lib/src/controls/bottom_sheet.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import '../actions.dart';
import '../flet_app_services.dart';
import '../models/control.dart';
import '../protocol/update_control_props_payload.dart';
import '../utils/colors.dart';
import 'create_control.dart';
import 'error.dart';

Expand Down Expand Up @@ -95,6 +96,9 @@ class _BottomSheetControlState extends State<BottomSheetControl> {
return content;
},
isDismissible: dismissible,
backgroundColor: HexColor.fromString(Theme.of(context),
widget.control.attrString("bgColor", "")!),
elevation: widget.control.attrDouble("elevation"),
isScrollControlled: isScrollControlled,
enableDrag: enableDrag,
showDragHandle: showDragHandle,
Expand Down
2 changes: 2 additions & 0 deletions package/lib/src/controls/card.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import 'package:flutter/material.dart';

import '../models/control.dart';
import '../utils/borders.dart';
import '../utils/colors.dart';
import '../utils/edge_insets.dart';
import 'create_control.dart';
Expand Down Expand Up @@ -31,6 +32,7 @@ class CardControl extends StatelessWidget {
context,
Card(
elevation: control.attrDouble("elevation"),
shape: parseOutlinedBorder(control, "shape"),
margin: parseEdgeInsets(control, "margin"),
color: HexColor.fromString(
Theme.of(context), control.attrString("color", "")!),
Expand Down
1 change: 1 addition & 0 deletions package/lib/src/controls/navigation_bar.dart
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ class _NavigationBarControlState extends State<NavigationBarControl> {
.where((c) => c.name == "selected_icon_content");

return NavigationDestination(
tooltip: destView.control.attrString("tooltip", "")!,
icon: iconContentCtrls.isNotEmpty
? createControl(destView.control,
iconContentCtrls.first.id, disabled)
Expand Down
5 changes: 5 additions & 0 deletions package/lib/src/controls/navigation_rail.dart
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import '../models/app_state.dart';
import '../models/control.dart';
import '../models/controls_view_model.dart';
import '../protocol/update_control_props_payload.dart';
import '../utils/borders.dart';
import '../utils/colors.dart';
import '../utils/edge_insets.dart';
import '../utils/icons.dart';
Expand Down Expand Up @@ -103,12 +104,16 @@ class _NavigationRailControlState extends State<NavigationRailControl> {
labelType:
extended ? NavigationRailLabelType.none : labelType,
extended: extended,
elevation: widget.control.attrDouble("elevation", 0),
indicatorShape: parseOutlinedBorder(widget.control, "indicatorShape"),
minWidth: widget.control.attrDouble("minWidth"),
minExtendedWidth:
widget.control.attrDouble("minExtendedWidth"),
groupAlignment: widget.control.attrDouble("groupAlignment"),
backgroundColor: HexColor.fromString(Theme.of(context),
widget.control.attrString("bgColor", "")!),
indicatorColor: HexColor.fromString(Theme.of(context),
widget.control.attrString("indicatorColor", "")!),
leading: leadingCtrls.isNotEmpty
? createControl(
widget.control, leadingCtrls.first.id, disabled)
Expand Down
24 changes: 23 additions & 1 deletion sdk/python/packages/flet-core/src/flet_core/bottom_sheet.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from typing import Any, List, Optional

from flet_core.control import Control
from flet_core.control import Control, OptionalNumber
from flet_core.ref import Ref


Expand Down Expand Up @@ -60,6 +60,8 @@ def __init__(
# Specific
#
open: bool = False,
elevation: OptionalNumber = None,
bgcolor: Optional[str] = None,
dismissible: Optional[bool] = None,
enable_drag: Optional[bool] = None,
show_drag_handle: Optional[bool] = None,
Expand All @@ -79,6 +81,8 @@ def __init__(
self.__content: Optional[Control] = None

self.open = open
self.elevation = elevation
self.bgcolor = bgcolor
self.dismissible = dismissible
self.enable_drag = enable_drag
self.show_drag_handle = show_drag_handle
Expand Down Expand Up @@ -107,6 +111,24 @@ def open(self) -> Optional[bool]:
def open(self, value: Optional[bool]):
self._set_attr("open", value)

# elevation
@property
def elevation(self) -> OptionalNumber:
return self._get_attr("elevation")

@elevation.setter
def elevation(self, value: OptionalNumber):
self._set_attr("elevation", value)

# bgcolor
@property
def bgcolor(self):
return self._get_attr("bgColor")

@bgcolor.setter
def bgcolor(self, value):
self._set_attr("bgColor", value)

# dismissible
@property
def dismissible(self) -> Optional[bool]:
Expand Down
13 changes: 13 additions & 0 deletions sdk/python/packages/flet-core/src/flet_core/card.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
from typing import Any, Optional, Union

from flet_core import OutlinedBorder
from flet_core.constrained_control import ConstrainedControl
from flet_core.control import Control, OptionalNumber
from flet_core.ref import Ref
Expand Down Expand Up @@ -93,6 +94,7 @@ def __init__(
color: Optional[str] = None,
shadow_color: Optional[str] = None,
surface_tint_color: Optional[str] = None,
shape: Optional[OutlinedBorder] = None,
):
ConstrainedControl.__init__(
self,
Expand Down Expand Up @@ -130,13 +132,15 @@ def __init__(
self.color = color
self.shadow_color = shadow_color
self.surface_tint_color = surface_tint_color
self.shape = shape

def _get_control_name(self):
return "card"

def _before_build_command(self):
super()._before_build_command()
self._set_attr_json("margin", self.__margin)
self._set_attr_json("shape", self.__shape)

def _get_children(self):
children = []
Expand Down Expand Up @@ -190,6 +194,15 @@ def surface_tint_color(self):
def surface_tint_color(self, value):
self._set_attr("surfaceTintColor", value)

# shape
@property
def shape(self) -> Optional[OutlinedBorder]:
return self.__shape

@shape.setter
def shape(self, value: Optional[OutlinedBorder]):
self.__shape = value

# content
@property
def content(self) -> Optional[Control]:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,9 @@ def __init__(
selected_icon: Optional[str] = None,
selected_icon_content: Optional[Control] = None,
label: Optional[str] = None,
tooltip: Optional[str] = None,
):
Control.__init__(self, ref=ref)
Control.__init__(self, ref=ref, tooltip=tooltip)
self.label = label
self.icon = icon
self.__icon_content: Optional[Control] = None
Expand Down
38 changes: 38 additions & 0 deletions sdk/python/packages/flet-core/src/flet_core/navigation_rail.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from enum import Enum
from typing import Any, List, Optional, Union

from flet_core import OutlinedBorder
from flet_core.constrained_control import ConstrainedControl
from flet_core.control import Control, OptionalNumber
from flet_core.ref import Ref
Expand Down Expand Up @@ -222,10 +223,13 @@ def __init__(
#
# NavigationRail-specific
destinations: Optional[List[NavigationRailDestination]] = None,
elevation: OptionalNumber = None,
selected_index: Optional[int] = None,
extended: Optional[bool] = None,
label_type: Optional[NavigationRailLabelType] = None,
bgcolor: Optional[str] = None,
indicator_color: Optional[str] = None,
indicator_shape: Optional[OutlinedBorder] = None,
leading: Optional[Control] = None,
trailing: Optional[Control] = None,
min_width: OptionalNumber = None,
Expand Down Expand Up @@ -263,9 +267,12 @@ def __init__(

self.destinations = destinations
self.selected_index = selected_index
self.elevation = elevation
self.extended = extended
self.label_type = label_type
self.bgcolor = bgcolor
self.indicator_color = indicator_color
self.indicator_shape = indicator_shape
self.__leading = None
self.leading = leading
self.__trailing = trailing
Expand All @@ -278,6 +285,10 @@ def __init__(
def _get_control_name(self):
return "navigationrail"

def _before_build_command(self):
super()._before_build_command()
self._set_attr_json("indicatorShape", self.__indicator_shape)

def _get_children(self):
children = []
if self.__leading:
Expand Down Expand Up @@ -332,6 +343,24 @@ def label_type(self, value: Optional[NavigationRailLabelType]):
def __set_label_type(self, value: NavigationRailLabelTypeString):
self._set_attr("labelType", value)

# indicator_shape
@property
def indicator_shape(self) -> Optional[OutlinedBorder]:
return self.__indicator_shape

@indicator_shape.setter
def indicator_shape(self, value: Optional[OutlinedBorder]):
self.__indicator_shape = value

# indicator_color
@property
def indicator_color(self):
return self._get_attr("indicatorColor")

@indicator_color.setter
def indicator_color(self, value):
self._set_attr("indicatorColor", value)

# bgcolor
@property
def bgcolor(self):
Expand All @@ -341,6 +370,15 @@ def bgcolor(self):
def bgcolor(self, value):
self._set_attr("bgcolor", value)

# elevation
@property
def elevation(self) -> OptionalNumber:
return self._get_attr("elevation")

@elevation.setter
def elevation(self, value: OptionalNumber):
self._set_attr("elevation", value)

# extended
@property
def extended(self) -> Optional[bool]:
Expand Down