From 842dfbcf8c22c09699effe494da54955e4a08986 Mon Sep 17 00:00:00 2001 From: Jeff Casimir Date: Thu, 1 Sep 2011 01:17:12 -0400 Subject: [PATCH] Basic YARD documentation --- .gitignore | 1 + .yardopts | 1 + Gemfile | 1 + doc/ApplicationDecorator.html | 147 ++++ doc/Draper.html | 123 +++ doc/Draper/AllHelpers.html | 256 ++++++ doc/Draper/Base.html | 1222 ++++++++++++++++++++++++++++ doc/Draper/DecoratorGenerator.html | 216 +++++ doc/Draper/LazyHelpers.html | 174 ++++ doc/Draper/ModelSupport.html | 164 ++++ doc/Draper/System.html | 179 ++++ doc/_index.html | 172 ++++ doc/class_list.html | 47 ++ doc/css/common.css | 1 + doc/css/full_list.css | 53 ++ doc/css/style.css | 320 ++++++++ doc/file_list.html | 46 ++ doc/frames.html | 13 + doc/index.html | 172 ++++ doc/js/app.js | 205 +++++ doc/js/full_list.js | 150 ++++ doc/js/jquery.js | 16 + doc/method_list.html | 174 ++++ doc/top-level-namespace.html | 103 +++ lib/draper/base.rb | 67 ++ 25 files changed, 4023 insertions(+) create mode 100644 .yardopts create mode 100644 doc/ApplicationDecorator.html create mode 100644 doc/Draper.html create mode 100644 doc/Draper/AllHelpers.html create mode 100644 doc/Draper/Base.html create mode 100644 doc/Draper/DecoratorGenerator.html create mode 100644 doc/Draper/LazyHelpers.html create mode 100644 doc/Draper/ModelSupport.html create mode 100644 doc/Draper/System.html create mode 100644 doc/_index.html create mode 100644 doc/class_list.html create mode 100644 doc/css/common.css create mode 100644 doc/css/full_list.css create mode 100644 doc/css/style.css create mode 100644 doc/file_list.html create mode 100644 doc/frames.html create mode 100644 doc/index.html create mode 100644 doc/js/app.js create mode 100644 doc/js/full_list.js create mode 100644 doc/js/jquery.js create mode 100644 doc/method_list.html create mode 100644 doc/top-level-namespace.html diff --git a/.gitignore b/.gitignore index 6e5ee36..8f3741a 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ Gemfile.lock pkg/* coverage.data coverage/* +.yardoc \ No newline at end of file diff --git a/.yardopts b/.yardopts new file mode 100644 index 0000000..5d7fba3 --- /dev/null +++ b/.yardopts @@ -0,0 +1 @@ +yardoc 'lib/draper/**/*.rb' -m markdown \ No newline at end of file diff --git a/Gemfile b/Gemfile index 42d83f2..6270cf1 100644 --- a/Gemfile +++ b/Gemfile @@ -9,5 +9,6 @@ gem 'guard-rspec' gem 'launchy' gem 'rcov', :platforms => [:mri_18] gem 'cover_me', '>= 1.0.0.rc6', :platforms => [:mri_19] +gem 'yard' gemspec \ No newline at end of file diff --git a/doc/ApplicationDecorator.html b/doc/ApplicationDecorator.html new file mode 100644 index 0000000..1ecf122 --- /dev/null +++ b/doc/ApplicationDecorator.html @@ -0,0 +1,147 @@ + + + + + + Class: ApplicationDecorator + + — Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Class: ApplicationDecorator + + + +

+ +
+ +
Inherits:
+
+ Draper::Base + + + show all + +
+ + + + + + + + + +
Defined in:
+
lib/generators/draper/decorator/templates/application_decorator.rb
+ +
+
+ + +

Constant Summary

+ + + + + + + +

Constants inherited from Draper::Base

+

DEFAULT_DENIED, FORCED_PROXY

+ + + + + + +

Instance Attribute Summary

+ +

Attributes inherited from Draper::Base

