12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- import 'package:fis_lib_report/converts/margin_convert.dart';
- import 'package:fis_lib_report/converts/pt_to_px_converter.dart';
- import 'package:fis_lib_report/pages/helpler.dart';
- import 'package:fis_lib_report/report/inputImageList.dart';
- import 'package:flutter/cupertino.dart';
- import 'package:flutter/material.dart';
- class RInputImageList extends StatefulWidget {
- final InputImageList inputImageList;
- RInputImageList(this.inputImageList);
- @override
- State<StatefulWidget> createState() {
- return _RInputImageListState(inputImageList);
- }
- }
- class _RInputImageListState extends State<RInputImageList> {
- final InputImageList inputImageList;
- _RInputImageListState(this.inputImageList);
- Color _borderColor = Colors.grey;
- bool _isSelected = false;
- bool _hasImageBorder = false;
- @override
- initState() {
- _hasImageBorder = inputImageList.hasImageBorder!;
- super.initState();
- }
- @override
- Widget build(BuildContext context) {
- return MouseRegion(
- cursor: SystemMouseCursors.click,
- child: GestureDetector(
- onTap: () {
- if (_isSelected) {
- setState(() {
- _borderColor = Colors.grey;
- _isSelected = false;
- _hasImageBorder = false;
- });
- } else {
- setState(() {
- _borderColor = Color.fromARGB(255, 64, 159, 248);
- _isSelected = true;
- _hasImageBorder = true;
- });
- }
- },
- child: Container(
- height: PtToPxConverter.ptToPx(inputImageList.imageHeight),
- width: PtToPxConverter.ptToPx(
- inputImageList.imageWidth! * inputImageList.column!),
- alignment: Alignment.center,
- margin: MarginConvert.marginConvert(inputImageList.margin),
- decoration: BoxDecoration(
- border: _hasImageBorder
- ? Border.all(
- width: 0.5,
- color: _borderColor,
- )
- : null,
- color: Colors.transparent),
- child: const Text('请点击此处后选择右侧图片'),
- ),
- ),
- );
- }
- }
|