mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-15 16:29:16 +01:00
[hud] Allow returning HUD item objects to the caller
This commit is contained in:
parent
d5744e5a81
commit
0eeedf9259
@ -48,8 +48,8 @@ namespace dxvk::hud {
|
|||||||
* \param [in] args Constructor arguments
|
* \param [in] args Constructor arguments
|
||||||
*/
|
*/
|
||||||
template<typename T, typename... Args>
|
template<typename T, typename... Args>
|
||||||
void addItem(const char* name, int32_t at, Args... args) {
|
Rc<T> addItem(const char* name, int32_t at, Args... args) {
|
||||||
m_hudItems.add<T>(name, at, std::forward<Args>(args)...);
|
return m_hudItems.add<T>(name, at, std::forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -91,7 +91,7 @@ namespace dxvk::hud {
|
|||||||
* \param [in] args Constructor arguments
|
* \param [in] args Constructor arguments
|
||||||
*/
|
*/
|
||||||
template<typename T, typename... Args>
|
template<typename T, typename... Args>
|
||||||
void add(const char* name, int32_t at, Args... args) {
|
Rc<T> add(const char* name, int32_t at, Args... args) {
|
||||||
bool enable = m_enableFull;
|
bool enable = m_enableFull;
|
||||||
|
|
||||||
if (!enable) {
|
if (!enable) {
|
||||||
@ -102,10 +102,14 @@ namespace dxvk::hud {
|
|||||||
if (at < 0 || at > int32_t(m_items.size()))
|
if (at < 0 || at > int32_t(m_items.size()))
|
||||||
at = m_items.size();
|
at = m_items.size();
|
||||||
|
|
||||||
|
Rc<T> item;
|
||||||
|
|
||||||
if (enable) {
|
if (enable) {
|
||||||
m_items.insert(m_items.begin() + at,
|
item = new T(std::forward<Args>(args)...);
|
||||||
new T(std::forward<Args>(args)...));
|
m_items.insert(m_items.begin() + at, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user