Iris - Immediate Mode UI library, based on Dear ImGui

Well, yes, that’s the whole idea of a toggle switch…

2 Likes

Hey sorry if it this message annoys you but i wasnt able to figure out how to find the new widgets like the progress bar and i cant find them at all

Progress Bar is under Plot, but you can just call ‘Iris.ProgressBar()’ on the latest version.

THANKS You so much

(LOREM IPSUM LOREM )

are you able to add docking just like imgui and studio
(Docking · ocornut/imgui Wiki · GitHub)

use Shift+Ctrl+F for global search next time

That would be cool, but it’s a lot of work and not hugely helpful for most of Iris users, since Iris can only overlay the viewport, not go around it.

Well its really simple. I used a mixture of rich-text (for the colors) and LogService (to get the output messages). You can use the fourth argument of Iris.Text to enable rich-text and the docs are here.

Oooooh
thats a way better way then how i did it (each message was its own text instance)

Hey how do I get Iris showing on plugins?
I try this:

Code Hidden for Clarity
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Iris = require(ReplicatedStorage.Packages.Iris)

local widgetButton =
	plugin:CreateToolbar("iris_example"):CreateButton("__example_button", "Opens/Closes the widget", "", "Open/Close")
local myWidget = plugin:CreateDockWidgetPluginGui(
	"__example",
	DockWidgetPluginGuiInfo.new(Enum.InitialDockState.Float, false, false, 1000, 750, 1000, 750)
)
myWidget.Name = "Iris-plugin"
myWidget.ZIndexBehavior = Enum.ZIndexBehavior.Sibling

widgetButton.Click:Connect(function()
	myWidget.Enabled = not myWidget.Enabled

	if myWidget.Enabled then
		if not Iris.Internal._started then
			Iris = Iris.Init(myWidget)
		end

		Iris.Disabled = false
		Iris:Connect(function()
			Iris.Window({ "Hello" }).state.size:set(myWidget.AbsoluteSize)
			Iris.Text { "Hello" }
			Iris.End()

			print(myWidget.Enabled)
		end)
	else
		Iris.Disabled = true
		table.clear(Iris.Internal._connectedFunctions)
	end
end)

I can only get an empty Widget showing. (The script is a LocalScript.)


Also you put an a instead of an e in the Plot API. I don’t think that’s intentional.

2 Likes

Have you looked at the example plugin script? It’s under src/plugins. You’ll also need the UserInputService and Signal files. There’s quite a few more things you need to do to get it working properly.

1 Like

Thanks that worked. Is there a way to add a viewport frame? I’ve seen a post above that does this.

it’s custom widget

1 Like

Aw man, would’ve been really cool to have that. I need it for what I plan to make.

What’s the difference between the :States() Methods, there’s “:WeakState()” as well and I think maybe another one but I can’t remember.

from what i found, it’s in the main iris module

Well, I already saw this, and I didn’t understand much from it, that’s why I asked, but It’s fine thank you anyway.

1 Like

[URGANT HELP NEEDED] For some reason the buttons arent working on Mobile, there’s no errors whatsoever. Because of this, my game cannot support Mobile!

How on earth did you get touch devices working? For some reason for me buttons don’t work on mobile. Can you help me?