Commit 11fcb1f9 authored by Rene Saarsoo's avatar Rene Saarsoo
Browse files

Merge class icons for user-defined tags.

parents 914de8e0 0c03f2e5
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@ require 'jsduck/process/inherit_doc'
require 'jsduck/process/versions'
require 'jsduck/process/return_values'
require 'jsduck/process/fires'
require 'jsduck/process/components'
require 'jsduck/process/lint'
require 'jsduck/process/no_doc'
require 'jsduck/process/circular_deps'
@@ -71,6 +72,7 @@ module JsDuck
      Process::Versions.new(relations, opts).process_all!
      Process::ReturnValues.new(relations).process_all!
      Process::Fires.new(relations).process_all!
      Process::Components.new(relations).process_all!
      Process::Lint.new(relations).process_all!
      Process::NoDoc.new(relations).process_all!
      relations
+2 −1
Original line number Diff line number Diff line
require 'jsduck/render/class'
require 'jsduck/exporter/full'
require 'jsduck/tag_registry'
require 'jsduck/web/class_icons'

module JsDuck
  module Exporter
@@ -18,7 +19,7 @@ module JsDuck
      def export(cls)
        data = @full_exporter.export(cls)

        data[:component] = cls.inherits_from?("Ext.Component")
        data[:classIcon] = Web::ClassIcons.get(cls)
        data[:superclasses] = cls.superclasses.collect {|c| c[:name] }
        data[:subclasses] = @relations.subclasses(cls).collect {|c| c[:name] }.sort
        data[:mixedInto] = @relations.mixed_into(cls).collect {|c| c[:name] }.sort
+19 −0
Original line number Diff line number Diff line
module JsDuck
  module Process

    # Auto-detects classes inheriting from Ext.Component, and marks
    # them as :component.
    class Components
      def initialize(relations)
        @relations = relations
      end

      def process_all!
        @relations.each do |cls|
          cls[:component] = true if cls.inherits_from?("Ext.Component")
        end
      end
    end

  end
end
+5 −0
Original line number Diff line number Diff line
@@ -5,6 +5,11 @@ module JsDuck::Tag
    def initialize
      @pattern = "class"
      @tagname = :class
      @class_icon = {
        :small => File.dirname(__FILE__) + "/icons/class.png",
        :large => File.dirname(__FILE__) + "/icons/class-large.png",
        :redirect => File.dirname(__FILE__) + "/icons/class-redirect.png",
      }
    end

    # @class name
+18 −0
Original line number Diff line number Diff line
require "jsduck/tag/boolean_tag"

module JsDuck::Tag
  # The @component tag should be rarely used explicitly as it gets
  # auto-detected by Process::Components for any component inheriting
  # from Ext.Component.
  class Component < BooleanTag
    def initialize
      @pattern = "component"
      @class_icon = {
        :small => File.dirname(__FILE__) + "/icons/component.png",
        :large => File.dirname(__FILE__) + "/icons/component-large.png",
        :redirect => File.dirname(__FILE__) + "/icons/component-redirect.png",
      }
      super
    end
  end
end
Loading