| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- import 'package:xterm/utils/hash_values.dart';
- class CellData {
- CellData({
- required this.foreground,
- required this.background,
- required this.flags,
- required this.content,
- });
- factory CellData.empty() {
- return CellData(
- foreground: 0,
- background: 0,
- flags: 0,
- content: 0,
- );
- }
- int foreground;
- int background;
- int flags;
- int content;
- int getHash() {
- return hashValues(foreground, background, flags, content);
- }
- @override
- String toString() {
- return 'CellData{foreground: $foreground, background: $background, flags: $flags, content: $content}';
- }
- }
- abstract class CellAttr {
- static const bold = 1 << 0;
- static const faint = 1 << 1;
- static const italic = 1 << 2;
- static const underline = 1 << 3;
- static const blink = 1 << 4;
- static const inverse = 1 << 5;
- static const invisible = 1 << 6;
- static const strikethrough = 1 << 7;
- }
- abstract class CellColor {
- static const valueMask = 0xFFFFFF;
- static const typeShift = 25;
- static const typeMask = 3 << typeShift;
- static const normal = 0 << typeShift;
- static const named = 1 << typeShift;
- static const palette = 2 << typeShift;
- static const rgb = 3 << typeShift;
- }
- abstract class CellContent {
- static const codepointMask = 0x1fffff;
- static const widthShift = 22;
- // static const widthMask = 3 << widthShift;
- }
|