Thanks to @aaron_mccoy for the feedback, I added it on the roadmap, with the conversion to the Rojo project done by @goldenstein64 it will be possible to do a lot of cool things in this project.
Hey! A few questions, are you supposed to assign to a frame, gui object of some sort, and if so how.
If not, then does it create a frame, and is there any way to control the position of it inside the script. Other than that I can see myself using this in the near future, really nice plugin keep it up!
I intend to make it more dynamic, allowing it to be used within other elements for example (and from external information such as height and width, internally manage the behavior [scroll, etc.]).
But I confess that it is not my main focus at the moment (I am focused on a game I am developing).
But an important detail, the source code is available on Github, take a look there, very easy to test with Rojo.
Update v1.1
- Fixed several bugs
- Removal of duplicate codes
- Various code improvements
The code in its current state is ready to receive the expected evolutions, among them:
- Allow themes
- Resizing
- Individual panels
- Inject in external panels
- Allow custom controllers
Update v1.2
- Added support for
StringValue
,NumberValue
,Vector3Value
,Color3Value
,BoolValue
- Correction in the
removeChild
method - Added Multiline String
This. Is. Amazing. I just made a gui library right now - and oh my god - yours is so much better.
I kinda regret making the library now.
Another thing, why is the module obfuscated? I don’t want some backdoor in my game.
It is minified for ease of use (copying just one file is easier to work with). There is no backdoor, The source code is available on Github, you can generate the minified version itself if you want, or even use it without the minification (you only have to copy more files, as it is modularized).
If you want to work with the original source code, access the repository at GitHub - nidorx/roblox-dat-gui
I’m working on some improvements (because I use it to make my tools).
Among the improvements in progress are: Correction of Color and Options (sometimes it is getting stuck), allowing to add custom components, controllers for drawing/plot (Lines, Curves, etc.)
BIG Update v1.2.3
- Allows custom controllers
gui.addCustom (name, {Frame, Color, OnRemove, Height})
- Added the
controller.help (text)
method
- Added the
gui.addLogo (assetId, height)
method
- Allows you to pin folders
- Allows to Move (Panels stick when being moved)
- Allows resizing
- Allows you to close
- Bug fixes in OptionController and ColorController
- Improved Scroll (works with Drag)
- Compatibility with touch devices (Mobile, Tablet)
- Visual and event capture improvements
This looks very cool!
Is this supported on mobile? The example place only works on pc.
Update v1.2.4
- Improved documentation (https://github.com/nidorx/roblox-dat-gui)
- Allows to add actions
- API exposure
DatGUI.Lib = { Panel = Panel, Popover = Popover, Scrollbar = Scrollbar, GUIUtils = GUIUtils, GuiEvents = GuiEvents, Constants = Constants }
is it client side or server side?
Would be a neat addition if action had a setValue method for context of cooldowns!
Hi, can I use this for my plugin, RunLSC? As for attribution, your module will be linked in the credits section and I will put your name on the acknowledgements
When the player dies and respawns, the GUI doesn’t parent to the PlayerGui anymore. Is this intentional? Great module either way.
Great module! But is there way to hide this header when the gui is created? I’d like the entire gui to be closed or opened through separate means.
nevermind found a way!
local playerGui = game:GetService("Players").LocalPlayer.PlayerGui
playerGui ScreenGui.TextButton.MouseButton1Down:Connect(function()
if #playerGui["dat.GUI"]:GetChildren() <= 0 then -- checks if theres any inside the "holder" thing
createSettingsUI() -- creates the whole UI
end
end)
Very cool system indeed. I looked at the source code (dat.GUI.lua) and its all in one line?!