+

context, model

+ + + + + + + + +

Method Summary

+ +

Methods inherited from Draper::Base

+

allows, decorate, decorates, denies, find, #helpers, #initialize, lazy_helpers, model_name, #to_model

+
+

Constructor Details

+ +

This class inherits a constructor from Draper::Base

+ +
+ + +
+ + + + + \ No newline at end of file diff --git a/doc/Draper.html b/doc/Draper.html new file mode 100644 index 0000000..841376f --- /dev/null +++ b/doc/Draper.html @@ -0,0 +1,123 @@ + + + + + + Module: Draper + + — Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Module: Draper + + + +

+ +
+ + + + + + + + +
Defined in:
+
lib/draper/base.rb,
+ lib/draper/system.rb,
lib/draper/version.rb,
lib/draper/all_helpers.rb,
lib/draper/lazy_helpers.rb
+
+ +
+
+ +

Defined Under Namespace

+

+ + + Modules: AllHelpers, LazyHelpers, ModelSupport + + + + Classes: Base, System + + +

+ +

Constant Summary

+ +
+ +
VERSION = + +
+
"0.7.3"
+
+ +
+ + + + + + + + +
+ + + + + \ No newline at end of file diff --git a/doc/Draper/AllHelpers.html b/doc/Draper/AllHelpers.html new file mode 100644 index 0000000..3c674d3 --- /dev/null +++ b/doc/Draper/AllHelpers.html @@ -0,0 +1,256 @@ + + + + + + Module: Draper::AllHelpers + + — Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Module: Draper::AllHelpers + + + +

+ +
+ + + + + + + + +
Defined in:
+
lib/draper/all_helpers.rb
+ +
+
+ + + + + + + +

+ Instance Method Summary + (collapse) +

+ + + + + + +
+

Instance Method Details

+ + +
+

+ + - (Object) all_helpers + + + +

+
+

Most of the black magic here thanks to Xavier Shay (@xshay) +Provide access to helper methods from outside controllers and views, +such as in Presenter objects. Rails provides ActionController::Base.helpers, +but this does not include any of our application helpers.

+ + +
+
+
+ +
+ + + + +
+
+
+
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+
+
# File 'lib/draper/all_helpers.rb', line 7
+
+def all_helpers
+  @all_helpers_proxy ||= begin
+    # Start with just the rails helpers. This is the same method used
+    # by ActionController::Base.helpers
+    # proxy = ActionView::Base.new.extend(_helpers)
+    proxy = ActionController::Base.helpers
+
+    # url_for depends on _routes method being defined
+    proxy.instance_eval do
+      def _routes
+        Rails.application.routes
+      end
+    end
+ 
+    # Import all named path methods
+    proxy.extend(Rails.application.routes.named_routes.module)
+
+    # Load all our application helpers to extend
+    modules_for_helpers([:all]).each do |mod|
+      proxy.extend(mod)
+    end
+
+    proxy.instance_eval do
+      def controller
+        #Object.controller
+      end
+    end
+
+    proxy.instance_eval do
+      # A hack since this proxy doesn't pick up default_url_options from anywhere
+      def url_for(*args)
+        if args.last.is_a?(Hash) && !args.last[:only_path]
+          args = args.dup
+          args << args.pop.merge('host' => ActionMailer::Base.default_url_options[:host])
+        end
+        super(*args)
+      end
+    end
+
+    proxy
+  end
+end
+
+
+
+ +
+ +
+ + + + + \ No newline at end of file diff --git a/doc/Draper/Base.html b/doc/Draper/Base.html new file mode 100644 index 0000000..b1c2511 --- /dev/null +++ b/doc/Draper/Base.html @@ -0,0 +1,1222 @@ + + + + + + Class: Draper::Base + + — Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Class: Draper::Base + + + +

+ +
+ +
Inherits:
+
+ Object + +
    +
  • Object
  • + + + +
+ show all + +
+ + + + + + + + + +
Defined in:
+
lib/draper/base.rb
+ +
+
+ + +

