Thread Tools Display Modes
03/07/19, 09:15 AM   #1
Baumkuchen3
AddOn Author - Click to view addons
Join Date: Jan 2019
Posts: 12
Button Handler ButtonStates

1.
I want to remove the setted Handler within the "OnClicked" event. How can I do this. I dont know witch parameters the "function(.....) " (the 2. parameter of "button:SetHandler()" can use and how to access the button itself. "self" does not work here.

My Example function --- which will set the button handler:


Code:
function addon.InitControls(rowNumber)

 deleteButton:SetHandler("OnClicked", function(self) <-- are there other parameter available?
        
    DoSomethingt(rowNumber)

    self:RemoveHandler ("OnClicked") <-- how to remove the handler?

end)
----------------
2. How to Change the Button State in Code. I know hot to hide a control
Code:
deleteButton:SetHidden(true)
But I also want to disable a control/button.
  Reply With Quote
03/07/19, 09:31 AM   #2
votan
 
votan's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2014
Posts: 577
Originally Posted by Baumkuchen3 View Post
1.
I want to remove the setted Handler within the "OnClicked" event. How can I do this. I dont know witch parameters the "function(.....) " (the 2. parameter of "button:SetHandler()" can use and how to access the button itself. "self" does not work here.

My Example function --- which will set the button handler:


Code:
function addon.InitControls(rowNumber)

 deleteButton:SetHandler("OnClicked", function(self) <-- are there other parameter available?
        
    DoSomethingt(rowNumber)

    self:RemoveHandler ("OnClicked") <-- how to remove the handler?

end)
----------------
2. How to Change the Button State in Code. I know hot to hide a control
Code:
deleteButton:SetHidden(true)
But I also want to disable a control/button.
control:SetHandler("OnClicked", nil)
buttonControl:SetEnabled(false)

https://wiki.esoui.com/Controls#ButtonControl
  Reply With Quote
03/07/19, 10:19 AM   #3
Baumkuchen3
AddOn Author - Click to view addons
Join Date: Jan 2019
Posts: 12
Thanks's a lot for your help.
(the big votan answered my question )
  Reply With Quote
03/07/19, 10:30 AM   #4
Baertram
Super Moderator
 
Baertram's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 4,912
If you need more parameters try to use control:SetHandler("OnMouseUp", function(control, button, upInside)).

control: Your control clicked
button: MouseButtonIndex (the mouse button used):
Code:
MOUSE_BUTTON_INDEX_4
MOUSE_BUTTON_INDEX_5
MOUSE_BUTTON_INDEX_INVALID
MOUSE_BUTTON_INDEX_LEFT
MOUSE_BUTTON_INDEX_LEFT_AND_RIGHT
MOUSE_BUTTON_INDEX_MIDDLE
MOUSE_BUTTON_INDEX_RIGHT
upInsided: boolean. true = mouse button was released while above the control. false = mouse button released outside the control.
  Reply With Quote

ESOUI » Developer Discussions » General Authoring Discussion » Button Handler ButtonStates

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off