phoenix_title wx.lib.agw.zoombar.ZoomBar

ZoomBar is a class that appoximatively mimics the behaviour of the Mac Dock, inside a Panel.

This is the main class implementation.


class_hierarchy Class Hierarchy

Inheritance diagram for class ZoomBar:

appearance Control Appearance


wxMSW

wxMSW

wxMAC

wxMAC

wxGTK

wxGTK


super_classes Known Superclasses

wx.Control


method_summary Methods Summary

__init__

Default class constructor.

AddButton

Adds a button to ZoomBar.

AddSeparator

Adds a separator to ZoomBar.

DoGetBestSize

Gets the size which best suits the window: for a control, it would be the

DoLayout

Common method to re-layout ZoomBar.

DrawButtons

Draws all the main button bitmaps on the ZoomBar client window.

DrawLabels

Draws all the button labels on the ZoomBar client window.

DrawReflections

Draws all the reflection button bitmaps on the ZoomBar client window.

EnableButton

Enables/disables the button at position index.

GetBarColour

Returns the background button bar colour.

GetButtonSize

Returns the original (not zoomed) button size, in pixels.

GetCenterZoom

Returns True if buttons zoom upwards.

GetShowLabels

Returns True if button labels are currently shown.

GetShowReflections

Returns True if reflections bitmap are currently shown.

GetZoomFactor

Returns the current zoom factor.

HitTest

HitTest method for ZoomBar.

InitialReposition

Sets up the initial buttons and sizes them from the center.

IsButtonEnabled

Returns True if the button at position index is enabled, False

OnEraseBackground

Handles the wx.EVT_ERASE_BACKGROUND event for ZoomBar.

OnLeaveWindow

Handles the wx.EVT_LEAVE_WINDOW event for ZoomBar.

OnLeftDown

Handles the wx.EVT_LEFT_DOWN and wx.EVT_LEFT_DCLICK events for ZoomBar.

OnLeftUp

Handles the wx.EVT_LEFT_UP event for ZoomBar.

OnMotion

Handles the wx.EVT_MOTION event for ZoomBar.

OnPaint

Handles the wx.EVT_PAINT event for ZoomBar.

OnSize

Handles the wx.EVT_SIZE event for ZoomBar.

Reposition

Repositions all the buttons inside the ZoomBar.

ResetSize

Resets all the button sizes and positions, recalculating the optimal ZoomBar

SetBarColour

Sets the background button bar colour.

SetButtonSize

Sets the original button size.

SetCenterZoom

Sets to zoom from the center.

SetShowLabels

Sets whether to show button labels or not.

SetShowReflections

Sets whether to show reflections or not.

SetZoomFactor

Sets the zoom factor for all the buttons. Larger number gives a greater zoom

SnapToBottom

Snaps the background button bar bitmap and all the buttons to the bottom


api Class API

class ZoomBar(wx.Control)

ZoomBar is a class that appoximatively mimics the behaviour of the Mac Dock, inside a Panel.

This is the main class implementation.


Methods

__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.DefaultSize, name="ZoomBar")

Default class constructor.

Parameters:
  • parent – the ZoomBar parent. Must not be None;

  • id – window identifier. A value of -1 indicates a default value;

  • pos – the control position. A value of (-1, -1) indicates a default position, chosen by either the windowing system or wxPython, depending on platform;

  • size – the control size. A value of (-1, -1) indicates a default size, chosen by either the windowing system or wxPython, depending on platform;

  • name – the window name.



AddButton(self, normalBmp, reflectionBmp=wx.NullBitmap, label="", disabledBmp=wx.NullBitmap, disabledReflectionBmp=wx.NullBitmap)

Adds a button to ZoomBar.

Parameters:
  • normalBmp – the button main bitmap, an instance of wx.Bitmap;

  • reflectionBmp – a bitmap representing a reflection of the main bitmap, an instance of wx.Bitmap;

  • label – the button label;

  • disabledBmp – the button main bitmap when the button is in a disabled state, an instance of wx.Bitmap;

  • disabledReflectionBmp – a bitmap representing a reflection of the main bitmap, when the button is in a disabled state, an instance of wx.Bitmap.



AddSeparator(self, normalBmp, reflectionBmp=wx.NullBitmap)

Adds a separator to ZoomBar.

