FAQ  •  Register  •  Login

Custom XML Menu Button Event Handling

Moderator: MiRai

<<

Redsumm

Posts: 14

Joined: Wed Mar 03, 2021 11:41 pm

Post Thu Mar 11, 2021 9:26 am

Custom XML Menu Button Event Handling

How does one configure a custom XML menu button with the same/similar event handling functionality as a click bar button?

A click bar button has event handling in the form of:
However, the buttons in menus (in ISBoxer) do not appear to have the same event handling functionality.
BtnEH3.jpg
BtnEH3.jpg (3.86 KiB) Viewed 11077 times


It appears that there may be some event handling that can be specified in the XML itself, but my search for how to setup the event handling has escaped me. For example, the custom XML templates by Lax and Mirai at viewtopic.php?f=44&t=3951 have placeholders for event handling even though the "noop" does nothing (http://www.lavishsoft.com/wiki/index.php/Command:NoOp).
<<

Redsumm

Posts: 14

Joined: Wed Mar 03, 2021 11:41 pm

Post Thu Mar 11, 2021 10:51 am

Re: Custom XML Menu Button Event Handling

I will add that I did a POC in a clickbar for mixing those two types of event handling and really like the functionality. However, the clickbar button layout and lack of tabs is discouraging for continuing with clickbars considering what I plan to do.

I would like to continue, if possible to use the keymaps I have setup for the POC clickbar under the custom XML menu. I just have no clue how to get those keymaps workings with the event handling for menu buttons such as there are for the clickbar buttons.

My POC clickbar. Buttons 1-6 are mouseover (like the healing buttons linked above, but they are debuffs based on EQ's extended target window) and button 7 is a ground AOE like in the video.
CB1.jpg
CB1.jpg (151.21 KiB) Viewed 11073 times


The keymaps (customized a bit from the healing buttons linked above).
CB_KeyMaps1.jpg
CB_KeyMaps1.jpg (126.34 KiB) Viewed 11073 times

CB_KeyMaps2.jpg
CB_KeyMaps2.jpg (83.52 KiB) Viewed 11073 times


I appreciate the help.
<<

bob

User avatar

League of Extraordinary Multiboxers

Posts: 4591

Joined: Sat Feb 15, 2014 11:14 am

Location: In the dining room, with the lead pipe.

Post Thu Mar 11, 2021 2:57 pm

Re: Custom XML Menu Button Event Handling

You create a button set and have the buttons execute the mapped keys with a Do Mapped Key Action.
In your custom XML you will have elements for btn1, btn2 etc. These map to Button 1, Button 2 etc in the menu button set.

This is just the standard menus, but should be enough to start with.
Image

If you want right click functionality. That is not possible via menus. left/right do the same thing. Click a button.
You can add modifiers to the input though, so you can do the SHIFT/ALT/CTRL thing. Or if you want to get fancy, you can also use any other key as a modifier. A, B, C, D, E, F, G. etc. So lets say there are at least 50 modifiers you get to use, in place of losing the right click.
Image

If you do the modifier thing, and want to also have something with no modifiers, it is best to explicitly set that option. e.g.
Image
<<

Redsumm

Posts: 14

Joined: Wed Mar 03, 2021 11:41 pm

Post Thu Mar 11, 2021 3:35 pm

Re: Custom XML Menu Button Event Handling

Thanks! I will try this out in POC against my POC clickbar. It appears I will lose the mouseover, but I can probably work around it.
<<

Redsumm

Posts: 14

Joined: Wed Mar 03, 2021 11:41 pm

Post Thu Mar 11, 2021 10:24 pm

Re: Custom XML Menu Button Event Handling

I got most of it to work. The part that is not working is the Conditional with Mouse2. I thought that meant that I right and left click and that conditional action triggers. Is that understanding correct?

What is working is left clicking on buttons 1-6 for the /x [1-6] 2 (a macro for tash/slow) and button 7 for the GAE with VFX/next click.

Here are my buttons for my 7 buttons in my POC menu:
MenuBtn1.jpg
MenuBtn1.jpg (134.13 KiB) Viewed 11040 times


The second action on buttons 1-6 is to /x [1-6] /cast 2 (my single mezz). I even tried to use a different conditional key (z) and holding z while clicking did not cast the mezz.

KMdebuff.jpg
KMdebuff.jpg (27.04 KiB) Viewed 11040 times


KMmezz.jpg
KMmezz.jpg (41.85 KiB) Viewed 11040 times


My current custom XML
Code:
<ISUI>
   <template name='btnStd'>
      <X>2</X>
      <Y>2</Y>
      <Width>50</Width>
      <Height>26</Height>
      <Border>1</Border>
      <BackgroundColor>ff000000</BackgroundColor>
      <BorderColor>ffffffff</BorderColor>
      <Font Template='button.Font'>
         <Color>ffffffff</Color>
         <Name>palantino linotype</Name>
         <Size>14</Size>
      </Font>
      <Text>D/M1</Text>
      <Texture/>
      <TexturePressed/>
      <TextureHover/>
      <OnMouseEnter>noop ${MenuMan:OnMenuButtonState["${This.GetMetadata[menu].Escape}","${This.GetMetadata[menu_button].Escape}","Enter"]}</OnMouseEnter>
      <OnMouseExit>noop ${MenuMan:OnMenuButtonState["${This.GetMetadata[menu].Escape}","${This.GetMetadata[menu_button].Escape}","Exit"]}</OnMouseExit>
      <OnLeftDown>noop ${MenuMan:OnMenuButtonState["${This.GetMetadata[menu].Escape}","${This.GetMetadata[menu_button].Escape}","Press",Mouse1]}</OnLeftDown>
      <OnLeftClick>noop ${MenuMan:OnMenuButtonState["${This.GetMetadata[menu].Escape}","${This.GetMetadata[menu_button].Escape}","Release",Mouse1]}</OnLeftClick>
   </template>

   <Window Name='EQ Action Menu'>
      <Width>392</Width>
      <Height>230</Height>
      <BackgroundColor>00000000</BackgroundColor>
      <Visible>1</Visible>
      <Border>0</Border>
      <Children>
         <TabControl Name='buttons'>
            <Width>100%</Width>
            <Height>100%</Height>
            <Tabs>
               <Tab Name='Combat'>
                  <Button Name='btn1' Template='btnStd'>
                     <Text>D/M1</Text>
                  </Button>
                  <Button Name='btn2' Template='btnStd'>
                     <Y>30</Y>
                     <Text>D/M2</Text>
                  </Button>
                  <Button Name='btn3' Template='btnStd'>
                     <Y>58</Y>
                     <Text>D/M3</Text>
                  </Button>
                  <Button Name='btn4' Template='btnStd'>
                     <Y>86</Y>
                     <Text>D/M4</Text>
                  </Button>
                  <Button Name='btn5' Template='btnStd'>
                     <Y>114</Y>
                     <Text>D/M5</Text>
                  </Button>
                  <Button Name='btn6' Template='btnStd'>
                     <Y>142</Y>
                     <Text>D/M6</Text>
                  </Button>
                  <Button Name='btn7' Template='btnStd'>
                     <Y>170</Y>
                     <Text>GAE</Text>
                  </Button>
               </Tab>
               <Tab Name='Utility'>
                  <Button Name='btn8' Template='btnStd'>
                     <X>50</X>
                     <Y>5</Y>
                     <Width>64</Width>
                     <Height>48</Height>
                     <Text>Test</Text>
                  </Button>
               </Tab>
               
               
            </Tabs>
         </TabControl>
      </Children>
   </Window>
</ISUI>
<<

bob

User avatar

League of Extraordinary Multiboxers

Posts: 4591

Joined: Sat Feb 15, 2014 11:14 am

Location: In the dining room, with the lead pipe.

Post Thu Mar 11, 2021 10:48 pm

Re: Custom XML Menu Button Event Handling

if using the right mouse (Mouse2) conditional, you need to right click and hold first, then left click for it to fire. It is possible you could get it fast enough to be a two button smash, but it will generally need to be right then left.
<<

Redsumm

Posts: 14

Joined: Wed Mar 03, 2021 11:41 pm

Post Thu Mar 11, 2021 10:58 pm

Re: Custom XML Menu Button Event Handling

ok, that is what I am doing and it is not working. I even retried with setting the conditional with 'z' and that is not working.

I wonder where is it failing. Is there a way to trace through the execution?
<<

bob

User avatar

League of Extraordinary Multiboxers

Posts: 4591

Joined: Sat Feb 15, 2014 11:14 am

Location: In the dining room, with the lead pipe.

Post Thu Mar 11, 2021 11:19 pm

Re: Custom XML Menu Button Event Handling

I'm 100% it works, so there is something else not right.

Show....

Show me your config. In ISBoxer go to the File menu, select "Copy ISBoxer Toolkit Profile to Clipboard", then go to https://paste.isboxer.com/ paste it there (you'll need to sign in with your Lavishsoft.com account).
<<

Redsumm

Posts: 14

Joined: Wed Mar 03, 2021 11:41 pm

Post Thu Mar 11, 2021 11:24 pm

Re: Custom XML Menu Button Event Handling

<<

bob

User avatar

League of Extraordinary Multiboxers

Posts: 4591

Joined: Sat Feb 15, 2014 11:14 am

Location: In the dining room, with the lead pipe.

Post Fri Mar 12, 2021 9:45 am

Re: Custom XML Menu Button Event Handling

Looks to me like it should be working for minimind of MyTeamVFX to receive the actions, provided Key Maps are enabled at the time.

Debugging is usually going to be a combination between the debugging console and the in session console.
The debug console will show what is being sent to each client window. The session console is useful for seeing what is loaded, and, sometimes, what is executing.

Image
Next

Return to Menus

Who is online

Users browsing this forum: No registered users and 4 guests