Project Wonder 5.0

er.extensions.appserver.navigation
Class ERXModernNavigationMenuItem

java.lang.Object
  extended by com.webobjects.appserver.WOElement
      extended by com.webobjects.appserver.WOComponent
          extended by er.extensions.components.ERXComponent
              extended by er.extensions.components.ERXNonSynchronizingComponent
                  extended by er.extensions.components.ERXStatelessComponent
                      extended by er.extensions.appserver.navigation.ERXModernNavigationMenuItem
All Implemented Interfaces:
com.webobjects.appserver.WOActionResults, com.webobjects.foundation.NSKeyValueCoding, com.webobjects.foundation.NSKeyValueCoding.ErrorHandling, com.webobjects.foundation.NSKeyValueCodingAdditions, com.webobjects.foundation.NSValidation, java.io.Serializable, java.lang.Cloneable

public class ERXModernNavigationMenuItem
extends ERXStatelessComponent

This is a menu item component that represents a single item in the tree of navigation menu items. It's an updated ERXNavigationMenuItem component that should simplify common usage. Namely, it now recurses through the tree of navigation items, creating nested, unordered lists of navigation items. Just as importantly, with a very few exceptions,it forgoes declaring element style as possible, leaving positioning and styling to be defined in the user's stylesheet. Please read "Documentation/Navigation.html" to find out how to use the navigation components.

See Also:
Serialized Form
Author:
Travis Cripps

Nested Class Summary
 
Nested classes/interfaces inherited from class com.webobjects.appserver.WOComponent
com.webobjects.appserver.WOComponent._EventLoggingEnabler, com.webobjects.appserver.WOComponent.Event
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSKeyValueCodingAdditions
com.webobjects.foundation.NSKeyValueCodingAdditions.DefaultImplementation, com.webobjects.foundation.NSKeyValueCodingAdditions.Utility
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSKeyValueCoding
com.webobjects.foundation.NSKeyValueCoding._BooleanFieldBinding, com.webobjects.foundation.NSKeyValueCoding._BooleanMethodBinding, com.webobjects.foundation.NSKeyValueCoding._FieldBinding, com.webobjects.foundation.NSKeyValueCoding._ForwardingBinding, com.webobjects.foundation.NSKeyValueCoding._KeyBinding, com.webobjects.foundation.NSKeyValueCoding._KeyBindingCreation, com.webobjects.foundation.NSKeyValueCoding._MethodBinding, com.webobjects.foundation.NSKeyValueCoding._NumberFieldBinding, com.webobjects.foundation.NSKeyValueCoding._NumberMethodBinding, com.webobjects.foundation.NSKeyValueCoding._ReflectionKeyBindingCreation, com.webobjects.foundation.NSKeyValueCoding.ErrorHandling, com.webobjects.foundation.NSKeyValueCoding.Null, com.webobjects.foundation.NSKeyValueCoding.UnknownKeyException, com.webobjects.foundation.NSKeyValueCoding.ValueAccessor
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSValidation
com.webobjects.foundation.NSValidation._MethodBinding, com.webobjects.foundation.NSValidation._ValidationBinding, com.webobjects.foundation.NSValidation.DefaultImplementation, com.webobjects.foundation.NSValidation.Utility, com.webobjects.foundation.NSValidation.ValidationException
 
Field Summary
protected  java.lang.Boolean _hasActivity
           
protected  java.lang.Boolean _isDisabled
           
protected  java.lang.Boolean _isSelected
           
protected  boolean _linkDirectlyToDirectActions
           
protected  java.lang.Boolean _meetsDisplayConditions
           
protected  ERXNavigationItem _navigationItem
           
protected  ERXNavigationState _navigationState
           
protected  com.webobjects.appserver.WOComponent _redirect
           
 ERXNavigationItem aChildItem
           
static org.apache.log4j.Logger log
          logging support
static java.lang.String SHOULD_DISPLAY_DISABLED_MENU_ITEMS
           
protected static java.lang.String STYLE_CLASS_DISABLED
           
