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


module Wx

  # 
  HL_CONTEXTMENU = 1
  
  # 
  HL_ALIGN_LEFT = 2
  
  # 
  HL_ALIGN_RIGHT = 4
  
  # 
  HL_ALIGN_CENTRE = 8
  
  # 
  HL_DEFAULT_STYLE = 2097161
  
  # 
  # 
  EVT_HYPERLINK = 10023
  
  # This class shows a static text element which links to an URL.
  # Appearance and behaviour is completely customizable.
  # In fact, when the user clicks on the hyperlink, a {Wx::HyperlinkEvent} is sent but if that event is not handled (or it's skipped; see {Wx::Event#skip}), then a call to {launch_default_browser} is done with the hyperlink's URL.
  # Note that standard {Wx::Window} functions like {Wx::Window#set_background_colour}, {Wx::Window#set_font}, {Wx::Window#set_cursor}, {Wx::Window#set_label} can be used to customize appearance of the hyperlink.
  # === Styles
  # 
  # This class supports the following styles:
  # 
  # - {Wx::HL_ALIGN_LEFT}: Align the text to the left. 
  # 
  # - {Wx::HL_ALIGN_RIGHT}: Align the text to the right. This style is not supported under Windows. 
  # 
  # - {Wx::HL_ALIGN_CENTRE}: Center the text (horizontally). This style is not supported under Windows. 
  # 
  # - {Wx::HL_CONTEXTMENU}: Pop up a context menu when the hyperlink is right-clicked. The context menu contains a "Copy URL" menu item which is automatically handled by the hyperlink and which just copies in the clipboard the URL (not the label) of the control. 
  # 
  # - {Wx::HL_DEFAULT_STYLE}: The default style for {Wx::HyperlinkCtrl}: {Wx::Border::BORDER_NONE}|{Wx::HL_CONTEXTMENU}|{Wx::HL_ALIGN_CENTRE}. 
  # 
  # === Events emitted by this class
  # 
  # The following event-handler methods redirect the events to member method or handler blocks for {Wx::HyperlinkEvent} events.
  # Event handler methods for events emitted by this class:
  # 
  # - {Wx::EvtHandler#evt_hyperlink}(id, meth = nil, &block): The hyperlink was (left) clicked. If this event is not handled in user's code (or it's skipped; see {Wx::Event#skip}), then a call to {Wx::LaunchDefaultBrowser} is done with the hyperlink's URL. 
  # 
  # Currently this class is implemented using native support in wxGTK and wxMSW and a generic version is used by the other ports.
  # === 
  # 
  # Category:  {Wx::Controls}  <div class='appearance'><span class='appearance'>Appearance:</span><table><tr><td> wxMSW Appearance
  #   </td><td> wxGTK Appearance
  #   </td><td> wxOSX Appearance
  #   </td></tr></table></div>
  # @see Wx::URL
  # @see  Wx::HyperlinkEvent 
  # 
  # 
  class HyperlinkCtrl < Control
  
    # @overload initialize()
    #   @return [Wx::HyperlinkCtrl]
    # @overload initialize(parent, id, label, url, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=Wx::HL_DEFAULT_STYLE, name=Wx::HyperlinkCtrlNameStr)
    #   Constructor.
    #   See {Wx::HyperlinkCtrl#create} for more info.
    #   @param parent [Wx::Window] 
    #   @param id [Integer] 
    #   @param label [String] 
    #   @param url [String] 
    #   @param pos [Array(Integer, Integer), Wx::Point] 
    #   @param size [Array(Integer, Integer), Wx::Size] 
    #   @param style [Integer] 
    #   @param name [String] 
    #   @return [Wx::HyperlinkCtrl]
    def initialize(*args) end
    
    # Creates the hyperlink control.
    # @param parent [Wx::Window]  Parent window. Must not be NULL.
    # @param id [Integer]  Window identifier. A value of {Wx::StandardID::ID_ANY} indicates a default value.
    # @param label [String]  The label of the hyperlink.
    # @param url [String]  The URL associated with the given label.
    # @param pos [Array(Integer, Integer), Wx::Point]  Window position.
    # @param size [Array(Integer, Integer), Wx::Size]  Window size. If the {Wx::DEFAULT_SIZE} is specified then the window is sized appropriately.
    # @param style [Integer]  Window style. See {Wx::HyperlinkCtrl}.
    # @param name [String]  Window name.
    # @return [Boolean]
    def create(parent, id, label, url, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=Wx::HL_DEFAULT_STYLE, name=Wx::HyperlinkCtrlNameStr) end
    
    # Returns the colour used to print the label of the hyperlink when the mouse is over the control.
    # @return [Wx::Colour]
    def get_hover_colour; end
    alias_method :hover_colour, :get_hover_colour
    
    # Returns the colour used to print the label when the link has never been clicked before (i.e. the link has not been visited) and the mouse is not over the control.
    # @return [Wx::Colour]
    def get_normal_colour; end
    alias_method :normal_colour, :get_normal_colour
    
    # Returns the URL associated with the hyperlink.
    # @return [String]
    def get_url; end
    alias_method :url, :get_url
    
    # Returns true if the hyperlink has already been clicked by the user at least one time.
    # @return [Boolean]
    def get_visited; end
    alias_method :visited, :get_visited
    
    # Returns the colour used to print the label when the mouse is not over the control and the link has already been clicked before (i.e. the link has been visited).
    # @return [Wx::Colour]
    def get_visited_colour; end
    alias_method :visited_colour, :get_visited_colour
    
    # Sets the colour used to print the label of the hyperlink when the mouse is over the control.
    # @param colour [Wx::Colour,String,Symbol] 
    # @return [void]
    def set_hover_colour(colour) end
    alias_method :hover_colour=, :set_hover_colour
    
    # Sets the colour used to print the label when the link has never been clicked before (i.e. the link has not been visited) and the mouse is not over the control.
    # @param colour [Wx::Colour,String,Symbol] 
    # @return [void]
    def set_normal_colour(colour) end
    alias_method :normal_colour=, :set_normal_colour
    
    # Sets the URL associated with the hyperlink.
    # @param url [String] 
    # @return [void]
    def set_url(url) end
    alias_method :url=, :set_url
    
    # Marks the hyperlink as visited (see {Wx::HyperlinkCtrl#set_visited_colour}).
    # @param visited [Boolean] 
    # @return [void]
    def set_visited(visited=true) end
    alias_method :visited=, :set_visited
    
    # Sets the colour used to print the label when the mouse is not over the control and the link has already been clicked before (i.e. the link has been visited).
    # @param colour [Wx::Colour,String,Symbol] 
    # @return [void]
    def set_visited_colour(colour) end
    alias_method :visited_colour=, :set_visited_colour
    
  end # HyperlinkCtrl
  

end