             "dashboard"
             ]
 
-        @_Vars = VariablesInstance
-
+    #
+    # Start the tabbed interface
+    # 
     start:()->
         # Show the rule thumbnails first
         @showRuleThumbnailsTab()

###
Tabs.coffee

@author Destin Moulton
@git https://github.com/destinmoulton/cagen
@license MIT

Component of Cellular Automata Generator (CAGEN)

Manage the tabs for the various cagen features

###

class Tabs
    constructor: (VariablesInstance)->
        @_classActive = "active"

        @_idRuleThumbnailsTab = "#tab-rulethumbnails"

        # Click the Dashboard tab
        $(@_idDashboardTab).click((event)=>@showDashboardTab())

    #
    # Activate a tab via string name
    # 
    activate: (tabName)->
        for tab in @_tabs
            $(@_tabIdPrefix+tab).removeClass(@_classActive)

        $(@_tabIdPrefix+tabName).addClass(@_classActive)

    #
    # Setup the instances for the CAGEN features
    # 
    setClassInstances: (RuleThumbnailsInstance, TopRowEditorInstance, DashboardInstance)->
        @_RuleThumbnails = RuleThumbnailsInstance
        @_TopRowEditor = TopRowEditorInstance
        @_Dashboard = DashboardInstance

    #
    # Show the Rule Thumbnails tab
    # 
    showRuleThumbnailsTab:() ->
        # Activate the tab
        @activate('rulethumbnails')

        @_RuleThumbnails.show()

    #
    # Show the Top Row Editor tab
    # 
    showTopRowEditorTab:() ->
        # Activate the tab
        @activate('toproweditor')

        @_TopRowEditor.run()

    #
    # Show the Dashboard tab
    # 
    showDashboardTab:() ->
        # Activate the tab
        @activate('dashboard')
