# :stopdoc:
# This file is automatically generated by the WXRuby3 documentation 
# generator. Do not alter this file.
# :startdoc:


module Wx::RTC

  # This is a listbox that can display the styles in a {Wx::RTC::RichTextStyleSheet}, and apply the selection to an associated {Wx::RTC::RichTextCtrl}.
  # See <code>samples/richtext</code> for an example of how to use it.
  # === 
  # 
  # Category:  Rich Text
  # @see Wx::RTC::RichTextStyleComboCtrl
  # @see  wxRichTextCtrl Overview 
  # 
  # 
  class RichTextStyleListBox < HtmlListBox
  
    # Which type of style definition is currently showing?
    # 
    # 
    # 
    class RichTextStyleType < Wx::Enum
    
      # 
      # 
      RICHTEXT_STYLE_ALL = Wx::RTC::RichTextStyleListBox::RichTextStyleType.new(0)
      
      # 
      # 
      RICHTEXT_STYLE_PARAGRAPH = Wx::RTC::RichTextStyleListBox::RichTextStyleType.new(1)
      
      # 
      # 
      RICHTEXT_STYLE_CHARACTER = Wx::RTC::RichTextStyleListBox::RichTextStyleType.new(2)
      
      # 
      # 
      RICHTEXT_STYLE_LIST = Wx::RTC::RichTextStyleListBox::RichTextStyleType.new(3)
      
      # 
      # 
      RICHTEXT_STYLE_BOX = Wx::RTC::RichTextStyleListBox::RichTextStyleType.new(4)
      
    end # RichTextStyleType
    
    # @overload initialize(parent, id=Wx::StandardID::ID_ANY, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0)
    #   Constructor.
    #   @param parent [Wx::Window] 
    #   @param id [Integer] 
    #   @param pos [Array(Integer, Integer), Wx::Point] 
    #   @param size [Array(Integer, Integer), Wx::Size] 
    #   @param style [Integer] 
    #   @return [Wx::RTC::RichTextStyleListBox]
    # @overload initialize()
    #   @return [Wx::RTC::RichTextStyleListBox]
    def initialize(*args) end
    
    # Creates the window.
    # @param parent [Wx::Window] 
    # @param id [Integer] 
    # @param pos [Array(Integer, Integer), Wx::Point] 
    # @param size [Array(Integer, Integer), Wx::Size] 
    # @param style [Integer] 
    # @return [Boolean]
    def create(parent, id=Wx::StandardID::ID_ANY, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0) end
    
    # Applies the ith style to the associated rich text control.
    # @param i [Integer] 
    # @return [void]
    def apply_style(i) end
    
    # Converts units in tenths of a millimetre to device units.
    # @param dc [Wx::DC] 
    # @param units [Integer] 
    # @return [Integer]
    def convert_tenths_mm_to_pixels(dc, units) end
    
    # Creates a suitable HTML fragment for a definition.
    # @param def_ [Wx::RTC::RichTextStyleDefinition] 
    # @return [String]
    def create_html(def_) end
    
    # If the return value is true, clicking on a style name in the list will immediately apply the style to the associated rich text control.
    # @return [Boolean]
    def get_apply_on_selection; end
    alias_method :apply_on_selection, :get_apply_on_selection
    
    # Returns the {Wx::RTC::RichTextCtrl} associated with this listbox.
    # @return [Wx::RTC::RichTextCtrl]
    def get_rich_text_ctrl; end
    alias_method :rich_text_ctrl, :get_rich_text_ctrl
    
    # Gets a style for a listbox index.
    # @param i [Integer] 
    # @return [Wx::RTC::RichTextStyleDefinition]
    def get_style(i) end
    alias_method :style, :get_style
    
    # Returns the style sheet associated with this listbox.
    # @return [Wx::RTC::RichTextStyleSheet]
    def get_style_sheet; end
    alias_method :style_sheet, :get_style_sheet
    
    # Returns the type of style to show in the list box.
    # @return [Wx::wxRichTextStyleListBox::RichTextStyleType]
    def get_style_type; end
    alias_method :style_type, :get_style_type
    
    # Implements left click behaviour, applying the clicked style to the {Wx::RTC::RichTextCtrl}.
    # @param event [Wx::MouseEvent] 
    # @return [void]
    def on_left_down(event) end
    
    # If applyOnSelection is true, clicking on a style name in the list will immediately apply the style to the associated rich text control.
    # @param applyOnSelection [Boolean] 
    # @return [void]
    def set_apply_on_selection(applyOnSelection) end
    alias_method :apply_on_selection=, :set_apply_on_selection
    
    # Associates the listbox with a {Wx::RTC::RichTextCtrl}.
    # @param ctrl [Wx::RTC::RichTextCtrl] 
    # @return [void]
    def set_rich_text_ctrl(ctrl) end
    alias_method :rich_text_ctrl=, :set_rich_text_ctrl
    
    # Associates the control with a style sheet.
    # @param styleSheet [Wx::RTC::RichTextStyleSheet] 
    # @return [void]
    def set_style_sheet(styleSheet) end
    alias_method :style_sheet=, :set_style_sheet
    
    # Sets the style type to display.
    # One of
    # 
    # - {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_ALL},
    # - {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_PARAGRAPH},
    # - {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_CHARACTER}
    # - {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_LIST}.
    # @param styleType [Wx::wxRichTextStyleListBox::RichTextStyleType] 
    # @return [void]
    def set_style_type(styleType) end
    alias_method :style_type=, :set_style_type
    
    # Updates the list from the associated style sheet.
    # @return [void]
    def update_styles; end
    
  end # RichTextStyleListBox
  
  # This class incorporates a {Wx::RTC::RichTextStyleListBox} and a choice control that allows the user to select the category of style to view.
  # It is demonstrated in the {Wx::RTC::RichTextCtrl} sample in <code>samples/richtext</code>.
  # To use {Wx::RTC::RichTextStyleListCtrl}, add the control to your window hierarchy and call {Wx::RTC::RichTextStyleListCtrl#set_style_type} with one of {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_ALL}, {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_PARAGRAPH}, {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_CHARACTER} and {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_LIST} to set the current view.
  # Associate the control with a style sheet and rich text control with SetStyleSheet and SetRichTextCtrl, so that when a style is double-clicked, it is applied to the selection.
  # === Styles
  # 
  # This class supports the following styles:
  # 
  # - {Wx::RICHTEXTSTYLELIST_HIDE_TYPE_SELECTOR}: This style hides the category selection control. 
  # 
  # === 
  # 
  # Category:  Rich Text
  # 
  class RichTextStyleListCtrl < Control
  
    # @overload initialize(parent, id=Wx::StandardID::ID_ANY, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0)
    #   Constructors.
    #   @param parent [Wx::Window] 
    #   @param id [Integer] 
    #   @param pos [Array(Integer, Integer), Wx::Point] 
    #   @param size [Array(Integer, Integer), Wx::Size] 
    #   @param style [Integer] 
    #   @return [Wx::RTC::RichTextStyleListCtrl]
    # @overload initialize()
    #   @return [Wx::RTC::RichTextStyleListCtrl]
    def initialize(*args) end
    
    # Creates the windows.
    # @param parent [Wx::Window] 
    # @param id [Integer] 
    # @param pos [Array(Integer, Integer), Wx::Point] 
    # @param size [Array(Integer, Integer), Wx::Size] 
    # @param style [Integer] 
    # @return [Boolean]
    def create(parent, id=Wx::StandardID::ID_ANY, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0) end
    
    # Returns the associated rich text control, if any.
    # @return [Wx::RTC::RichTextCtrl]
    def get_rich_text_ctrl; end
    alias_method :rich_text_ctrl, :get_rich_text_ctrl
    
    # Returns the {Wx::Choice} control used for selecting the style category.
    # @return [Wx::Choice]
    def get_style_choice; end
    alias_method :style_choice, :get_style_choice
    
    # Returns the {Wx::ListBox} control used to view the style list.
    # @return [Wx::RTC::RichTextStyleListBox]
    def get_style_list_box; end
    alias_method :style_list_box, :get_style_list_box
    
    # Returns the associated style sheet, if any.
    # @return [Wx::RTC::RichTextStyleSheet]
    def get_style_sheet; end
    alias_method :style_sheet, :get_style_sheet
    
    # Returns the type of style to show in the list box.
    # @return [Wx::wxRichTextStyleListBox::RichTextStyleType]
    def get_style_type; end
    alias_method :style_type, :get_style_type
    
    # Associates the control with a {Wx::RTC::RichTextCtrl}.
    # @param ctrl [Wx::RTC::RichTextCtrl] 
    # @return [void]
    def set_rich_text_ctrl(ctrl) end
    alias_method :rich_text_ctrl=, :set_rich_text_ctrl
    
    # Associates the control with a style sheet.
    # @param styleSheet [Wx::RTC::RichTextStyleSheet] 
    # @return [void]
    def set_style_sheet(styleSheet) end
    alias_method :style_sheet=, :set_style_sheet
    
    # Sets the style type to display.
    # One of
    # 
    # - {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_ALL},
    # - {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_PARAGRAPH},
    # - {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_CHARACTER}
    # - {Wx::RTC::RichTextStyleListBox::RICHTEXT_STYLE_LIST}.
    # @param styleType [Wx::wxRichTextStyleListBox::RichTextStyleType] 
    # @return [void]
    def set_style_type(styleType) end
    alias_method :style_type=, :set_style_type
    
    # Updates the style list box.
    # @return [void]
    def update_styles; end
    
  end # RichTextStyleListCtrl
  
  # This is a combo control that can display the styles in a {Wx::RTC::RichTextStyleSheet}, and apply the selection to an associated {Wx::RTC::RichTextCtrl}.
  # See <code>samples/richtext</code> for an example of how to use it.
  # === 
  # 
  # Category:  Rich Text
  # @see Wx::RTC::RichTextStyleListBox
  # @see  wxRichTextCtrl Overview 
  # 
  # 
  class RichTextStyleComboCtrl < ComboCtrl
  
    # @overload initialize(parent, id=Wx::StandardID::ID_ANY, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0)
    #   Constructor.
    #   @param parent [Wx::Window] 
    #   @param id [Integer] 
    #   @param pos [Array(Integer, Integer), Wx::Point] 
    #   @param size [Array(Integer, Integer), Wx::Size] 
    #   @param style [Integer] 
    #   @return [Wx::RTC::RichTextStyleComboCtrl]
    # @overload initialize()
    #   @return [Wx::RTC::RichTextStyleComboCtrl]
    def initialize(*args) end
    
    # Creates the windows.
    # @param parent [Wx::Window] 
    # @param id [Integer] 
    # @param pos [Array(Integer, Integer), Wx::Point] 
    # @param size [Array(Integer, Integer), Wx::Size] 
    # @param style [Integer] 
    # @return [Boolean]
    def create(parent, id=Wx::StandardID::ID_ANY, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0) end
    
    # Returns the {Wx::RTC::RichTextCtrl} associated with this control.
    # @return [Wx::RTC::RichTextCtrl]
    def get_rich_text_ctrl; end
    alias_method :rich_text_ctrl, :get_rich_text_ctrl
    
    # Returns the style sheet associated with this control.
    # @return [Wx::RTC::RichTextStyleSheet]
    def get_style_sheet; end
    alias_method :style_sheet, :get_style_sheet
    
    # Associates the control with a {Wx::RTC::RichTextCtrl}.
    # @param ctrl [Wx::RTC::RichTextCtrl] 
    # @return [void]
    def set_rich_text_ctrl(ctrl) end
    alias_method :rich_text_ctrl=, :set_rich_text_ctrl
    
    # Associates the control with a style sheet.
    # @param styleSheet [Wx::RTC::RichTextStyleSheet] 
    # @return [void]
    def set_style_sheet(styleSheet) end
    alias_method :style_sheet=, :set_style_sheet
    
    # Updates the combo control from the associated style sheet.
    # @return [void]
    def update_styles; end
    
  end # RichTextStyleComboCtrl
  

end