DVUI

dataGetPtrDefault

Retrieve a pointer to the value for key (id+name). If no value was stored, store default and then return a pointer to the stored value.

Can be called from any thread.

If called from non-GUI thread or outside Window.begin/Window.end, you must pass a pointer to the Window you want to add the value to.

Returns a pointer to internal storage, which will be freed after a frame where there is no call to any dataGet/dataSet functions for this key.

The pointer will always be valid until the next call to Window.end.

If you want to get the contents of a stored slice, use dataGetSlice.

Parameters

#
win:?*Window
?*Window
id:Id
Id
name:[]const u8
[]const u8
T:type
type
default:T
T

Source

Implementation

#
pub fn dataGetPtrDefault(win: ?*Window, id: Id, name: []const u8, comptime T: type, default: T) *T {
    return data.getPtrDefault(win, .widget(id, name), T, default);
}