7#include <unordered_map>
32 bool IsOpen()
const {
return mIsOpen; }
40 void DrawAddonBrowser();
41 void DrawInstalledAddons();
42 void DrawRepositoryManager();
43 void DrawAddonCard(
const Addon& addon,
float cardWidth);
44 void DrawAddonDetailsPopup();
45 void DrawAddRepoPopup();
48 void DrawViewModeToggle();
49 void DrawAddonTable_Browse(
const std::vector<const Addon*>& filtered);
50 void DrawAddonTable_Installed(
const std::vector<InstalledAddon>& installed);
51 void DrawClampedName(
const char* name,
float maxWidth);
52 void LoadViewSettings();
53 void SaveViewSettings();
55 void OnDownloadAddon(
const std::string& addonId);
56 void OnViewMore(
const std::string& addonId);
57 void OnUninstallAddon(
const std::string& addonId);
58 void OnAddRepository();
59 void OnRemoveRepository(
const std::string& url);
60 void OnRefreshRepositories();
63 void OnBuildNativeAddon(
const std::string& addonId);
64 void OnReloadNativeAddon(
const std::string& addonId);
65 void OnToggleNativeEnabled(
const std::string& addonId);
66 void OnToggleNativeMode(
const std::string& addonId);
67 void OnSyncNativeAddonBinary(
const std::string& addonId);
73 bool mUseTableView =
true;
76 bool mShowAddonDetails =
false;
77 bool mShowAddRepoPopup =
false;
78 std::string mSelectedAddonId;
79 char mRepoUrlBuffer[512] = {};
80 std::string mErrorMessage;
81 std::string mStatusMessage;
84 char mSearchBuffer[256] = {};
85 std::vector<std::string> mSelectedTags;
88 std::vector<std::string> mAvailableTags;
91 bool mNeedsRefresh =
true;
92 bool mIsRefreshing =
false;
95 bool mShowUninstallConfirm =
false;
96 std::string mUninstallAddonId;
97 void DrawUninstallConfirmPopup();
100 bool mShowBuildLog =
false;
101 std::string mBuildLogAddonId;
104 struct ThumbnailEntry
106 ImTextureID mTexId = 0;
107 Image* mImage =
nullptr;
109 ImTextureID GetAddonThumbnail(
const std::string& addonId);
110 void ClearThumbnailCache();
111 std::unordered_map<std::string, ThumbnailEntry> mThumbnailCache;
114AddonsWindow* GetAddonsWindow();
void Shutdown()
Definition Engine.cpp:916