# :stopdoc:
# This file is automatically generated by the WXRuby3 documentation
# generator. Do not alter this file.
# :startdoc:
module Wx::PG
#
#
# ## wxPropertyGridIterator Flags
# NOTES: At lower 16-bits, there are flags to check if item will be included. At higher 16-bits, there are same flags, but to instead check if children will be included.
#
# @wxrb_require USE_PROPGRID
class PG_ITERATOR_FLAGS < Wx::Enum
# Iterate through 'normal' property items (does not include children of aggregate or hidden items by default).
#
PG_ITERATE_PROPERTIES = Wx::PG::PG_ITERATOR_FLAGS.new(1610634272)
# Iterate children of collapsed parents, and individual items that are hidden.
#
PG_ITERATE_HIDDEN = Wx::PG::PG_ITERATOR_FLAGS.new(2097156)
# Iterate children of parent that is an aggregate property (ie has fixed children).
#
PG_ITERATE_FIXED_CHILDREN = Wx::PG::PG_ITERATOR_FLAGS.new(1677743136)
# Iterate categories.
#
PG_ITERATE_CATEGORIES = Wx::PG::PG_ITERATOR_FLAGS.new(536879136)
#
#
PG_ITERATE_ALL_PARENTS = Wx::PG::PG_ITERATOR_FLAGS.new(25600)
#
#
PG_ITERATE_ALL_PARENTS_RECURSIVELY = Wx::PG::PG_ITERATOR_FLAGS.new(1677747200)
#
#
PG_ITERATOR_FLAGS_ALL = Wx::PG::PG_ITERATOR_FLAGS.new(29732)
#
#
PG_ITERATOR_MASK_OP_ITEM = Wx::PG::PG_ITERATOR_FLAGS.new(29732)
#
#
PG_ITERATOR_MASK_OP_PARENT = Wx::PG::PG_ITERATOR_FLAGS.new(29732)
# Combines all flags needed to iterate through visible properties (i.e.
#
PG_ITERATE_VISIBLE = Wx::PG::PG_ITERATOR_FLAGS.new(1677751328)
# Iterate all items.
#
PG_ITERATE_ALL = Wx::PG::PG_ITERATOR_FLAGS.new(1679848484)
# Iterate through individual properties (ie categories and children of aggregate properties are skipped).
#
PG_ITERATE_NORMAL = Wx::PG::PG_ITERATOR_FLAGS.new(1612731428)
# Default iterator flags.
#
PG_ITERATE_DEFAULT = Wx::PG::PG_ITERATOR_FLAGS.new(1612731428)
end # PG_ITERATOR_FLAGS
# Holder of property grid page information.
#
# You can subclass this and give instance in {Wx::PG::PropertyGridManager#add_page}. It inherits from {Wx::EvtHandler} and can be used to process events specific to this page (id of events will still be same as manager's). If you don't want to use it to process all events of the page, you need to return false in the derived {Wx::PG::PropertyGridPage#is_handling_all_events}.
# Please note that {Wx::PG::PropertyGridPage} lacks many non-const property manipulation functions found in {Wx::PG::PropertyGridManager}. Please use parent manager (m_manager member variable) when needed.
# Please note that most member functions are inherited and as such not documented on this page. This means you will probably also want to read {Wx::PG::PropertyGridInterface} class reference.
#
# ## Event Handling
# {Wx::PG::PropertyGridPage} receives events emitted by its {Wx::PG::PropertyGridManager}, but only those events that are specific to that page. If {Wx::PG::PropertyGridPage}:: IsHandlingAllEvents returns false, then unhandled events are sent to the manager's parent, as usual.
# See wxPropertyGrid Event Handling for more information.
#
# Category: {Wx::PG::PropertyGrid}
#
# @wxrb_require USE_PROPGRID
class PropertyGridPage < EvtHandler
include Wx::PG::PropertyGridInterface
# @return [Wx::PG::PropertyGridPage]
def initialize; end
# Deletes all properties on page.
# @return [void]
def clear; end
# Reduces column sizes to minimum possible that contents are still visibly (naturally some margin space will be applied as well).
#
# Returns minimum size for the page to still display everything.
#
#
#
# Note that you can also get calculated column widths by calling {Wx::PG::PropertyGridPage#get_column_width} immediately after this function returns.
# @return [Wx::Size]
def fit_columns; end
# Returns page index in manager;.
# @return [Integer]
def get_index; end
alias_method :index, :get_index
# Returns "root property".
#
# It does not have name, etc. and it is not visible. It is only useful for accessing its children.
# @return [Wx::PG::PGProperty]
def get_root; end
alias_method :root, :get_root
# Returns x-coordinate position of splitter on a page.
# @param col [Integer]
# @return [Integer]
def get_splitter_position(col=0) end
alias_method :splitter_position, :get_splitter_position
# Returns id of the tool bar item that represents this page on {Wx::PG::PropertyGridManager}'s {Wx::ToolBar}.
# @return [Integer]
def get_tool_id; end
alias_method :tool_id, :get_tool_id
# Do any member initialization in this method.
#
#
# @return [void]
def init; end
# Return false here to indicate unhandled events should be propagated to manager's parent, as normal.
# @return [Boolean]
def is_handling_all_events; end
alias_method :handling_all_events?, :is_handling_all_events
# Called every time page is about to be shown.
#
# Useful, for instance, creating properties just-in-time.
# @return [void]
def on_show; end
# Refreshes given property on page.
# @param p [Wx::PG::PGProperty]
# @return [void]
def refresh_property(p) end
# Sets splitter position on page.
#
#
# @param splitterPos [Integer]
# @param col [Integer]
# @return [void]
def set_splitter_position(splitterPos, col=0) end
alias_method :splitter_position=, :set_splitter_position
# Makes sure all columns have minimum width.
# @param widthChange [Integer]
# @return [void]
def check_column_widths(widthChange=0) end
# Override this member function to add custom behaviour on property deletion.
# @param item [Wx::PG::PGProperty]
# @return [void]
def do_delete(item) end
# Override this member function to add custom behaviour on property insertion.
# @param parent [Wx::PG::PGProperty]
# @param index [Integer]
# @param property [Wx::PG::PGProperty]
# @return [Wx::PG::PGProperty]
def do_insert(parent, index, property) end
# @param enable [Boolean]
# @return [Boolean]
def enable_categories(enable) end
# Make sure virtual height is up-to-date.
# @return [void]
def ensure_virtual_height; end
# Returns (precalculated) height of contained visible properties.
# @return [Integer]
def get_virtual_height; end
alias_method :virtual_height, :get_virtual_height
# Returns actual height of contained visible properties.
#
#
# @return [Integer]
def get_actual_virtual_height; end
alias_method :actual_virtual_height, :get_actual_virtual_height
# @return [Integer]
def get_column_count; end
alias_method :column_count, :get_column_count
# @param column [Integer]
# @return [Integer]
def get_column_min_width(column) end
alias_method :column_min_width, :get_column_min_width
# @param column [Integer]
# @return [Integer]
def get_column_width(column) end
alias_method :column_width, :get_column_width
# @return [Wx::PG::PropertyGrid]
def get_grid; end
alias_method :grid, :get_grid
# @param flags [Integer]
# @return [Wx::PG::PGProperty]
def get_last_item(flags=Wx::PG::PG_ITERATOR_FLAGS::PG_ITERATE_DEFAULT) end
alias_method :last_item, :get_last_item
# Returns currently selected property.
# @return [Wx::PG::PGProperty]
def get_selection; end
alias_method :selection, :get_selection
# @param p [Wx::PG::PGProperty]
# @return [Wx::PG::PropertyCategory]
def get_property_category(p) end
alias_method :property_category, :get_property_category
# Returns combined width of margin and all the columns.
# @return [Integer]
def get_virtual_width; end
alias_method :virtual_width, :get_virtual_width
# @param p [Wx::PG::PGProperty]
# @param col [Integer]
# @return [Integer]
def get_column_full_width(p, col) end
alias_method :column_full_width, :get_column_full_width
# Returns information about arbitrary position in the grid.
# @param pt [Array(Integer, Integer), Wx::Point] Logical coordinates in the virtual grid space. Use Wx::Scrolled#calc_unscrolled_position if you need to translate a scrolled position into a logical one.
# @return [Wx::PG::PropertyGridHitTestResult]
def hit_test(pt) end
# Returns true if page is visibly displayed.
# @return [Boolean]
def is_displayed; end
alias_method :displayed?, :is_displayed
# @return [Boolean]
def is_in_non_cat_mode; end
alias_method :in_non_cat_mode?, :is_in_non_cat_mode
# Called after virtual height needs to be recalculated.
# @return [void]
def virtual_height_changed; end
end # PropertyGridPage
end