Parameters:
  • normalBmp – the separator main bitmap, an instance of wx.Bitmap;

  • reflectionBmp – a bitmap representing a reflection of the main bitmap, an instance of wx.Bitmap.



DoGetBestSize(self)

Gets the size which best suits the window: for a control, it would be the minimal size which doesn’t truncate the control, for a panel - the same size as it would have after a call to Fit().

Note

Overridden from wx.Control.



DoLayout(self)

Common method to re-layout ZoomBar.



DrawButtons(self, dc)

Draws all the main button bitmaps on the ZoomBar client window.

Parameters:

dc – an instance of wx.DC.



DrawLabels(self, dc)

Draws all the button labels on the ZoomBar client window.

Parameters:

dc – an instance of wx.DC.



DrawReflections(self, dc)

Draws all the reflection button bitmaps on the ZoomBar client window.

Parameters:

dc – an instance of wx.DC.



EnableButton(self, index, enable=True)

Enables/disables the button at position index.

Parameters:
  • index – the index of the button to enable/disable;

  • enableTrue to enable the button, False to disable it.



GetBarColour(self)

Returns the background button bar colour.



GetButtonSize(self)

Returns the original (not zoomed) button size, in pixels.



GetCenterZoom(self)

Returns True if buttons zoom upwards.



GetShowLabels(self)

Returns True if button labels are currently shown.



GetShowReflections(self)

Returns True if reflections bitmap are currently shown.



GetZoomFactor(self)

Returns the current zoom factor.



HitTest(self, pos)

HitTest method for ZoomBar.

Parameters:

pos – the current mouse position.

Returns:

an index representing the button on which the mouse is hovering, or wx.NOT_FOUND if no button has been hit.



InitialReposition(self)

Sets up the initial buttons and sizes them from the center.



IsButtonEnabled(self, index)

Returns True if the button at position index is enabled, False otherwise.

Parameters:

index – the index of the button to check.



OnEraseBackground(self, event)

Handles the wx.EVT_ERASE_BACKGROUND event for ZoomBar.

Parameters:

event – a EraseEvent event to be processed.

Note

This method is intentionally empty to avoid flicker.



OnLeaveWindow(self, event)

Handles the wx.EVT_LEAVE_WINDOW event for ZoomBar.

Parameters:

event – a MouseEvent event to be processed.



OnLeftDown(self, event)

Handles the wx.EVT_LEFT_DOWN and wx.EVT_LEFT_DCLICK events for ZoomBar.

Parameters:

event – a MouseEvent event to be processed.



OnLeftUp(self, event)

Handles the wx.EVT_LEFT_UP event for ZoomBar.

Parameters:

event – a MouseEvent event to be processed.



OnMotion(self, event)

Handles the wx.EVT_MOTION event for ZoomBar.

Parameters:

event – a MouseEvent event to be processed.



OnPaint(self, event)

Handles the wx.EVT_PAINT event for ZoomBar.

Parameters:

event – a PaintEvent event to be processed.



OnSize(self, event)

Handles the wx.EVT_SIZE event for ZoomBar.

Parameters:

event – a wx.SizeEvent event to be processed.



Reposition(self, toButton)

Repositions all the buttons inside the ZoomBar.

Parameters:

toButton – the button currently hovered by the mouse (and hence zoomed).



ResetSize(self)

Resets all the button sizes and positions, recalculating the optimal ZoomBar size.



SetBarColour(self, colour)

Sets the background button bar colour.

Parameters:

colour – an instance of wx.Colour;



SetButtonSize(self, size)

Sets the original button size.

Parameters:

size – the new (not-zoomed) button size, in pixels.



SetCenterZoom(self, center=True)

Sets to zoom from the center.

Parameters:

center – if True button zooms upwards.



SetShowLabels(self, show)

Sets whether to show button labels or not.

Parameters:

showTrue to show button labels, False otherwise.



SetShowReflections(self, show)

Sets whether to show reflections or not.

Parameters:

showTrue to show reflections, False otherwise.



SetZoomFactor(self, zoom)

Sets the zoom factor for all the buttons. Larger number gives a greater zoom effect.

Parameters:

zoom – a floating point number, greater than or equal to 1.0.



SnapToBottom(self, size)

Snaps the background button bar bitmap and all the buttons to the bottom of ZoomBar.

Parameters:

size – the current ZoomBar size.