Constant Summary

+ +
+ +
DEFAULT_DENIED = + +
+
Object.new.methods << :method_missing
+
+ +
FORCED_PROXY = + +
+
[:to_param]
+
+ +
+ + + +

Instance Attribute Summary (collapse)

+ + + + + + +

+ Class Method Summary + (collapse) +

+ + + +

+ Instance Method Summary + (collapse) +

+ + + + +
+

Constructor Details

+ +
+

+ + - (Base) initialize(input, context = nil) + + + +

+
+

Initialize a new decorator instance by passing in +an instance of the source class. Pass in an optional +context is stored for later use.

+ + +
+
+
+

Parameters:

+
    + +
  • + + instance + + + (Object) + + + + — +

    to wrap

    +
    + +
  • + +
  • + + context + + + (Object) + + + (defaults to: nil) + + + — +

    (optional)

    +
    + +
  • + +
+ +
+ + + + +
+
+
+
+17
+18
+19
+20
+21
+22
+23
+
+
# File 'lib/draper/base.rb', line 17
+
+def initialize(input, context = nil)
+  input.inspect # forces evaluation of a lazy query from AR
+  self.class.model_class = input.class if model_class.nil?
+  @model = input
+  self.context = context
+  build_methods
+end
+
+
+
+ +
+ +
+

Instance Attribute Details

+ + + + +
+

+ + - (Object) context + + + +

+
+

Returns the value of attribute context

+ + +
+
+
+ +
+ + + + +
+
+
+
+5
+6
+7
+
+
# File 'lib/draper/base.rb', line 5
+
+def context
+  @context
+end
+
+
+
+ + + + +
+

+ + - (Object) model + + + +

+
+

Returns the value of attribute model

+ + +
+
+
+ +
+ + + + +
+
+
+
+5
+6
+7
+
+
# File 'lib/draper/base.rb', line 5
+
+def model
+  @model
+end
+
+
+
+ +
+ + +
+

Class Method Details

+ + +
+

+ + + (Object) allows(*input_allows) + + + +

+
+

Specifies a white list of methods which may be proxied to +to the wrapped object. When allows is used, only the listed +methods and methods defined in the decorator itself will be +available.

+ +

Do not use both .allows and .denies together, either write +a whitelist with .allows or a blacklist with .denies

+ + +
+
+
+

Parameters:

+
    + +
  • + + methods + + + (Symbols*) + + + + — +

    to allow like :find, :find_by_name

    +
    + +
  • + +
+

Raises:

+
    + +
  • + + + (ArgumentError) + + + +
  • + +
+ +
+ + + + +
+
+
+
+73
+74
+75
+76
+77
+
+
# File 'lib/draper/base.rb', line 73
+
+def self.allows(*input_allows)
+  raise ArgumentError, "Specify at least one method (as a symbol) to allow when using allows" if input_allows.empty?
+  raise ArgumentError, "Use either 'allows' or 'denies', but not both." unless (self.denied == DEFAULT_DENIED)
+  self.allowed = input_allows
+end
+
+
+
+ +
+

+ + + (Object) decorate(input, context = nil) + + + +

+
+

Initialize a new decorator instance by passing in +an instance of the source class. Pass in an optional +context is stored for later use.

+ +

When passing in a single object, using .decorate is +identical to calling .new. However, .decorate can +also accept a collection and return a collection of +individually decorated objects.

+ + +
+
+
+

Parameters:

+
    + +
  • + + instance(s) + + + (Object) + + + + — +

    to wrap

    +
    + +
  • + +
  • + + context + + + (Object) + + + (defaults to: nil) + + + — +

    (optional)

    +
    + +
  • + +
+ +
+ + + + +
+
+
+
+90
+91
+92
+
+
# File 'lib/draper/base.rb', line 90
+
+def self.decorate(input, context = nil)
+  input.respond_to?(:each) ? input.map{|i| new(i, context)} : new(input, context)
+end
+
+
+
+ +
+

+ + + (Object) decorates(input) + + + +

+
+