protected static java.lang.String STYLE_CLASS_SELECTED
           
protected static java.lang.String STYLE_CLASS_SUB
           
 
Fields inherited from class er.extensions.components.ERXComponent
_dynamicBindings
 
Fields inherited from class com.webobjects.appserver.WOComponent
_Extension, _IsEventLoggingEnabled, _keyAssociations
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCoding.ErrorHandling
_CLASS
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCodingAdditions
_CLASS, _KeyPathSeparatorChar, KeyPathSeparator
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCoding
NullValue
 
Fields inherited from interface com.webobjects.foundation.NSValidation
_CLASS
 
Constructor Summary
ERXModernNavigationMenuItem(com.webobjects.appserver.WOContext context)
           
 
Method Summary
 com.webobjects.foundation.NSArray children()
           
 java.lang.String contextComponentActionURL()
           
 com.webobjects.appserver.WOComponent directActionRedirect()
          AK This is only an experiment: when calling up a DA, we use a component action and redirect to the actual DA
 java.lang.String displayName()
           
 boolean hasActivity()
           
 boolean hasActivityAndIsEnabled()
           
 boolean isDisabled()
           
 boolean isSelected()
           
 java.lang.String itemStyleClass()
           
 boolean meetsDisplayConditions()
          Decides whether the item gets displayed at all.
 com.webobjects.appserver.WOComponent menuItemSelected()
          Determines whether the menu item is selected, or in the path of the current navigation state.
 com.webobjects.foundation.NSKeyValueCodingAdditions navigationContext()
           
 ERXNavigationItem navigationItem()
          Gets the ERXNavigationItem that provides the backing store for the properties of this menu item.
 java.lang.String navigationItemID()
           
 java.lang.String navigationItemWidth()
           
 ERXNavigationState navigationState()
           
 void reset()
           
 java.lang.Object resolveValue(java.lang.String key)
           
 boolean shouldDisplay()
          Determines if the item should be displayed in the UI, based upon the disabled status.
 
Methods inherited from class er.extensions.components.ERXStatelessComponent
isStateless, valueForBooleanBinding, valueForBooleanBinding, valueForBooleanBinding, valueForIntBinding, valueForObjectBinding, valueForObjectBinding
 
Methods inherited from class er.extensions.components.ERXNonSynchronizingComponent
appendToResponse, invokeAction, resetCachedBindingsInStatefulComponent, synchronizesVariablesWithBindings, takeValuesFromRequest
 
Methods inherited from class er.extensions.components.ERXComponent
_awakeInContext, _checkAccess, _frameworkName, _includeCSSResources, _includeJavascriptResources, additionalCSSFiles, additionalJavascriptFiles, booleanValueForBinding, booleanValueForBinding, booleanValueForBinding, checkAccess, clickToOpenEnabled, componentName, defaultCSSPath, defaultJavascriptPath, dynamicBindings, floatValueForBinding, intValueForBinding, isPageAccessAllowed, localizer, objectValueForBinding, objectValueForBinding, pageWithName, postAppendToResponse, preAppendToResponse, primaryCSSFile, primaryJavascriptFile, stringValueForBinding, stringValueForBinding, useDefaultComponentCSS, useDefaultComponentJavascript
 
Methods inherited from class com.webobjects.appserver.WOComponent
_associationWithName, _childTemplate, _componentDefinition, _componentUnroll, _isPage, _setContext, _setIsPage, _setParent, _setSubcomponent, _sleepInContext, _subcomponentForElementWithID, _templateNameForClass, _unroll, application, awake, baseURL, bindingKeys, canAccessFieldsDirectly, canGetValueForBinding, canSetValueForBinding, clone, context, debugString, descriptionForResponse, ensureAwakeInContext, frameworkName, generateResponse, handleQueryWithUnboundKey, handleTakeValueForUnboundKey, hasBinding, hasSession, isCachingEnabled, isEventLoggingEnabled, logString, name, pageWithName, parent, path, pathURL, performParentAction, pullValuesFromParent, pushValuesToParent, session, set_componentUnroll, set_unroll, setCachingEnabled, setValueForBinding, sleep, takeValueForKey, takeValueForKeyPath, template, templateWithHTMLString, templateWithName, toString, unableToSetNullForKey, validateTakeValueForKeyPath, validateValueForKey, validationFailedWithException, valueForBinding, valueForKey, valueForKeyPath
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

