ImGui.Core:invisibleButton

From GiderosMobile
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Available since: Gideros 2020.9
Class: ImGui

Description

A flexible button behavior without the visuals. Frequently useful to build custom behaviors using the public api (along with IsItemActive, IsItemHovered, etc.).

ImGui:invisibleButton(stringID,w,h)

Parameters

stringID: (string) the button ID
w: (number) the button width optional
h: (number) the button height optional

Example

MyClass = Core.class(Sprite)

function MyClass:init()
	self.imgui = ImGui.new()
	-- we create a variable to hold our window status
	self.window01 = true -- window01 exists at start up
	-- order
	self:addChild(self.imgui)
	-- LISTENERS
	self:addEventListener("enterBegin", self.onTransitionInBegin, self)
end

-- LOOP
function MyClass:onEnterFrame(e)
	-- 1 we start ImGui
	self.imgui:newFrame(e)
	-- 2 we build our GUI
	if self.window01 then -- is window01 existant?
		local windowdrawn = false -- is window01 colapsed?
		self.window01, windowdrawn = self.imgui:beginWindow(
			"Hello ImGui", -- window title
			self.window01 -- is window01 existant?
		)
		if windowdrawn then -- the variable is false when window01 is collapsed
			if self.imgui:invisibleButton("invisible btn 01") then print("button clicked") end
		end
		self.imgui:endWindow()
	end
	self.imgui:endFrame()
	self.imgui:render()
end

-- EVENT LISTENERS
function MyClass:onTransitionInBegin()
	self:addEventListener(Event.ENTER_FRAME, self.onEnterFrame, self)
end