Commit Graph

9 Commits

Author SHA1 Message Date
hunteraraujo
51ebe2407d Integrate TaskQueueViewModel throughout application 2023-10-08 22:34:52 -07:00
hunteraraujo
3d4307a848 Added SkillTreeType enum and implemented dropdown selection in SkillTreeView
- Introduced a new `SkillTreeType` enum to represent different skill tree categories: General, Coding, Data, and Scrape/Synthesize.
- Extended the `SkillTreeType` enum to provide associated string values and JSON file names for each category.
- Refactored the `SkillTreeViewModel` to reload the skill tree data based on the selected category.
- Enhanced `SkillTreeView` by adding a positioned dropdown in the top-left corner to allow users to select and load different skill tree categories dynamically.
2023-09-25 23:08:24 -07:00
hunteraraujo
45819e68d0 Use SugiyamaAlgorithm instead of BuchheimWalkerAlgorithm for skill tree 2023-09-22 16:20:04 -07:00
hunteraraujo
a7bb335752 Enhance SkillTreeView with Asynchronous Initialization and Node Mapping
This commit refactors the SkillTreeView class to include asynchronous initialization through FutureBuilder. The new version also replaces the integer-based node IDs with string-based IDs, aligning better with the SkillTreeNode model. The code now clears previous graph nodes and edges before adding new ones, preventing duplication. Additionally, the TreeNodeView component is now populated dynamically with data from the SkillTreeNode model, making the tree view more robust and integrated.
2023-09-13 17:50:53 -07:00
hunteraraujo
01b2892775 Remove comments 2023-09-13 17:47:17 -07:00
hunteraraujo
876fe5a590 Refactor TreeNodeView to Use Stateful Widget and Add Interactivity
This commit updates the TreeNodeView class from a stateless widget to a stateful widget to handle hover interactions. The new version also replaces the old simple text-based representation with a more interactive and visually appealing design that includes icons and hover effects. The SkillTreeNode model is now used to populate the node information, making the TreeNodeView more dynamic and integrated with the rest of the application.
2023-09-13 17:43:32 -07:00
hunteraraujo
70a05ec82a Replace Placeholder SkillTreeView with Full Implementation
This commit replaces the placeholder implementation of the SkillTreeView class with a complete, functional version.

Features:
- Initializes the skill tree from the SkillTreeViewModel during `initState`.
- Dynamically creates Node and Edge objects for GraphView based on ViewModel data.
- Utilizes the TreeNodeView to render individual nodes.
- Integrates node selection functionality from the ViewModel.
- Adds InteractiveViewer for zoom and pan capabilities.

The new SkillTreeView is designed to work closely with SkillTreeViewModel to manage and display the skill tree.
2023-09-10 14:42:15 -07:00
hunteraraujo
90e73b83a1 Implement TreeNodeView with selection functionality
This commit adds the TreeNodeView class, a StatelessWidget responsible for rendering individual nodes in the skill tree.

Features:
- Displays the node ID in the view.
- Uses the Provider package to interact with the SkillTreeViewModel.
- Includes an onTap method to toggle node selection state.
- Updates the UI to reflect the selected state by changing the background color.

The TreeNodeView is designed to work in conjunction with SkillTreeViewModel to manage node selection states.
2023-09-10 14:33:42 -07:00
hunteraraujo
b00be97030 Create placeholder SkillTreeView 2023-09-08 08:53:49 -07:00