log

public static final org.apache.log4j.Logger log
logging support


_navigationItem

protected ERXNavigationItem _navigationItem

_navigationState

protected ERXNavigationState _navigationState

_linkDirectlyToDirectActions

protected boolean _linkDirectlyToDirectActions

_isDisabled

protected java.lang.Boolean _isDisabled

_meetsDisplayConditions

protected java.lang.Boolean _meetsDisplayConditions

_isSelected

protected java.lang.Boolean _isSelected

_hasActivity

protected java.lang.Boolean _hasActivity

_redirect

protected com.webobjects.appserver.WOComponent _redirect

aChildItem

public ERXNavigationItem aChildItem

STYLE_CLASS_SELECTED

protected static final java.lang.String STYLE_CLASS_SELECTED
See Also:
Constant Field Values

STYLE_CLASS_DISABLED

protected static final java.lang.String STYLE_CLASS_DISABLED
See Also:
Constant Field Values

STYLE_CLASS_SUB

protected static final java.lang.String STYLE_CLASS_SUB
See Also:
Constant Field Values

SHOULD_DISPLAY_DISABLED_MENU_ITEMS

public static final java.lang.String SHOULD_DISPLAY_DISABLED_MENU_ITEMS
See Also:
Constant Field Values
Constructor Detail

ERXModernNavigationMenuItem

public ERXModernNavigationMenuItem(com.webobjects.appserver.WOContext context)
Method Detail

navigationItemID

public java.lang.String navigationItemID()

reset

public void reset()
Overrides:
reset in class ERXStatelessComponent

navigationItemWidth

public java.lang.String navigationItemWidth()

navigationState

public ERXNavigationState navigationState()

directActionRedirect

public com.webobjects.appserver.WOComponent directActionRedirect()
AK This is only an experiment: when calling up a DA, we use a component action and redirect to the actual DA

Returns:
a WORedirect to the direct action URL.

contextComponentActionURL

public java.lang.String contextComponentActionURL()

menuItemSelected

public com.webobjects.appserver.WOComponent menuItemSelected()
Determines whether the menu item is selected, or in the path of the current navigation state.

Returns:
true if the menu item is selected

meetsDisplayConditions

public boolean meetsDisplayConditions()
Decides whether the item gets displayed at all. This is done by evaluating the boolean value of a "conditions" array in the definition file. eg: conditions = ("session.user.canEditThisStuff", "session.user.isEditor") will display the item only if the user can edit this stuff *and* is an editor.

Returns:
true if the display conditions are met

shouldDisplay

public boolean shouldDisplay()
Determines if the item should be displayed in the UI, based upon the disabled status. You may disable display of items that do not meet their display conditions or are explicitly disabled.

Returns:
true if the item should be displayed

navigationItem

public ERXNavigationItem navigationItem()
Gets the ERXNavigationItem that provides the backing store for the properties of this menu item.

Returns:
the navigation item

isDisabled

public boolean isDisabled()

isSelected

public boolean isSelected()

itemStyleClass

public java.lang.String itemStyleClass()

resolveValue

public java.lang.Object resolveValue(java.lang.String key)

hasActivity

public boolean hasActivity()

hasActivityAndIsEnabled

public boolean hasActivityAndIsEnabled()

displayName

public java.lang.String displayName()

children

public com.webobjects.foundation.NSArray children()

navigationContext

public com.webobjects.foundation.NSKeyValueCodingAdditions navigationContext()

Last updated: Tue, Feb 21, 2017 • 05:45 PM CET

Copyright © 2002 – 2007 Project Wonder.