Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added Plugin List (#137) #169

Draft
wants to merge 3 commits into
base: develop
Choose a base branch
from
Draft

Added Plugin List (#137) #169

wants to merge 3 commits into from

Conversation

Spartan322
Copy link
Collaborator

@Spartan322 Spartan322 commented May 1, 2022

Mostly handles #137

  • Name
  • Guid
  • Version
  • Load Order
    • Can change load order
      • Prompt for restart on load order change
      • Validate load order change
  • Displaying config path
    • Can open config file
  • Description
    • Can open links
  • Soft Dependencies
  • Hard Dependencies
  • Incompatibles
  • Whether it has an updater, in which case a separate check for updates and update button (for now will only apply to BepInEx.Hacknet, PathfinderAPI, and PathfinderUpdater)
  • Author(s) of the plugin (or Team responsible for the plugin)
  • Website(s) related to the plugin
    • Can open website
  • Plugin list scrolling

This is however crude as there is no text wrapping nor any actual scrolling implemented so there is no way to see offscreen information.

WIP, will post full list of features later.

Added GUI.PluginListScreen for drawing the plugin list
	Adds Plugins button to Main Menu
	Draws plugins based on GUI.PluginInfo
	Needed to add SemanticVersion 2.0.0.0 to PathfinderAPI project
GUI.PluginInfo reads from BepInPlugin, Meta.PluginInfoAttribute, Meta.PluginWebsiteAttribute, BepInDependency, and BepInIncompatibility for plugin information
	Displays load order, is enabled, and allows displaying of plugin image (either set in PluginInfoAttribute.ImagePath or <plugin's guid>.<image extentsion>)
	Does not draw undefined/null elements
Added Event.Menu.DrawMainMenuButtonEvent for detecting and manipulating main menu button draw events.
Added Meta.PluginInfoAttribute for extra plugin metadata
Added Meta.PluginWebsiteAttribute for plugin website listing (is automatically sorted by key in PluginInfo)
Added PluginInfo and PluginWebsite attributes to PathfinderAPIPlugin
Also added PluginInfo and PluginWebsite to PathfinderUpdaterPlugin
Reworked PathfinderUpdater.MainMenuOverride Check and Perform update async methods to allow PFButton assignment
@Spartan322 Spartan322 added Enhancement WIP Work In Progress and removed WIP Work In Progress labels May 1, 2022
@Spartan322 Spartan322 mentioned this pull request May 1, 2022
18 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant