APIs

Show:

The primary view for the settings area. Refer to settings.settingsCollection to find the various individual views for each area. When creating a view, try to only extend the awa.mvc.ContentView. The router/controller simply passes an args object to this view which is dispersed to the proper tab and then evaluated to the correct contents view. This view currently supports 6 categories which correspond to the 6 tabs.

Methods

allowedEvents

() Undefined

This is a function, but what's important is the returned value. 'tabCreated', 'tabDisplayed', 'tabDestroyed', 'destroyed', 'rendered'

Returns:

Undefined:

bindToModel

(
  • [model]
)
Undefined

Binds the view to a Model. will explain more later.

Parameters:

  • [model] awa.mvc.Model | Backbone.Model optional

    Model to bind to

Returns:

Undefined:

createTab

(
  • params
  • $container
)
Undefined

Adds a new tab and view area to the tabbed container view

Parameters:

  • params Object

    This can be either the constructor method or an already constructed view. I'd suggest you construct your view first as it's easier to track any issues.

    • onTabSelect String | Function

      This can be a string location or a function that carries out its own process. It is recommended that you also set a location per Tab.

    • [view] awa.mvc.View | Constructor optional

      View instance that is displayed in tab panel

    • [viewArgs] Array optional

      Arguments applied to the view class

    • [title] String optional

      Tab title

    • [index] String optional

      ???

    • [identifier] String optional

      identifying key, should be dom safe

    • [template] String | Function optional

      template to render into tab

    • [args] Object optional

      dont use this

    • [locked] Boolean optional

      Prevents user from closing tab

    • [icon] String optional

      Icon for title

  • $container Object

    dont use this

Returns:

Undefined:

destroy

() awa.mvc.View

clears out all widgets, grids, and events. Also removes and destroys children

Returns:

awa.mvc.View:

this

doChildrenLayouts

() Undefined

Needed for height fixing and other positioning changes

Returns:

Undefined:

doLayout

() Undefined

Needed for height fixing and other positioning changes

Returns:

Undefined:

getWidget

() Array

get the view controlling a widget by it's selector

Returns:

Array:

widgets

insertTab

(
  • params
)
Undefined

wrapper for old views that use the old methods

Parameters:

  • params Object

    This can be either the constructor method or an already constructed view. I'd suggest you construct your view first as it's easier to track any issues.

Returns:

Undefined:

on

(
  • event
  • callback
  • context
)
Undefined

More Magic

Parameters:

  • event String

    Event string

  • callback Function

    Callback

  • context Object

    Context

Returns:

Undefined:

onDestroyed

(
  • callback
  • context
)
Undefined

More Magic

Parameters:

  • callback Function

    Callback

  • context Object

    Context

Returns:

Undefined:

onNewTabID

(
  • args
)
Undefined

sets current tab with args object. tabIdentifier is required to find the correct tab. The entire args object is passed through to the view in the tab.

Parameters:

  • args Object

    Options object

    • tabIdentifier String

      web safe string identifier for tab

    • id String

      web safe string identifier for tab. either this or tabIdentifier is requires

Returns:

Undefined:

onRendered

(
  • callback
  • context
)
Undefined

This is called only once in the lifetime of a view, if you bind to it before the view is rendered, the function will be called after triggerRendered is called.

Parameters:

  • callback Function

    Callback

  • context Object

    Defines scope of callback

Returns:

Undefined:

onSelectedTabClosed

(
  • tab
)
Boolean

Stub function to allow child views to handle what to do when a selected tab is closed.

Returning true prevents the default action.

Parameters:

  • tab Object

    Tab config

Returns:

Boolean:

true if default action should be prevented

onTabCreated

(
  • callback
  • [context]
)
Undefined

The onTabCreated method binds to the tabcreated event. when calling this method, all existing tabs that have been created are passed to the function. This prevents you from having to check what tabs already exist. There is a onceTabCreated and an offTabCreated.

Parameters:

  • callback Function

    Event handler

  • [context] Object optional

    object to represent this

Returns:

Undefined:

onTabDestroyed

(
  • callback
  • [context]
)
Undefined

Parameters:

  • callback Function

    Event handler

  • [context] Object optional

    object to represent this

Returns:

Undefined:

onTabDisplayed

(
  • callback
  • [context]
)
Undefined

Parameters:

  • callback Function

    Event handler

  • [context] Object optional

    object to represent this

Returns:

Undefined:

refresh

() awa.mvc.View

There is a habit of re-rendering entire views when it may not be necessary. Parent views can check the rendered flag and call refresh instead if the child view has already been rendered.

Returns:

awa.mvc.View:

this

render

() awa.mvc.TabContainerView chainable

overrides backbone.view's render method. Sets the rendered property to rendered and renders any provided templates. This also binds any buttons in the view to it's action IF it has an actions attribute. The action attribute value should match the name of the function in the view class.

Returns:

requestChange

(
  • callback
)
Undefined

Parent views should check this before changing/swapping a view. Useful for views that are in edit mode that you want to do confirmation before leaving.

Parameters:

  • callback Function

    function to call when you have determined if the view can close or not. If it can close, return an object with property 'success' set to 1.

Returns:

Undefined:

requestClose

(
  • callback
)
Undefined

Parent views should check this before closing a view. Useful for views that are in edit mode that you want to do confirmation before closing.

Parameters:

  • callback Function

    function to call when you have determined if the view can close or not. If it can close, return an object with property 'success' set to 1.

Returns:

Undefined:

setElement

(
  • element
  • [delegate]
)
Undefined

Overidden setElement method applies the className to the new element the view is applied to. Also, if multiple views are passed in (what is returned from a jquery selector) it will be the top of the list.

Parameters:

  • element Jquery.Selector

    Jquery selector

  • [delegate] ? optional

    ?

Returns:

Undefined:

triggerRendered

(
  • args
)
Undefined

The view should only call this once its completely rendered. This does not include refreshing views (i.e. grids changing pages). This also sets the view's rendered property to true.

Parameters:

  • args Object

    parameter to emit

Returns:

Undefined:

viewOptions

() Array

the constructor uses this function to determine which properties to pull out of the passed in options to directly attach to the view. All other options can be referenced from the view's options property

Returns:

Array:

Acceptable view options

Properties

__parent__

View

Parent view object

Default: undefined

className

Boolean | Function

when this view is rendered, it will create a new element with this class added. If the setElement method is used, this will append itself to the class attribute

Default: "awa-mvc-View"

closeOnReplace

Boolean

Mostly for views that contain multiple views. This allows a parent view to know that the view should be closed and destroyed when another view is swapped in.

Default: false

globalKeys

Object

used for the keymaster plugin. These will be scoped to the entire app.

Default: undefined

keys

Object

used for the keymaster plugin. These will be scoped to this view in the future.

Default: undefined

refreshOnReplace

Boolean

Mostly for views that contain multiple views. This allows a parent view to know that the view should be refreshed when this view is swapped back in.

Default: true

rendered

Boolean

Lets you know if this view object has been rendered or not. If you override the render method without doing a supercall, be sure to set it to true when you are done rendering.

Default: false

title

Strin

Can be used by parent views to put on tabs, control bars, popup headers, etc. Use accessor methods.

Default: "View"

tpl

Function

default template to use with this view, the render method will use this and inject the resulting html into it's $el.

Default: undefined

tplArgs

Object

arguments that are passed to the template

Default: undefined