-- simpleBMMenu
-----------------------------------
-- DESCRIPTION:
--              behavior on the btton to show the menu
--              invoke the menu on mousedown and stay hilited until the menu is disposed
--              the menu calls mUnhilite, if it is closed
--
-- REQUIRES:
--              none (uses sendSprite() to send the "menu open" event to a sprite named like it is defined in the GPDL)
--
-- USAGE:
--              drag this behavior onto a sprite with a member of type #text
-----------------------------------



property pMenuSpritename
-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

on mouseDown me
  mem = sprite(me.spritenum).member
  mem.color = rgb(255, 255, 255)
  mem.bgcolor = rgb("#106fe7")
  updatestage
  sendSprite(xscr().mGetKanal(pMenuSpritename), #mShowOSCMenu, me.spritenum)
end

-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

on endsprite me
  sprite(me.spritenum).member.color = rgb(20, 20, 20)
end

-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

on getpropertyDescriptionList
  retlist = [:]
  retlist[#pMenuSpritename] = [#default:#nothing, #format:#symbol, #comment:"Name of sprite with menu:"]
  return retlist
end

-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

on mUnhilite me
  mem = sprite(me.spritenum).member
  mem.color = rgb(20, 20, 20)
  mem.bgcolor = rgb(255, 255, 255)
end if
