Class: Rabbit::ThemeBrowser

Inherits:
Object
  • Object
show all
Includes:
GetText
Defined in:
lib/rabbit/theme-browser.rb,
lib/rabbit/theme-browser/tag.rb,
lib/rabbit/theme-browser/page.rb,
lib/rabbit/theme-browser/tree.rb,
lib/rabbit/theme-browser/document.rb,
lib/rabbit/theme-browser/rd2document-lib.rb,
lib/rabbit/theme-browser/ext/block-verbatim.rb

Defined Under Namespace

Modules: Ext, Tag Classes: Document, Page, RD2DocumentVisitor, Tree

Constant Summary

Constants included from GetText

GetText::DOMAIN

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from GetText

N_, _, bindtextdomain, locale=

Constructor Details

#initialize(logger, locales, startup_theme = nil) ⇒ ThemeBrowser

Returns a new instance of ThemeBrowser.



14
15
16
17
18
19
20
21
# File 'lib/rabbit/theme-browser.rb', line 14

def initialize(logger, locales, startup_theme=nil)
  @logger = logger
  @locales = locales
  @pages = {}
  @startup_theme = startup_theme
  load_themes
  init_gui
end

Instance Attribute Details

#loggerObject (readonly)

Returns the value of attribute logger.



12
13
14
# File 'lib/rabbit/theme-browser.rb', line 12

def logger
  @logger
end

#themesObject (readonly)

Returns the value of attribute themes.



12
13
14
# File 'lib/rabbit/theme-browser.rb', line 12

def themes
  @themes
end

Instance Method Details

#load_themesObject



37
38
39
40
# File 'lib/rabbit/theme-browser.rb', line 37

def load_themes
  Theme::Entry.reload_template
  @themes = Theme::Searcher.collect_all_theme
end

#pageObject



42
43
44
45
# File 'lib/rabbit/theme-browser.rb', line 42

def page
  current_locale = @locales[@notebook.page]
  @pages[current_locale]
end

#runObject



30
31
32
33
34
35
# File 'lib/rabbit/theme-browser.rb', line 30

def run
  Document.load_tag_table(@themes)
  @window.show_all
  @notebook.page = @init_page_number
  page.change_tree(@startup_theme, "theme") if @startup_theme
end

#set_window_size(width, height) ⇒ Object



23
24
25
26
27
28
# File 'lib/rabbit/theme-browser.rb', line 23

def set_window_size(width, height)
  @window.set_default_size(width, height)
  @pages.each_value do |page|
    page.default_size_changed(width, height)
  end
end