Typically called within a decorator definition, this method +specifies the name of the wrapped object class.

+ +

For instance, a ProductDecorator class might call decorates :product

+ +

But they don't have to match in name, so a EmployeeDecorator +class could call decorates :person to wrap instances of Person

+ +

This is primarilly set so the .find method knows which class +to query.

+ + +
+
+
+

Parameters:

+
    + +
  • + + class_name + + + (Symbol) + + + + — +

    snakecase name of the decorated class, like :product

    +
    + +
  • + +
+ +
+ + + + +
+
+
+
+46
+47
+48
+49
+
+
# File 'lib/draper/base.rb', line 46
+
+def self.decorates(input)
+  self.model_class = input.to_s.camelize.constantize
+  model_class.send :include, Draper::ModelSupport
+end
+
+
+
+ +
+

+ + + (Object) denies(*input_denied) + + + +

+
+

Specifies a black list of methods which may not be proxied to +to the wrapped object.

+ +

Do not use both .allows and .denies together, either write +a whitelist with .allows or a blacklist with .denies

+ + +
+
+
+

Parameters:

+
    + +
  • + + methods + + + (Symbols*) + + + + — +

    to deny like :find, :find_by_name

    +
    + +
  • + +
+

Raises:

+
    + +
  • + + + (ArgumentError) + + + +
  • + +
+ +
+ + + + +
+
+
+
+58
+59
+60
+61
+62
+
+
# File 'lib/draper/base.rb', line 58
+
+def self.denies(*input_denied)
+  raise ArgumentError, "Specify at least one method (as a symbol) to exclude when using denies" if input_denied.empty?
+  raise ArgumentError, "Use either 'allows' or 'denies', but not both." if self.allowed?
+  self.denied += input_denied
+end
+
+
+
+ +
+

+ + + (Object) find(input) + + + +

+
+

Proxies to the class specified by decorates to automatically +lookup an object in the database and decorate it.

+ + +
+
+
+

Parameters:

+
    + +
  • + + id + + + (Symbol or String) + + + + — +

    to lookup

    +
    + +
  • + +
+

Returns:

+
    + +
  • + + + (Object) + + + + — +

    instance of this decorator class

    +
    + +
  • + +
+ +
+ + + + +
+
+
+
+30
+31
+32
+
+
# File 'lib/draper/base.rb', line 30
+
+def self.find(input)
+  self.new(model_class.find(input))
+end
+
+
+
+ +
+

+ + + (Object) lazy_helpers + + + +

+
+

Calling lazy_helpers will make the built-in and +user-defined Rails helpers accessible as class methods +in the decorator without using the h. or helpers. proxy.

+ +

The drawback is that you dump many methods into your decorator's +namespace and collisions could create unexpected results.

+ + +
+
+
+ +
+ + + + +
+
+
+
+109
+110
+111
+
+
# File 'lib/draper/base.rb', line 109
+
+def self.lazy_helpers
+  self.send(:include, Draper::LazyHelpers)
+end
+
+
+
+ +
+

+ + + (ActiveModel::Name) model_name + + + +

+
+

Use primarily by form_for, this returns an instance of +ActiveModel::Name set to the wrapped model's class name

+ + +
+
+
+

Returns:

+
    + +
  • + + + (ActiveModel::Name) + + + + — +

    model_name

    +
    + +
  • + +
+ +
+ + + + +
+
+
+
+117
+118
+119
+
+
# File 'lib/draper/base.rb', line 117
+
+def self.model_name
+  ActiveModel::Name.new(model_class)
+end
+
+
+
+ +
+ +
+

Instance Method Details

+ + +
+

+ + - (Object) helpers + + + + Also known as: + h + + +

+
+

Access the helpers proxy to call built-in and user-defined +Rails helpers. Aliased to .h for convinience.

+ + +
+
+
+

Returns:

+
    + +
  • + + + (Object) + + + + — +

    proxy

    +
    + +
  • + +
