Apply dart autofixes
This commit is contained in:
parent
6fdcbb05c4
commit
c15f0e7986
16 changed files with 92 additions and 89 deletions
|
@ -7,7 +7,7 @@ import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
|
|
||||||
class Editor extends StatefulWidget {
|
class Editor extends StatefulWidget {
|
||||||
Editor({super.key});
|
const Editor({super.key});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
EditorState createState() => EditorState();
|
EditorState createState() => EditorState();
|
||||||
|
@ -22,8 +22,9 @@ class EditorState extends State<Editor> {
|
||||||
String appendCompressed() {
|
String appendCompressed() {
|
||||||
if (compressed) {
|
if (compressed) {
|
||||||
return " - Compressed";
|
return " - Compressed";
|
||||||
} else
|
} else {
|
||||||
return "";
|
return "";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
@ -38,7 +39,7 @@ class EditorState extends State<Editor> {
|
||||||
drawer: Drawer(
|
drawer: Drawer(
|
||||||
backgroundColor: Constants.DRAWER_COLOR,
|
backgroundColor: Constants.DRAWER_COLOR,
|
||||||
child: Column(children: [
|
child: Column(children: [
|
||||||
DrawerHeader(
|
const DrawerHeader(
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
Text("Named Binary Tag Editor"),
|
Text("Named Binary Tag Editor"),
|
||||||
|
@ -46,9 +47,9 @@ class EditorState extends State<Editor> {
|
||||||
],
|
],
|
||||||
)),
|
)),
|
||||||
ListTile(
|
ListTile(
|
||||||
title: Text("N E W"),
|
title: const Text("N E W"),
|
||||||
subtitle: Text("Create a new NBT Document"),
|
subtitle: const Text("Create a new NBT Document"),
|
||||||
leading: Icon(Icons.add),
|
leading: const Icon(Icons.add),
|
||||||
onTap: () {
|
onTap: () {
|
||||||
setState(() {
|
setState(() {
|
||||||
nodes.clear();
|
nodes.clear();
|
||||||
|
@ -60,9 +61,9 @@ class EditorState extends State<Editor> {
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
ListTile(
|
ListTile(
|
||||||
title: Text("O P E N"),
|
title: const Text("O P E N"),
|
||||||
leading: Icon(Icons.folder),
|
leading: const Icon(Icons.folder),
|
||||||
subtitle: Text("Open an existing NBT Document for editing"),
|
subtitle: const Text("Open an existing NBT Document for editing"),
|
||||||
onTap: () async {
|
onTap: () async {
|
||||||
FilePickerResult? result = await FilePicker.platform.pickFiles();
|
FilePickerResult? result = await FilePicker.platform.pickFiles();
|
||||||
String? filePath;
|
String? filePath;
|
||||||
|
@ -103,6 +104,8 @@ class EditorState extends State<Editor> {
|
||||||
}
|
}
|
||||||
|
|
||||||
class FileSelectionScreen extends StatelessWidget {
|
class FileSelectionScreen extends StatelessWidget {
|
||||||
|
const FileSelectionScreen({super.key});
|
||||||
|
|
||||||
Future<void> openFilePicker(BuildContext context) async {
|
Future<void> openFilePicker(BuildContext context) async {
|
||||||
try {} catch (e) {
|
try {} catch (e) {
|
||||||
// Handle errors
|
// Handle errors
|
||||||
|
@ -116,12 +119,12 @@ class FileSelectionScreen extends StatelessWidget {
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
title: Text('File Selection'),
|
title: const Text('File Selection'),
|
||||||
),
|
),
|
||||||
body: Center(
|
body: Center(
|
||||||
child: ElevatedButton(
|
child: ElevatedButton(
|
||||||
onPressed: () => openFilePicker(context),
|
onPressed: () => openFilePicker(context),
|
||||||
child: Text('Select File'),
|
child: const Text('Select File'),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
|
@ -13,8 +13,8 @@ class MainApp extends StatelessWidget {
|
||||||
return MaterialApp(
|
return MaterialApp(
|
||||||
theme: ThemeData.dark(),
|
theme: ThemeData.dark(),
|
||||||
routes: {
|
routes: {
|
||||||
"/": (context) => Editor(),
|
"/": (context) => const Editor(),
|
||||||
"/select_file": (context) => FileSelectionScreen()
|
"/select_file": (context) => const FileSelectionScreen()
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,19 +1,18 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
import 'package:nbteditor/tags/TagType.dart';
|
import 'package:nbteditor/tags/TagType.dart';
|
||||||
|
|
||||||
class ByteArrayTag extends Tag {
|
class ByteArrayTag extends Tag {
|
||||||
List<int> _value = [];
|
final List<int> _value = [];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Node getNode(String path) {
|
Node getNode(String path) {
|
||||||
List<Node> entries = [];
|
List<Node> entries = [];
|
||||||
int count = 0;
|
int count = 0;
|
||||||
for (var element in _value) {
|
for (var element in _value) {
|
||||||
entries.add(Node(key: "$path/${count}", label: "${element}"));
|
entries.add(Node(key: "$path/$count", label: "$element"));
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,7 +35,7 @@ class ByteArrayTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_ByteArray (${Name})"),
|
title: Text("TAG_ByteArray ($Name)"),
|
||||||
subtitle: Text("${_value.length} entries"),
|
subtitle: Text("${_value.length} entries"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
|
@ -10,7 +9,7 @@ class ByteTag extends Tag {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Node getNode(String path) {
|
Node getNode(String path) {
|
||||||
return Node(key: path, label: "TAG_Byte ${Name}", data: this);
|
return Node(key: path, label: "TAG_Byte $Name", data: this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
@ -20,14 +19,14 @@ class ByteTag extends Tag {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void readValue(ByteLayer layer) {
|
void readValue(ByteLayer layer) {
|
||||||
this._value = layer.readByte();
|
_value = layer.readByte();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_Byte (${Name})"),
|
title: Text("TAG_Byte ($Name)"),
|
||||||
subtitle: Text("${_value}"),
|
subtitle: Text("$_value"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -43,7 +42,7 @@ class ByteTag extends Tag {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void writeValue(ByteLayer layer) {
|
void writeValue(ByteLayer layer) {
|
||||||
layer.writeByte(this._value);
|
layer.writeByte(_value);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
|
@ -6,8 +6,8 @@ import 'package:nbteditor/tags/TagType.dart';
|
||||||
import 'package:uuid/v4.dart';
|
import 'package:uuid/v4.dart';
|
||||||
|
|
||||||
class CompoundTag extends Tag {
|
class CompoundTag extends Tag {
|
||||||
UuidV4 v4 = UuidV4();
|
UuidV4 v4 = const UuidV4();
|
||||||
Map<String, Tag> _children = {};
|
final Map<String, Tag> _children = {};
|
||||||
|
|
||||||
CompoundTag() {
|
CompoundTag() {
|
||||||
setKey(v4.generate());
|
setKey(v4.generate());
|
||||||
|
@ -18,7 +18,7 @@ class CompoundTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_Compound (${Name})"),
|
title: Text("TAG_Compound ($Name)"),
|
||||||
subtitle:
|
subtitle:
|
||||||
Text("${_children.length} tag${_children.length > 1 ? "s" : ""}"),
|
Text("${_children.length} tag${_children.length > 1 ? "s" : ""}"),
|
||||||
);
|
);
|
||||||
|
@ -29,7 +29,7 @@ class CompoundTag extends Tag {
|
||||||
List<Node> childTags = [];
|
List<Node> childTags = [];
|
||||||
|
|
||||||
for (var element in _children.entries) {
|
for (var element in _children.entries) {
|
||||||
childTags.add(element.value.getNode(path + "/${element.key}"));
|
childTags.add(element.value.getNode("$path/${element.key}"));
|
||||||
}
|
}
|
||||||
Node me = Node(key: path, label: Name, data: this, children: childTags);
|
Node me = Node(key: path, label: Name, data: this, children: childTags);
|
||||||
return me;
|
return me;
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
|
@ -26,8 +25,8 @@ class DoubleTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_Double (${Name})"),
|
title: Text("TAG_Double ($Name)"),
|
||||||
subtitle: Text("${_value}"),
|
subtitle: Text("$_value"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
|
@ -26,8 +25,8 @@ class FloatTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_Float (${Name})"),
|
title: Text("TAG_Float ($Name)"),
|
||||||
subtitle: Text("${_value}"),
|
subtitle: Text("$_value"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,19 +1,18 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
import 'package:nbteditor/tags/TagType.dart';
|
import 'package:nbteditor/tags/TagType.dart';
|
||||||
|
|
||||||
class IntArrayTag extends Tag {
|
class IntArrayTag extends Tag {
|
||||||
List<int> _value = [];
|
final List<int> _value = [];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Node getNode(String path) {
|
Node getNode(String path) {
|
||||||
List<Node> entries = [];
|
List<Node> entries = [];
|
||||||
int count = 0;
|
int count = 0;
|
||||||
for (var element in _value) {
|
for (var element in _value) {
|
||||||
entries.add(Node(key: "$path/${count}", label: "${element}"));
|
entries.add(Node(key: "$path/$count", label: "$element"));
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,7 +35,7 @@ class IntArrayTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_IntArray (${Name})"),
|
title: Text("TAG_IntArray ($Name)"),
|
||||||
subtitle: Text("${_value.length} entries"),
|
subtitle: Text("${_value.length} entries"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
|
@ -25,8 +24,8 @@ class IntTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_Int (${Name})"),
|
title: Text("TAG_Int ($Name)"),
|
||||||
subtitle: Text("${_value}"),
|
subtitle: Text("$_value"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,11 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
import 'package:nbteditor/tags/TagType.dart';
|
import 'package:nbteditor/tags/TagType.dart';
|
||||||
|
|
||||||
class ListTag extends Tag {
|
class ListTag extends Tag {
|
||||||
List<Tag> _value = [];
|
final List<Tag> _value = [];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Node getNode(String path) {
|
Node getNode(String path) {
|
||||||
|
@ -27,7 +26,7 @@ class ListTag extends Tag {
|
||||||
}
|
}
|
||||||
|
|
||||||
bool add(Tag tag) {
|
bool add(Tag tag) {
|
||||||
if (_value.length > 0) {
|
if (_value.isNotEmpty) {
|
||||||
if (tag.getTagType() == _value[0].getTagType()) {
|
if (tag.getTagType() == _value[0].getTagType()) {
|
||||||
_value.add(tag);
|
_value.add(tag);
|
||||||
|
|
||||||
|
@ -56,7 +55,7 @@ class ListTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_List (${Name}) (${getListTagType()})"),
|
title: Text("TAG_List ($Name) (${getListTagType()})"),
|
||||||
subtitle: Text("${_value.length} entries"),
|
subtitle: Text("${_value.length} entries"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -72,15 +71,16 @@ class ListTag extends Tag {
|
||||||
}
|
}
|
||||||
|
|
||||||
TagType getListTagType() {
|
TagType getListTagType() {
|
||||||
if (_value.length > 0) {
|
if (_value.isNotEmpty) {
|
||||||
return TagType.End;
|
return TagType.End;
|
||||||
} else
|
} else {
|
||||||
return _value[0].getTagType();
|
return _value[0].getTagType();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void writeValue(ByteLayer layer) {
|
void writeValue(ByteLayer layer) {
|
||||||
if (_value.length > 0) {
|
if (_value.isNotEmpty) {
|
||||||
_value[0].writeTagType(layer);
|
_value[0].writeTagType(layer);
|
||||||
} else {
|
} else {
|
||||||
layer.writeByte(TagType.End.toByte());
|
layer.writeByte(TagType.End.toByte());
|
||||||
|
|
|
@ -1,19 +1,18 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
import 'package:nbteditor/tags/TagType.dart';
|
import 'package:nbteditor/tags/TagType.dart';
|
||||||
|
|
||||||
class LongArrayTag extends Tag {
|
class LongArrayTag extends Tag {
|
||||||
List<int> _value = [];
|
final List<int> _value = [];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Node getNode(String path) {
|
Node getNode(String path) {
|
||||||
List<Node> entries = [];
|
List<Node> entries = [];
|
||||||
int count = 0;
|
int count = 0;
|
||||||
for (var element in _value) {
|
for (var element in _value) {
|
||||||
entries.add(Node(key: "$path/${count}", label: "${element}"));
|
entries.add(Node(key: "$path/$count", label: "$element"));
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,7 +35,7 @@ class LongArrayTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_LongArray (${Name})"),
|
title: Text("TAG_LongArray ($Name)"),
|
||||||
subtitle: Text("${_value.length} entries"),
|
subtitle: Text("${_value.length} entries"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
|
@ -26,8 +25,8 @@ class LongTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_Long (${Name})"),
|
title: Text("TAG_Long ($Name)"),
|
||||||
subtitle: Text("${_value}"),
|
subtitle: Text("$_value"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
import 'dart:ffi';
|
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
|
@ -26,8 +25,8 @@ class ShortTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_Short (${Name})"),
|
title: Text("TAG_Short ($Name)"),
|
||||||
subtitle: Text("${_value}"),
|
subtitle: Text("$_value"),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
|
||||||
import 'package:flutter_treeview/src/models/node.dart';
|
import 'package:flutter_treeview/src/models/node.dart';
|
||||||
import 'package:nbteditor/tags/NbtIo.dart';
|
import 'package:nbteditor/tags/NbtIo.dart';
|
||||||
import 'package:nbteditor/tags/Tag.dart';
|
import 'package:nbteditor/tags/Tag.dart';
|
||||||
|
@ -9,7 +8,7 @@ class StringTag extends Tag {
|
||||||
String _value = "";
|
String _value = "";
|
||||||
@override
|
@override
|
||||||
Node getNode(String path) {
|
Node getNode(String path) {
|
||||||
return Node(key: path, label: "$_value", data: this);
|
return Node(key: path, label: _value, data: this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
@ -25,8 +24,8 @@ class StringTag extends Tag {
|
||||||
@override
|
@override
|
||||||
Widget render() {
|
Widget render() {
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("TAG_String (${Name})"),
|
title: Text("TAG_String ($Name)"),
|
||||||
subtitle: Text("${_value}"),
|
subtitle: Text(_value),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
import 'dart:ffi';
|
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_treeview/flutter_treeview.dart';
|
import 'package:flutter_treeview/flutter_treeview.dart';
|
||||||
|
@ -32,87 +31,99 @@ abstract class Tag {
|
||||||
Node getNode(String path);
|
Node getNode(String path);
|
||||||
|
|
||||||
ByteTag asByte() {
|
ByteTag asByte() {
|
||||||
if (this is ByteTag)
|
if (this is ByteTag) {
|
||||||
return this as ByteTag;
|
return this as ByteTag;
|
||||||
else
|
} else {
|
||||||
return ByteTag();
|
return ByteTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ShortTag asShort() {
|
ShortTag asShort() {
|
||||||
if (this is ShortTag)
|
if (this is ShortTag) {
|
||||||
return this as ShortTag;
|
return this as ShortTag;
|
||||||
else
|
} else {
|
||||||
return ShortTag();
|
return ShortTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
IntTag asInt() {
|
IntTag asInt() {
|
||||||
if (this is IntTag)
|
if (this is IntTag) {
|
||||||
return this as IntTag;
|
return this as IntTag;
|
||||||
else
|
} else {
|
||||||
return IntTag();
|
return IntTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
LongTag asLong() {
|
LongTag asLong() {
|
||||||
if (this is LongTag)
|
if (this is LongTag) {
|
||||||
return this as LongTag;
|
return this as LongTag;
|
||||||
else
|
} else {
|
||||||
return LongTag();
|
return LongTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
FloatTag asFloat() {
|
FloatTag asFloat() {
|
||||||
if (this is FloatTag)
|
if (this is FloatTag) {
|
||||||
return this as FloatTag;
|
return this as FloatTag;
|
||||||
else
|
} else {
|
||||||
return FloatTag();
|
return FloatTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
DoubleTag asDouble() {
|
DoubleTag asDouble() {
|
||||||
if (this is DoubleTag)
|
if (this is DoubleTag) {
|
||||||
return this as DoubleTag;
|
return this as DoubleTag;
|
||||||
else
|
} else {
|
||||||
return DoubleTag();
|
return DoubleTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ByteArrayTag asByteArray() {
|
ByteArrayTag asByteArray() {
|
||||||
if (this is ByteArrayTag)
|
if (this is ByteArrayTag) {
|
||||||
return this as ByteArrayTag;
|
return this as ByteArrayTag;
|
||||||
else
|
} else {
|
||||||
return ByteArrayTag();
|
return ByteArrayTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
StringTag asString() {
|
StringTag asString() {
|
||||||
if (this is StringTag)
|
if (this is StringTag) {
|
||||||
return this as StringTag;
|
return this as StringTag;
|
||||||
else
|
} else {
|
||||||
return StringTag();
|
return StringTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ListTag asListTag() {
|
ListTag asListTag() {
|
||||||
if (this is ListTag)
|
if (this is ListTag) {
|
||||||
return this as ListTag;
|
return this as ListTag;
|
||||||
else
|
} else {
|
||||||
return ListTag();
|
return ListTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CompoundTag asCompoundTag() {
|
CompoundTag asCompoundTag() {
|
||||||
if (this is CompoundTag)
|
if (this is CompoundTag) {
|
||||||
return this as CompoundTag;
|
return this as CompoundTag;
|
||||||
else
|
} else {
|
||||||
return CompoundTag();
|
return CompoundTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
IntArrayTag asIntArrayTag() {
|
IntArrayTag asIntArrayTag() {
|
||||||
if (this is IntArrayTag)
|
if (this is IntArrayTag) {
|
||||||
return this as IntArrayTag;
|
return this as IntArrayTag;
|
||||||
else
|
} else {
|
||||||
return IntArrayTag();
|
return IntArrayTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
LongArrayTag asLongArrayTag() {
|
LongArrayTag asLongArrayTag() {
|
||||||
if (this is LongArrayTag)
|
if (this is LongArrayTag) {
|
||||||
return this as LongArrayTag;
|
return this as LongArrayTag;
|
||||||
else
|
} else {
|
||||||
return LongArrayTag();
|
return LongArrayTag();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Tag withNick(String name) {
|
Tag withNick(String name) {
|
||||||
|
@ -195,13 +206,13 @@ abstract class Tag {
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
print(
|
print(
|
||||||
"Unknown tag: ${tagType}, aborting read at ${layer.currentPosition - 1} bytes");
|
"Unknown tag: $tagType, aborting read at ${layer.currentPosition - 1} bytes");
|
||||||
|
|
||||||
throw Exception("Unknown tag, could not deserialize");
|
throw Exception("Unknown tag, could not deserialize");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
print("Read ${tagType}");
|
print("Read $tagType");
|
||||||
|
|
||||||
if (!isList) tag.readHeader(layer);
|
if (!isList) tag.readHeader(layer);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue