- Created generated_plugin_registrant.cc and generated_plugin_registrant.h to manage plugin registration. - Added generated_plugins.cmake for plugin configuration in CMake. - Implemented CMakeLists.txt for the Windows runner, defining build settings and dependencies. - Created Runner.rc for application resources including versioning and icons. - Developed flutter_window.cpp and flutter_window.h to manage the Flutter window lifecycle. - Implemented main.cpp as the entry point for the Windows application. - Added resource.h for resource definitions. - Included app icon in resources. - Created runner.exe.manifest for application settings. - Developed utils.cpp and utils.h for console management and command line argument handling. - Implemented win32_window.cpp and win32_window.h for high DPI-aware window management.
46 lines
1.3 KiB
Dart
46 lines
1.3 KiB
Dart
import 'dart:math';
|
|
|
|
import 'package:marco/controller/my_controller.dart';
|
|
import 'package:marco/helpers/extensions/string.dart';
|
|
import 'package:marco/helpers/widgets/my_text_utils.dart';
|
|
import 'package:marco/model/visitor_by_channels_model.dart';
|
|
import 'package:marco/view/other/basic_table_screen.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
class BasicTableController extends MyController {
|
|
List<Data> datas = Data.factory();
|
|
DataTableSource? data;
|
|
List<VisitorByChannelsModel> visitorByChannel = [];
|
|
|
|
@override
|
|
void onInit() {
|
|
super.onInit();
|
|
VisitorByChannelsModel.dummyList.then((value) {
|
|
visitorByChannel = value;
|
|
update();
|
|
});
|
|
data = MyData(datas);
|
|
}
|
|
|
|
void removeData(index) {
|
|
visitorByChannel.removeAt(index);
|
|
update();
|
|
}
|
|
}
|
|
|
|
class Data {
|
|
final int id, qty;
|
|
final String name;
|
|
final String code;
|
|
final double amount;
|
|
|
|
Data(this.id, this.qty, this.name, this.code, this.amount);
|
|
|
|
static factory([int seeds = 30]) {
|
|
return List.generate(
|
|
seeds,
|
|
(index) => Data(index + 1, Random().nextInt(100), MyTextUtils.getDummyText(2, withStop: false),
|
|
MyTextUtils.getDummyText(1, withStop: false).toLowerCase(), (Random().nextDouble() * 100).toStringAsPrecision(2).toDouble()));
|
|
}
|
|
}
|