JJ_MKVMaker/lib/ui/explorer/explorer_pane.dart

33 lines
996 B
Dart

import 'package:flutter/widgets.dart';
import '../../core/explorer/pane_state.dart';
/// 탐색기 창 하나 (E5d-1): 상태는 [PaneState] (lib/core/explorer), 여기는 화면 부품 (스크롤 · 빠른 필터 칸) 만.
class ExplorerPane extends PaneState {
ExplorerPane(super.root, {super.rsync});
final filterCtl = TextEditingController();
final filterFocus = FocusNode();
@override
String get filter => filterOpen ? filterCtl.text.trim() : '';
/// 목록 스크롤 (폴더로 이동하면 그 폴더가 보이게)
final scroll = ScrollController();
/// "폴더 + 파일 목록" 배치의 오른쪽 파일 목록 스크롤
final listScroll = ScrollController();
/// 202: 창 위 저장 장치 탭 줄 (넘치면 옆으로 - 휠 · 끌기)
final tabScroll = ScrollController();
@override
void dispose() {
scroll.dispose();
listScroll.dispose();
tabScroll.dispose();
filterCtl.dispose();
filterFocus.dispose();
super.dispose();
}
}