+ +
+ + + + +
+
+
+
+98
+99
+100
+
+
# File 'lib/draper/base.rb', line 98
+
+def helpers
+  @helpers ||= ApplicationController::all_helpers
+end
+
+
+
+ +
+

+ + - (Object) to_model + + + +

+
+

Fetch the original wrapped model.

+ + +
+
+
+

Returns:

+
    + +
  • + + + (Object) + + + + — +

    original_model

    +
    + +
  • + +
+ +
+ + + + +
+
+
+
+124
+125
+126
+
+
# File 'lib/draper/base.rb', line 124
+
+def to_model
+  @model
+end
+
+
+
+ +
+ +
+ + + + + \ No newline at end of file diff --git a/doc/Draper/DecoratorGenerator.html b/doc/Draper/DecoratorGenerator.html new file mode 100644 index 0000000..32b1a93 --- /dev/null +++ b/doc/Draper/DecoratorGenerator.html @@ -0,0 +1,216 @@ + + + + + + Class: Draper::DecoratorGenerator + + — Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Class: Draper::DecoratorGenerator + + + +

+ +
+ +
Inherits:
+
+ Rails::Generators::NamedBase + +
    +
  • Object
  • + + + + + +
+ show all + +
+ + + + + + + + + +
Defined in:
+
lib/generators/draper/decorator/decorator_generator.rb
+ +
+
+ + +

Constant Summary

+ +
+ +
DECORATORS_ROOT = + +
+
'app/decorators/'
+
+ +
APPLICATION_DECORATOR = + +
+
'application_decorator.rb'
+
+ +
APPLICATION_DECORATOR_PATH = + +
+
DECORATORS_ROOT + APPLICATION_DECORATOR
+
+ +
+ + + + + + + + + +

+ Instance Method Summary + (collapse) +

+ + + + + + + +
+

Instance Method Details

+ + +
+

+ + - (Object) build_model_and_application_decorators + + + +

+ + + + +
+
+
+
+9
+10
+11
+12
+13
+14
+15
+
+
# File 'lib/generators/draper/decorator/decorator_generator.rb', line 9
+
+def build_model_and_application_decorators
+  empty_directory "app/decorators"
+  unless File.exists?(APPLICATION_DECORATOR_PATH)
+    template APPLICATION_DECORATOR, APPLICATION_DECORATOR_PATH
+  end
+  template 'decorator.rb', "#{DECORATORS_ROOT}#{singular_name}_decorator.rb"
+end
+
+
+
+ +
+ +
+ + + + + \ No newline at end of file diff --git a/doc/Draper/LazyHelpers.html b/doc/Draper/LazyHelpers.html new file mode 100644 index 0000000..b3213eb --- /dev/null +++ b/doc/Draper/LazyHelpers.html @@ -0,0 +1,174 @@ + + + + + + Module: Draper::LazyHelpers + + — Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Module: Draper::LazyHelpers + + + +

+ +
+ + + + + + + + +
Defined in:
+
lib/draper/lazy_helpers.rb
+ +
+
+ + + + + + + +

+ Instance Method Summary + (collapse) +

+ + + + +
+

Dynamic Method Handling

+

+ This class handles dynamic methods through the method_missing method + +

+ +
+

+ + - (Object) method_missing(method_name, *args, &block) + + + +

+ + + + +
+
+
+
+3
+4
+5
+6
+7
+8
+9
+
+
# File 'lib/draper/lazy_helpers.rb', line 3
+
+def method_missing(method_name, *args, &block)
+  begin
+    helpers.send method_name, *args, &block
+  rescue NoMethodError
+    super
+  end
+end
+
+
+
+ +
+ + +
+ + + + + \ No newline at end of file diff --git a/doc/Draper/ModelSupport.html b/doc/Draper/ModelSupport.html new file mode 100644 index 0000000..f3a2a26 --- /dev/null +++ b/doc/Draper/ModelSupport.html @@ -0,0 +1,164 @@ + + + + + + Module: Draper::ModelSupport + + — Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Module: Draper::ModelSupport + + + +

