- 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.
67 lines
1.7 KiB
Dart
67 lines
1.7 KiB
Dart
import 'dart:async';
|
|
|
|
import 'package:carousel_slider/carousel_controller.dart';
|
|
import 'package:marco/controller/my_controller.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
class CarouselsController extends MyController {
|
|
int simpleCarouselSize = 3, animatedCarouselSize = 3;
|
|
int selectedSimpleCarousel = 0, selectedAnimatedCarousel = 0;
|
|
|
|
CarouselSliderController carouselController = CarouselSliderController();
|
|
|
|
Timer? timerAnimation;
|
|
|
|
final PageController simplePageController = PageController(initialPage: 0);
|
|
final PageController animatedPageController = PageController(initialPage: 0);
|
|
|
|
CarouselsController();
|
|
|
|
@override
|
|
void onInit() {
|
|
super.onInit();
|
|
timerAnimation = Timer.periodic(Duration(seconds: 5), (Timer timer) {
|
|
if (selectedAnimatedCarousel < animatedCarouselSize - 1) {
|
|
selectedAnimatedCarousel++;
|
|
} else {
|
|
selectedAnimatedCarousel = 0;
|
|
}
|
|
|
|
animatedPageController.animateToPage(
|
|
selectedAnimatedCarousel,
|
|
duration: Duration(milliseconds: 600),
|
|
curve: Curves.ease,
|
|
);
|
|
update();
|
|
});
|
|
}
|
|
|
|
void onChangeNext() {
|
|
carouselController.nextPage(duration: Duration(milliseconds: 600), curve: Curves.ease);
|
|
update();
|
|
}
|
|
|
|
void onChangePreview() {
|
|
carouselController.previousPage(duration: Duration(milliseconds: 600), curve: Curves.ease);
|
|
update();
|
|
}
|
|
|
|
void onChangeSimpleCarousel(int value) {
|
|
selectedSimpleCarousel = value;
|
|
update();
|
|
}
|
|
|
|
void onChangeAnimatedCarousel(int value) {
|
|
selectedAnimatedCarousel = value;
|
|
update();
|
|
}
|
|
|
|
@override
|
|
void dispose() {
|
|
super.dispose();
|
|
timerAnimation?.cancel();
|
|
simplePageController.dispose();
|
|
animatedPageController.dispose();
|
|
}
|
|
}
|