Class: TabsOnRails::Tabs::Builder
- Inherits:
-
Object
- Object
- TabsOnRails::Tabs::Builder
- Defined in:
- lib/tabs_on_rails/tabs.rb
Overview
Builder
The Builder class represents the interface for any custom Builder.
To create a custom Builder extend this class and implement the following abstract methods:
-
tab_for(args)
Direct Known Subclasses
Instance Method Summary collapse
-
#close_tabs ⇒ Object
Overwrite this method to use a custom close tag for your tabs.
-
#current_tab?(tab) ⇒ Boolean
Returns true if
tabis thecurrent_tab. -
#initialize(context) ⇒ Builder
constructor
Initializes a new builder with
context. -
#open_tabs ⇒ Object
Overwrite this method to use a custom open tag for your tabs.
-
#tab_for(*args) ⇒ Object
Creates and returns a tab with given
args.
Constructor Details
#initialize(context) ⇒ Builder
Initializes a new builder with context.
34 35 36 |
# File 'lib/tabs_on_rails/tabs.rb', line 34 def initialize(context) @context = context end |
Instance Method Details
#close_tabs ⇒ Object
Overwrite this method to use a custom close tag for your tabs.
70 71 |
# File 'lib/tabs_on_rails/tabs.rb', line 70 def close_tabs end |
#current_tab?(tab) ⇒ Boolean
Returns true if tab is the current_tab.
Examples
class MyController < ApplicationController
tab :foo
end
current_tab? :foo # => true
current_tab? 'foo' # => true
current_tab? :bar # => false
current_tab? 'bar' # => false
51 52 53 |
# File 'lib/tabs_on_rails/tabs.rb', line 51 def current_tab?(tab) tab.to_s == @context.current_tab.to_s end |
#open_tabs ⇒ Object
Overwrite this method to use a custom open tag for your tabs.
66 67 |
# File 'lib/tabs_on_rails/tabs.rb', line 66 def open_tabs end |
#tab_for(*args) ⇒ Object
Creates and returns a tab with given args.
Raises
- NotImplemented
-
you should implement this method in your custom Builder.
61 62 63 |
# File 'lib/tabs_on_rails/tabs.rb', line 61 def tab_for(*args) raise NotImplementedError end |