+ +
+ + + + + + + + +
Defined in:
+
lib/draper/model_support.rb
+ +
+
+ + + + + + + +

+ Instance Method Summary + (collapse) +

+ + + + + + +
+

Instance Method Details

+ + +
+

+ + - (Object) decorator + + + +

+ + + + +
+
+
+
+2
+3
+4
+
+
# File 'lib/draper/model_support.rb', line 2
+
+def decorator
+  @decorator ||= "#{self.class.name}Decorator".constantize.decorate(self)
+end
+
+
+
+ +
+ +
+ + + + + \ No newline at end of file diff --git a/doc/Draper/System.html b/doc/Draper/System.html new file mode 100644 index 0000000..d89c8ad --- /dev/null +++ b/doc/Draper/System.html @@ -0,0 +1,179 @@ + + + + + + Class: Draper::System + + — Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Class: Draper::System + + + +

+ +
+ +
Inherits:
+
+ Object + +
    +
  • Object
  • + + + +
+ show all + +
+ + + + + + + + + +
Defined in:
+
lib/draper/system.rb
+ +
+
+ + + + + + + +

+ Class Method Summary + (collapse) +

+ + + + + + +
+

Class Method Details

+ + +
+

+ + + (Object) setup + + + +

+ + + + +
+
+
+
+3
+4
+5
+
+
# File 'lib/draper/system.rb', line 3
+
+def self.setup
+  ActionController::Base.send(:extend, Draper::AllHelpers) if defined?(ActionController::Base)
+end
+
+
+
+ +
+ +
+ + + + + \ No newline at end of file diff --git a/doc/_index.html b/doc/_index.html new file mode 100644 index 0000000..ce6293a --- /dev/null +++ b/doc/_index.html @@ -0,0 +1,172 @@ + + + + + + Documentation by YARD 0.7.2 + + + + + + + + + + + + + + + + + + + + + + +

Documentation by YARD 0.7.2

+
+

Alphabetic Index

+ +
+

Namespace Listing A-Z

+ + + + + + + + +
+ + + + + +
    +
  • B
  • +
      + +
    • + Base + + (Draper) + +
    • + +
    +
+ + +
    +
  • D
  • + +
+ + + + + + + + +
    +
  • S
  • +
      + +
    • + System + + (Draper) + +
    • + +
    +
+ +
+ +
+ +
+ + + + + \ No newline at end of file diff --git a/doc/class_list.html b/doc/class_list.html new file mode 100644 index 0000000..7ce3800 --- /dev/null +++ b/doc/class_list.html @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + +
+

Class List

