Skip to content
This repository has been archived by the owner on Dec 6, 2024. It is now read-only.

Preset Editor #121

Open
axross opened this issue Nov 19, 2019 · 0 comments
Open

Preset Editor #121

axross opened this issue Nov 19, 2019 · 0 comments
Assignees
Labels

Comments

@axross
Copy link
Owner

axross commented Nov 19, 2019

What happens to users?

  • Users can add their own hand range presets
  • Users can delete the created hand range presets
  • Users can update the created hand range presets
  • Users can add a group to organize hand range presets
  • Users can delete a group of hand range presets
  • Users can change the name of groups
  • Users can sort the created hand range presets
  • Users can sort hand range presets in a group
  • The created hand range presets are saved in the device

What's not included? (Anti-Todos)

  • Users cannot delete pre-installed hand range presets
  • Users cannot sort pre-installed hand range presets
  • Pre-installed hand range presets are always in the last
  • The created hand range presets will not be synced across devices

Models

class HandRangePresetGroup {
  final String name;
  final List<HandRangePreset> presets;
}
class HandRangePreset {
  final String name;
  final Set<HandRangePart> parts;
}

View Models

class PresetListEdit extends ChangeNotifier {
  final List<HandRangePresetGroup> groups;

  bool isLoading;

  void deleteGroupAt(int index);

  void deletePreset({int groupIndex, int presetIndex});

  void addPresetToGroupAt(int groupIndex, {@required HandRangePreset preset});

  void updatePresetAt(int index, HandRangePreset newPreset);

  void swapGroups(int aIndex, int bIndex);

  void swapPresets(int groupIndex, int aPresetIndex, int bPresetIndex);

  Future<void> _savePresets();

  Future<void> loadSavedPresets();

  Future<void> finalize();
}
@axross axross self-assigned this Nov 19, 2019
@axross axross added the Epic label Jul 16, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

1 participant