%3 ::xowiki::MenuItem ::xowiki::MenuItem init render ::xowiki::MenuComponent ::xowiki::MenuComponent ::xowiki::MenuItem->::xowiki::MenuComponent ::xowiki::Menu ::xowiki::Menu render ::xowiki::Menu->::xowiki::MenuComponent ::xowiki::BootstrapNavbarDropzone ::xowiki::BootstrapNavbarDropzone render ::xowiki::BootstrapNavbarDropzone->::xowiki::MenuComponent ::xo::tdom::Object ::xo::tdom::Object ::xowiki::MenuComponent->::xo::tdom::Object ::xowiki::BootstrapNavbarDropdownMenuItem ::xowiki::BootstrapNavbarDropdownMenuItem render ::xowiki::BootstrapNavbarDropdownMenuItem->::xowiki::MenuItem ::xowiki::BootstrapNavbarModeButton ::xowiki::BootstrapNavbarModeButton ::xowiki::BootstrapNavbarModeButton->::xowiki::MenuItem ::xowiki::YUIMenuItem ::xowiki::YUIMenuItem render ::xowiki::YUIMenuItem->::xowiki::MenuItem ::xowiki::YUIContextMenuItem ::xowiki::YUIContextMenuItem ::xowiki::YUIContextMenuItem->::xowiki::YUIMenuItem ::xowiki::YUIMenuBarItem ::xowiki::YUIMenuBarItem ::xowiki::YUIMenuBarItem->::xowiki::YUIMenuItem

Class ::xowiki::MenuItem

::xowiki::MenuItem[i] create ... \
           [ -CSSclass CSSclass ] \
           [ -group (default "") ] \
           [ -href href ] \
           [ -id (default "[:html_id]") ] \
           [ -linkclass linkclass ] \
           [ -listener listener ] \
           [ -style style ] \
           [ -target target ] \
           [ -text text ] \
           [ -title title ]

Class Relations

  • class: ::xo::tdom::Class[i]
  • superclass: ::xowiki::MenuComponent[i]
  • subclass: ::xowiki::BootstrapNavbarDropdownMenuItem[i], ::xowiki::BootstrapNavbarModeButton[i], ::xowiki::YUIMenuItem[i]
::xo::tdom::Class create ::xowiki::MenuItem \
     -superclass ::xowiki::MenuComponent

Methods (to be applied on instances)

  • init (scripted, private)

     <instance of xowiki::MenuItem[i]> init args [ args... ]

    doku

    Parameters:
    args (required)

    Testcases:
    create_folder_with_page, create_workflow_with_instance
    next
    # Use computed default values when not specified
    if {![info exists :title]} {
      # set the mouseover-title to the "MenuItem-Label"
      # TODO: Do we really want "text" to be required ?
      set :title ${:text}
    }
    if {![info exists :CSSclass]} {
      # set the CSS class to e.g. "yuimenuitem"
      set :CSSclass [string tolower [namespace tail [:info class]]]
    }
    
    if {![info exists :href] || ${:href} eq ""} {
      append :CSSclass " " [string tolower [namespace tail [:info class]]]-disabled
    }
    if {![info exists :linkclass]} {
      # set the CSS class to e.g. "yuimenuitemlabel"
      set :linkclass [string tolower [namespace tail [:info class]]]label
    }
  • render (scripted, public)

     <instance of xowiki::MenuItem[i]> render

    doku

    Testcases:
    No testcase defined.
    html::li [:get_attributes id {CSSclass class}] {
      html::a [:get_attributes title href target] {
        html::t ${:text}
      }
    }