+ + + + +
+ + diff --git a/doc/css/common.css b/doc/css/common.css new file mode 100644 index 0000000..cf25c45 --- /dev/null +++ b/doc/css/common.css @@ -0,0 +1 @@ +/* Override this file with custom rules */ \ No newline at end of file diff --git a/doc/css/full_list.css b/doc/css/full_list.css new file mode 100644 index 0000000..f95e4e6 --- /dev/null +++ b/doc/css/full_list.css @@ -0,0 +1,53 @@ +body { + margin: 0; + font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; + font-size: 13px; + height: 101%; + overflow-x: hidden; +} + +h1 { padding: 12px 10px; padding-bottom: 0; margin: 0; font-size: 1.4em; } +.clear { clear: both; } +#search { position: absolute; right: 5px; top: 9px; padding-left: 24px; } +#content.insearch #search, #content.insearch #noresults { background: url(data:image/gif;base64,R0lGODlhEAAQAPYAAP///wAAAPr6+pKSkoiIiO7u7sjIyNjY2J6engAAAI6OjsbGxjIyMlJSUuzs7KamppSUlPLy8oKCghwcHLKysqSkpJqamvT09Pj4+KioqM7OzkRERAwMDGBgYN7e3ujo6Ly8vCoqKjY2NkZGRtTU1MTExDw8PE5OTj4+PkhISNDQ0MrKylpaWrS0tOrq6nBwcKysrLi4uLq6ul5eXlxcXGJiYoaGhuDg4H5+fvz8/KKiohgYGCwsLFZWVgQEBFBQUMzMzDg4OFhYWBoaGvDw8NbW1pycnOLi4ubm5kBAQKqqqiQkJCAgIK6urnJyckpKSjQ0NGpqatLS0sDAwCYmJnx8fEJCQlRUVAoKCggICLCwsOTk5ExMTPb29ra2tmZmZmhoaNzc3KCgoBISEiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCAAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAkIAAAALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkECQgAAAAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAkIAAAALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==) no-repeat center left; } +#full_list { padding: 0; list-style: none; margin-left: 0; } +#full_list ul { padding: 0; } +#full_list li { padding: 5px; padding-left: 12px; margin: 0; font-size: 1.1em; list-style: none; } +#noresults { padding: 7px 12px; } +#content.insearch #noresults { margin-left: 7px; } +ul.collapsed ul, ul.collapsed li { display: none; } +li a.toggle { cursor: default; position: relative; left: -5px; top: 4px; text-indent: -999px; width: 10px; height: 9px; margin-left: -10px; display: block; float: left; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left; } +li.collapsed a.toggle { opacity: 0.5; cursor: default; background-position: top left; } +li { color: #888; cursor: pointer; } +li.deprecated { text-decoration: line-through; font-style: italic; } +li.r1 { background: #f0f0f0; } +li.r2 { background: #fafafa; } +li:hover { background: #ddd; } +li small:before { content: "("; } +li small:after { content: ")"; } +li small.search_info { display: none; } +a:link, a:visited { text-decoration: none; color: #05a; } +li.clicked { background: #05a; color: #ccc; } +li.clicked a:link, li.clicked a:visited { color: #eee; } +li.clicked a.toggle { opacity: 0.5; background-position: bottom right; } +li.collapsed.clicked a.toggle { background-position: top right; } +#search input { border: 1px solid #bbb; -moz-border-radius: 3px; -webkit-border-radius: 3px; } +#nav { margin-left: 10px; font-size: 0.9em; display: none; color: #aaa; } +#nav a:link, #nav a:visited { color: #358; } +#nav a:hover { background: transparent; color: #5af; } + +.frames #content h1 { margin-top: 0; } +.frames li { white-space: nowrap; cursor: normal; } +.frames li small { display: block; font-size: 0.8em; } +.frames li small:before { content: ""; } +.frames li small:after { content: ""; } +.frames li small.search_info { display: none; } +.frames #search { width: 170px; position: static; margin: 3px; margin-left: 10px; font-size: 0.9em; color: #888; padding-left: 0; padding-right: 24px; } +.frames #content.insearch #search { background-position: center right; } +.frames #search input { width: 110px; } +.frames #nav { display: block; } + +#full_list.insearch li { display: none; } +#full_list.insearch li.found { display: list-item; padding-left: 10px; } +#full_list.insearch li a.toggle { display: none; } +#full_list.insearch li small.search_info { display: block; } diff --git a/doc/css/style.css b/doc/css/style.css new file mode 100644 index 0000000..2c70d8f --- /dev/null +++ b/doc/css/style.css @@ -0,0 +1,320 @@ +body { + padding: 0 20px; + font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; + font-size: 13px; +} +body.frames { padding: 0 5px; } +h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; } +h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; } +h1.title { margin-bottom: 10px; } +h1.alphaindex { margin-top: 0; font-size: 22px; } +h2 { + padding: 0; + padding-bottom: 3px; + border-bottom: 1px #aaa solid; + font-size: 1.4em; + margin: 1.8em 0 0.5em; +} +h2 small { font-weight: normal; font-size: 0.7em; display: block; float: right; } +.clear { clear: both; } +.inline { display: inline; } +.inline p:first-child { display: inline; } +.docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; } +.docstring h1 { font-size: 1.2em; } +.docstring h2 { font-size: 1.1em; } +.docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; } +.summary_desc .object_link, .docstring .object_link { font-family: monospace; } + +/* style for