You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
2.3 KiB

import 'package:dde_gesture_manager/constants/constants.dart';
import 'package:dde_gesture_manager/extensions.dart';
4 years ago
import 'package:dde_gesture_manager/models/content_layout.provider.dart';
import 'package:dde_gesture_manager/widgets/dde_button.dart';
4 years ago
import 'package:flutter/animation.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter/painting.dart';
4 years ago
class LocalManager extends StatelessWidget {
const LocalManager({
Key? key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
var isOpen = context.watch<ContentLayoutProvider>().localManagerOpened == true;
return AnimatedContainer(
duration: mediumDuration,
4 years ago
curve: Curves.easeInOut,
width: isOpen ? localManagerPanelWidth : 0,
4 years ago
child: OverflowBox(
alignment: Alignment.centerRight,
maxWidth: localManagerPanelWidth,
minWidth: localManagerPanelWidth,
4 years ago
child: Material(
color: context.t.backgroundColor,
elevation: isOpen ? 10 : 0,
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Container(width: defaultButtonHeight),
Flexible(
child: Center(
child: Text(
"本地方案管理",
textAlign: TextAlign.center,
style: TextStyle(
fontWeight: FontWeight.bold,
),
),
4 years ago
),
),
DButton(
width: defaultButtonHeight - 2,
height: defaultButtonHeight - 2,
onTap: () => context.read<ContentLayoutProvider>().setProps(localManagerOpened: !isOpen),
child: Icon(
CupertinoIcons.chevron_left_2,
size: 20,
),
4 years ago
),
],
),
],
),
4 years ago
),
4 years ago
),
4 years ago
),
);
}
}