CARVIEW |
Select Language
HTTP/2 200
date: Wed, 23 Jul 2025 23:38:25 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-robots-tag: none
etag: W/"f1bce678128d5c2d6ebac3cac412cf3e"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=9gCOdJzUuMPwHASSofvuqG8Cl0PZvfRgAU%2Bys2G858mrldgRvjxIyKZTiyEbZ%2FNR6YstH4QnjUyQC8HOIFcnKYwmM7YpQuXIu2qN7ilQ%2FkmZqpGrMEXkMiVS4BWRACdiKRvECo8tCDDoz41NjCQ%2BD4dWfJQmrdf3GgTXwE5A2YgpyRnJM50zgjF%2FIl89fb3Bj972j9GJ6iuJqu70xIS%2BeWxx%2Frdm23%2BzI9NTxnZ66MJSXLphWZ2DZJl4KYw072XmIljigHqhc8O%2BfUHlz45nBg%3D%3D--iPLvcZ2lXjYw3SAu--e4vNwz31soTWpuIdJShATw%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.519877329.1753313905; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 23:38:25 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 23:38:25 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: D9E8:25703E:19411D:232ECF:68817271
Utility interface · MadLadSquad/UntitledImGuiFramework Wiki · GitHub
Skip to content
Navigation Menu
{{ message }}
-
-
Notifications
You must be signed in to change notification settings - Fork 7
Utility interface
Stanislav Vasilev edited this page Jun 13, 2025
·
7 revisions
The Utility
interface provides utility functions. It looks like this:
class UIMGUI_PUBLIC_API Utility
{
public:
static void sanitiseFilepath(FString& str) noexcept;
static void keyToText(FString& text, const uint16_t& key, bool bLong) noexcept;
static FString keyToText(const uint16_t& key, bool bLong) noexcept;
static void keyToText(FString& text, const InputAction& action, bool bLong) noexcept;
static FString keyToText(const InputAction& action, bool bLong) noexcept;
// DO NOT USE THIS, THIS IS ONLY HERE FOR INTERNAL REASONS!!! REALLY KNOW WHAT YOU'RE DOING WHEN USING THIS
static Global& getGlobal() noexcept;
static void removeConsole() noexcept;
static FString toLower(String str) noexcept;
static void toLower(FString& str) noexcept;
static FString toUpper(String str) noexcept;
static void toUpper(FString& str) noexcept;
static TVector<FString> splitString(const FString& str, String token) noexcept;
static void sleep(uint64_t milliseconds) noexcept;
static KeyStringsArrType& getKeyStrings() noexcept;
};
Reference for the functions:
-
toUpper
- Converts a string to all uppercase characters -
toLower
- Converts a string to all lowercase characters -
splitString
- Splits a string -
removeConsole
- Removes the console window on Windows -
getGlobal
- Returns a reference to the internal global class, DO NOT TOUCH!!! -
keyToText
- Converts a key code to text in short or long form for usage in UI -
sanitizeFilepath
- Sanitizes file paths, such as replacing\
with/
on Windows -
sleep
- Puts the current thread to sleep for X milliseconds -
getKeyStrings
- Returns the internal string table for each keyboard key. Don't use manually, instead use one of thekeyToText
functions
The whole interface is flagged as event safe at Any time
.
The C API is severely downsized, by removing most string operation functions. It uses the standard C API development rules as defined here. It looks like this:
// Event Safety - Any time
UIMGUI_PUBLIC_API UImGui_String UImGui_Utility_sanitiseFilepath(UImGui_String str);
// Event Safety - Any time
UIMGUI_PUBLIC_API UImGui_String UImGui_Utility_keyToText(uint16_t key, bool bLong);
// Event Safety - Any time
UIMGUI_PUBLIC_API UImGui_String UImGui_Utility_keyToTextInputAction(UImGui_CInputAction* action, bool bLong);
// Event Safety - Any time
UIMGUI_PUBLIC_API void UImGui_Utility_removeConsole();
// Event Safety - Any time
// Sleep for X milliseconds
UIMGUI_PUBLIC_API void UImGui_Utility_sleep(uint64_t milliseconds);
UIMGUI_PUBLIC_API void UImGui_Utility_loadContext(void* context);
UIMGUI_PUBLIC_API UImGui_String UImGui_Utility_toLower(char* str);
UIMGUI_PUBLIC_API UImGui_String UImGui_Utility_toUpper(char* str);
// Event Safety - Any time
UIMGUI_PUBLIC_API UImGui_CGlobal* UImGui_Global_get(UImGui_CGlobal* parent);
Most functions in the C API are available, except for some that are considered internal and are not needed.
This project is supported by all the people who joined our discord server and became beta testers. If you want to join the discord you can click here.
- Home
- Beginner content
- Install guide
- Creating and using the UI components
- The Instance
- The Init Info struct
- Building better titlebar menus
- Textures
- Logging
- Unicode support
- Additional features
- Client-side bar
- Custom type definitions
- Memory management
- C API development
- Config files and Folders
- Interfaces
- Internal Event safety
- Customising the build system
- Modules system
- Collaborating with others
- Advanced content
- Developer and contributor resources
- Misc
Clone this wiki locally
You can’t perform that action at this time.