.. wxPython Phoenix documentation This file was generated by Phoenix's sphinx generator and associated tools, do not edit by hand. Copyright: (c) 2011-2020 by Total Control Software License: wxWindows License .. include:: headings.inc .. currentmodule:: wx.lib.agw.labelbook .. highlight:: python .. _wx.lib.agw.labelbook.ImageContainerBase: ========================================================================================================================================== |phoenix_title| **wx.lib.agw.labelbook.ImageContainerBase** ========================================================================================================================================== Base class for :class:`FlatImageBook` image container. | |class_hierarchy| Class Hierarchy ================================= .. raw:: html
Inheritance diagram for class ImageContainerBase:
| |sub_classes| Known Subclasses ============================== :class:`wx.lib.agw.labelbook.ImageContainer`, :class:`wx.lib.agw.labelbook.LabelContainer` | |super_classes| Known Superclasses ================================== :class:`wx.Panel` | |method_summary| Methods Summary ================================ ================================================================================ ================================================================================ :meth:`~wx.lib.agw.labelbook.ImageContainerBase.__init__` Default class constructor. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.AddPage` Adds a page to the container. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.AssignImageList` Assigns an image list to the :class:`wx.ImageContainerBase`. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.CanDoBottomStyle` Allows the parent to examine the children type. Some implementation :meth:`~wx.lib.agw.labelbook.ImageContainerBase.ClearAll` Deletes all the pages in the container. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.ClearFlag` Removes flag from the style. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.DoDeletePage` Does the actual page deletion. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.DrawPin` Draw a pin button, that allows collapsing of the image panel. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.EnableTab` Enables or disables a tab. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.FixTextSize` Fixes the text, to fit `maxWidth` value. If the text length exceeds :meth:`~wx.lib.agw.labelbook.ImageContainerBase.GetEnabled` Returns whether a tab is enabled or not. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.GetImageList` Return the image list for :class:`wx.ImageContainerBase`. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.GetImageSize` Returns the image size inside the :class:`wx.ImageContainerBase` image list. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.GetPageImage` Returns the image index for the given page. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.GetPageText` Returns the tab caption for the given page. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.HasAGWFlag` Tests for existence of flag in the style. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.HitTest` Returns the index of the tab at the specified position or ``wx.NOT_FOUND`` :meth:`~wx.lib.agw.labelbook.ImageContainerBase.InsertPage` Inserts a page into the container at the specified position. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.OnEraseBackground` Handles the ``wx.EVT_ERASE_BACKGROUND`` event for :class:`wx.ImageContainerBase`. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.OnMouseLeaveWindow` Handles the ``wx.EVT_LEAVE_WINDOW`` event for :class:`wx.ImageContainerBase`. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.OnMouseLeftDown` Handles the ``wx.EVT_LEFT_DOWN`` event for :class:`wx.ImageContainerBase`. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.OnMouseLeftUp` Handles the ``wx.EVT_LEFT_UP`` event for :class:`wx.ImageContainerBase`. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.OnMouseMove` Handles the ``wx.EVT_MOTION`` event for :class:`wx.ImageContainerBase`. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.OnSize` Handles the ``wx.EVT_SIZE`` event for :class:`wx.ImageContainerBase`. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.PointOnSash` Tests whether pt is located on the sash. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.SetPageImage` Sets the image for the given page. :meth:`~wx.lib.agw.labelbook.ImageContainerBase.SetPageText` Sets the tab caption for the given page. ================================================================================ ================================================================================ | |api| Class API =============== .. class:: ImageContainerBase(wx.Panel) Base class for :class:`FlatImageBook` image container. .. method:: __init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.DefaultSize, style=0, agwStyle=0, name="ImageContainerBase") Default class constructor. :param `parent`: parent window. Must not be ``None``; :param `id`: window identifier. A value of -1 indicates a default value; :param `pos`: the control position. A value of (-1, -1) indicates a default position, chosen by either the windowing system or wxPython, depending on platform; :param `size`: the control size. A value of (-1, -1) indicates a default size, chosen by either the windowing system or wxPython, depending on platform; :param `style`: the underlying :class:`Panel` window style; :param `agwStyle`: the AGW-specific window style. This can be a combination of the following bits: =========================== =========== ================================================== Window Styles Hex Value Description =========================== =========== ================================================== ``INB_BOTTOM`` 0x1 Place labels below the page area. Available only for :class:`FlatImageBook`. ``INB_LEFT`` 0x2 Place labels on the left side. Available only for :class:`FlatImageBook`. ``INB_RIGHT`` 0x4 Place labels on the right side. ``INB_TOP`` 0x8 Place labels above the page area. ``INB_BORDER`` 0x10 Draws a border around :class:`LabelBook` or :class:`FlatImageBook`. ``INB_SHOW_ONLY_TEXT`` 0x20 Shows only text labels and no images. Available only for :class:`LabelBook`. ``INB_SHOW_ONLY_IMAGES`` 0x40 Shows only tab images and no label texts. Available only for :class:`LabelBook`. ``INB_FIT_BUTTON`` 0x80 Displays a pin button to show/hide the book control. ``INB_DRAW_SHADOW`` 0x100 Draw shadows below the book tabs. Available only for :class:`LabelBook`. ``INB_USE_PIN_BUTTON`` 0x200 Displays a pin button to show/hide the book control. ``INB_GRADIENT_BACKGROUND`` 0x400 Draws a gradient shading on the tabs background. Available only for :class:`LabelBook`. ``INB_WEB_HILITE`` 0x800 On mouse hovering, tabs behave like html hyperlinks. Available only for :class:`LabelBook`. ``INB_NO_RESIZE`` 0x1000 Don't allow resizing of the tab area. ``INB_FIT_LABELTEXT`` 0x2000 Will fit the tab area to the longest text (or text+image if you have images) in all the tabs. ``INB_BOLD_TAB_SELECTION`` 0x4000 Show the selected tab text using a bold font. =========================== =========== ================================================== :param `name`: the window name. .. method:: AddPage(self, caption, selected=False, imgIdx=-1) Adds a page to the container. :param `caption`: specifies the text for the new tab; :param `selected`: specifies whether the page should be selected; :param `imgIdx`: specifies the optional image index for the new tab. .. method:: AssignImageList(self, imglist) Assigns an image list to the :class:`wx.ImageContainerBase`. :param `imglist`: an instance of :class:`wx.ImageList`. .. method:: CanDoBottomStyle(self) Allows the parent to examine the children type. Some implementation (such as :class:`LabelBook`), does not support top/bottom images, only left/right. .. method:: ClearAll(self) Deletes all the pages in the container. .. method:: ClearFlag(self, flag) Removes flag from the style. :param `flag`: a window style flag. .. seealso:: :meth:`~ImageContainerBase.HasAGWFlag` for a list of possible window style flags. .. method:: DoDeletePage(self, page) Does the actual page deletion. :param `page`: the index of the tab. .. method:: DrawPin(self, dc, rect, downPin) Draw a pin button, that allows collapsing of the image panel. :param `dc`: an instance of :class:`wx.DC`; :param `rect`: the pin button client rectangle; :param `downPin`: ``True`` if the pin button is facing downwards, ``False`` if it is facing leftwards. .. method:: EnableTab(self, page, enabled=True) Enables or disables a tab. :param `page`: an integer specifying the page index; :param `enabled`: ``True`` to enable a tab, ``False`` to disable it. .. method:: FixTextSize(self, dc, text, maxWidth) Fixes the text, to fit `maxWidth` value. If the text length exceeds `maxWidth` value this function truncates it and appends two dots at the end. ("Long Long Long Text" might become "Long Long..."). :param `dc`: an instance of :class:`wx.DC`; :param `text`: the text to fix/truncate; :param `maxWidth`: the maximum allowed width for the text, in pixels. .. method:: GetEnabled(self, page) Returns whether a tab is enabled or not. :param `page`: an integer specifying the page index. .. method:: GetImageList(self) Return the image list for :class:`wx.ImageContainerBase`. .. method:: GetImageSize(self) Returns the image size inside the :class:`wx.ImageContainerBase` image list. .. method:: GetPageImage(self, page) Returns the image index for the given page. :param `page`: the index of the tab. .. method:: GetPageText(self, page) Returns the tab caption for the given page. :param `page`: the index of the tab. .. method:: HasAGWFlag(self, flag) Tests for existence of flag in the style. :param `flag`: a window style. This can be a combination of the following bits: =========================== =========== ================================================== Window Styles Hex Value Description =========================== =========== ================================================== ``INB_BOTTOM`` 0x1 Place labels below the page area. Available only for :class:`FlatImageBook`. ``INB_LEFT`` 0x2 Place labels on the left side. Available only for :class:`FlatImageBook`. ``INB_RIGHT`` 0x4 Place labels on the right side. ``INB_TOP`` 0x8 Place labels above the page area. ``INB_BORDER`` 0x10 Draws a border around :class:`LabelBook` or :class:`FlatImageBook`. ``INB_SHOW_ONLY_TEXT`` 0x20 Shows only text labels and no images. Available only for :class:`LabelBook`. ``INB_SHOW_ONLY_IMAGES`` 0x40 Shows only tab images and no label texts. Available only for :class:`LabelBook`. ``INB_FIT_BUTTON`` 0x80 Displays a pin button to show/hide the book control. ``INB_DRAW_SHADOW`` 0x100 Draw shadows below the book tabs. Available only for :class:`LabelBook`. ``INB_USE_PIN_BUTTON`` 0x200 Displays a pin button to show/hide the book control. ``INB_GRADIENT_BACKGROUND`` 0x400 Draws a gradient shading on the tabs background. Available only for :class:`LabelBook`. ``INB_WEB_HILITE`` 0x800 On mouse hovering, tabs behave like html hyperlinks. Available only for :class:`LabelBook`. ``INB_NO_RESIZE`` 0x1000 Don't allow resizing of the tab area. ``INB_FIT_LABELTEXT`` 0x2000 Will fit the tab area to the longest text (or text+image if you have images) in all the tabs. ``INB_BOLD_TAB_SELECTION`` 0x4000 Show the selected tab text using a bold font. =========================== =========== ================================================== .. method:: HitTest(self, pt) Returns the index of the tab at the specified position or ``wx.NOT_FOUND`` if ``None``, plus the flag style of :meth:`~ImageContainerBase.HitTest`. :param `pt`: an instance of :class:`wx.Point`, to test for hits. :return: The index of the tab at the specified position plus the hit test flag, which can be one of the following bits: ====================== ======= ================================ HitTest Flags Value Description ====================== ======= ================================ ``IMG_OVER_IMG`` 0 The mouse is over the tab icon ``IMG_OVER_PIN`` 1 The mouse is over the pin button ``IMG_OVER_EW_BORDER`` 2 The mouse is over the east-west book border ``IMG_NONE`` 3 Nowhere ====================== ======= ================================ .. method:: InsertPage(self, page_idx, caption, selected=False, imgIdx=-1) Inserts a page into the container at the specified position. :param `page_idx`: specifies the position for the new tab; :param `caption`: specifies the text for the new tab; :param `selected`: specifies whether the page should be selected; :param `imgIdx`: specifies the optional image index for the new tab. .. method:: OnEraseBackground(self, event) Handles the ``wx.EVT_ERASE_BACKGROUND`` event for :class:`wx.ImageContainerBase`. :param `event`: a :class:`EraseEvent` event to be processed. .. note:: This method is intentionally empty to reduce flicker. .. method:: OnMouseLeaveWindow(self, event) Handles the ``wx.EVT_LEAVE_WINDOW`` event for :class:`wx.ImageContainerBase`. :param `event`: a :class:`MouseEvent` event to be processed. .. method:: OnMouseLeftDown(self, event) Handles the ``wx.EVT_LEFT_DOWN`` event for :class:`wx.ImageContainerBase`. :param `event`: a :class:`MouseEvent` event to be processed. .. method:: OnMouseLeftUp(self, event) Handles the ``wx.EVT_LEFT_UP`` event for :class:`wx.ImageContainerBase`. :param `event`: a :class:`MouseEvent` event to be processed. .. method:: OnMouseMove(self, event) Handles the ``wx.EVT_MOTION`` event for :class:`wx.ImageContainerBase`. :param `event`: a :class:`MouseEvent` event to be processed. .. method:: OnSize(self, event) Handles the ``wx.EVT_SIZE`` event for :class:`wx.ImageContainerBase`. :param `event`: a :class:`wx.SizeEvent` event to be processed. .. method:: PointOnSash(self, pt) Tests whether pt is located on the sash. :param `pt`: an instance of :class:`wx.Point`, to test for hits. .. method:: SetPageImage(self, page, imgIdx) Sets the image for the given page. :param `page`: the index of the tab; :param `imgIdx`: specifies the optional image index for the tab. .. method:: SetPageText(self, page, text) Sets the tab caption for the given page. :param `page`: the index of the tab; :param `text`: the new tab caption.