Options
All
  • Public
  • Public/Protected
  • All
Menu

External module "ext/CvViewMenu"

Index

Interfaces

Variables

Object literals

Variables

CvDropdownViewMenu

CvDropdownViewMenu: ClassicComponentClass<CvViewMenuProps> = React.createClass<CvViewMenuProps, CvViewMenuState>({mixins: [CvBaseMixin, CvViewMenuBase],componentWillMount: function() {if(!this._checkVisibility()) {this.props.viewLoadedListener && this.props.viewLoadedListener('no_view_support');}},componentDidMount: function () {if(this.state.visible) {this.refresh();}},componentWillReceiveProps: function (nextProps, nextContext) {if(this._checkVisibility(nextProps, nextContext)) {this.refresh(nextProps, nextContext);}},getDefaultProps: function () {return {paneContext: null,actionListeners: [],navigationListeners: [],navTarget: null,viewDescs: [],openLeft: false,viewSelectionListener: null,viewLoadedListener: null,selectedViewId: null}},getInitialState: function() {return {selectedViewId: null, visible:true}},render: function () {if(this.state.visible) {const viewDescs:Array<ViewDesc> = this.viewDescs();const selectedViewId:ViewId = this.state.selectedViewId;let buttonText = 'Select View';if(selectedViewId && selectedViewId.value) {const selectedViewDesc:ViewDesc = ArrayUtil.find<ViewDesc>(this.viewDescs(), (viewDesc:ViewDesc)=>{return selectedViewId.value == viewDesc.viewId;});if(selectedViewDesc) {buttonText = selectedViewDesc.name;}}const itemProps:CvViewDescProps = {paneContext: this.props.paneContext,actionListeners: this.props.actionListeners,navigationListeners: this.props.navigationListeners,navTarget: this.props.navTarget,catavolt: this.props.catavolt,eventRegistry: this.props.eventRegistry};let viewItemClassName = "dropdown-menu cv-dropdown-menu";if (this.props.openLeft) viewItemClassName += ' dropdown-menu-right';const itemRenderer = (cvContext:CvContext, callback:CvViewDescCallback)=> {const viewDesc:ViewDesc = cvContext.scopeCtx.scopeObj;return <li onClick={()=>{ if(selectedViewId && (selectedViewId.value != viewDesc.viewId)) {callback.openView((success:any, error?:any)=>{if(!error){this.setState({selectedViewId: new ViewId(viewDesc.viewId)});this.props.viewSelectionListener && this.props.viewSelectionListener(viewDesc.viewId);}});}}}><a className="cv-target">{viewDesc.name}</a></li>};return (<span className="dropdown cv-view-dropdown"><button className="btn btn-xs" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">{buttonText} <span className="caret"/></button><ul className={viewItemClassName}>{viewDescs.map((viewDesc:ViewDesc)=>{return <CvViewDesc {...itemProps} viewDesc={viewDesc} renderer={itemRenderer} key={viewDesc.viewId}/>})}</ul></span>);} else {return null;}},_checkVisibility: function(nextProps, nextContext):boolean {const viewDescs:Array<ViewDesc> = this.viewDescs(nextProps, nextContext);if(!this.catavolt().isFeatureSetAvailable("View_Support") || !viewDescs || viewDescs.length < 2) {if(this.state.visible) {this.setState({visible: false});}return false;} else {if(!this.state.visible) {this.setState({visible:true});}return true;}}})

Object literals

CvViewMenuBase

CvViewMenuBase: object

paneContext

  • paneContext(nextProps: any, nextContext: any): PaneContext
  • Parameters

    • nextProps: any
    • nextContext: any

    Returns PaneContext

refresh

  • refresh(nextProps: any, nextContext: any): void
  • Parameters

    • nextProps: any
    • nextContext: any

    Returns void

viewDescs

  • viewDescs(nextProps: any, nextContext: any): Array<ViewDesc>
  • Parameters

    • nextProps: any
    • nextContext: any

    Returns Array<ViewDesc>

Generated using TypeDoc