git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			520 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			520 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
"""Decorator classes for documentation and shell scripting.
 | 
						|
"""
 | 
						|
 | 
						|
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
 | 
						|
__cvsid__ = "$Id$"
 | 
						|
__revision__ = "$Revision$"[11:-2]
 | 
						|
 | 
						|
 | 
						|
# These are not the real wxPython classes. These are Python versions
 | 
						|
# for documentation purposes. They are also used to apply docstrings
 | 
						|
# to the real wxPython classes, which are SWIG-generated wrappers for
 | 
						|
# C-language classes.
 | 
						|
 | 
						|
 | 
						|
from Base import Object
 | 
						|
import Parameters as wx
 | 
						|
from Window import TopLevelWindow, Window
 | 
						|
 | 
						|
 | 
						|
class Frame(TopLevelWindow):
 | 
						|
    """A frame is a window whose size and position can (usually) be
 | 
						|
    changed by the user. It usually has thick borders and a title bar,
 | 
						|
    and can optionally contain a menu bar, toolbar and status bar. A
 | 
						|
    frame can contain any window that is not a frame or dialog.
 | 
						|
 | 
						|
    A frame that has a status bar and toolbar created via the
 | 
						|
    CreateStatusBar/CreateToolBar functions manages these windows, and
 | 
						|
    adjusts the value returned by GetClientSize to reflect the
 | 
						|
    remaining size available to application windows.
 | 
						|
 | 
						|
    An application should normally define a CloseEvent handler for the
 | 
						|
    frame to respond to system close events, for example so that
 | 
						|
    related data and subwindows can be cleaned up."""
 | 
						|
 | 
						|
    def __init__(self, parent, id, title, pos=wx.DefaultPosition,
 | 
						|
                 size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE,
 | 
						|
                 name=wx.PyFrameNameStr):
 | 
						|
        """Create a Frame instance.
 | 
						|
 | 
						|
        parent - The window parent.  This may be None.  If it is not
 | 
						|
        None, the frame will always be displayed on top of the parent
 | 
						|
        window on Windows.
 | 
						|
 | 
						|
        id - The window identifier. It may take a value of -1 to
 | 
						|
        indicate a default value.
 | 
						|
 | 
						|
        title - The caption to be displayed on the frame's title bar.
 | 
						|
 | 
						|
        pos - The window position. A value of (-1, -1) indicates a
 | 
						|
        default position, chosen by either the windowing system or
 | 
						|
        wxWindows, depending on platform.
 | 
						|
 | 
						|
        size - The window size. A value of (-1, -1) indicates a
 | 
						|
        default size, chosen by either the windowing system or
 | 
						|
        wxWindows, depending on platform.
 | 
						|
 | 
						|
        style - The window style.
 | 
						|
 | 
						|
        name - The name of the window. This parameter is used to
 | 
						|
        associate a name with the item, allowing the application user
 | 
						|
        to set Motif resource values for individual windows."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Create(self, parent, id, title, pos=wx.DefaultPosition,
 | 
						|
               size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE,
 | 
						|
               name=wx.PyFrameNameStr):
 | 
						|
        """Create a Frame instance."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Command(self, id):
 | 
						|
        """Simulate a menu command; id is a menu item identifier."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def CreateStatusBar(self, number=1, style=wx.ST_SIZEGRIP, id=-1,
 | 
						|
                        name=wx.PyStatusLineNameStr):
 | 
						|
        """Create a status bar at the bottom of frame.
 | 
						|
 | 
						|
        number - The number of fields to create. Specify a value
 | 
						|
        greater than 1 to create a multi-field status bar.
 | 
						|
 | 
						|
        style - The status bar style. See wx.StatusBar for a list of
 | 
						|
        valid styles.
 | 
						|
 | 
						|
        id - The status bar window identifier. If -1, an identifier
 | 
						|
        will be chosen by wxWindows.
 | 
						|
 | 
						|
        name - The status bar window name.
 | 
						|
 | 
						|
        The width of the status bar is the whole width of the frame
 | 
						|
        (adjusted automatically when resizing), and the height and
 | 
						|
        text size are chosen by the host windowing system.
 | 
						|
 | 
						|
        By default, the status bar is an instance of wx.StatusBar."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def CreateToolBar(self, style=wx.NO_BORDER | wx.TB_HORIZONTAL,
 | 
						|
                      id=-1, name=wx.PyToolBarNameStr):
 | 
						|
        """Create a toolbar at the top or left of frame.
 | 
						|
 | 
						|
        style - The toolbar style. See wxToolBar for a list of valid
 | 
						|
        styles.
 | 
						|
 | 
						|
        id - The toolbar window identifier. If -1, an identifier will
 | 
						|
        be chosen by wxWindows.
 | 
						|
 | 
						|
        name - The toolbar window name.
 | 
						|
 | 
						|
        By default, the toolbar is an instance of wx.ToolBar (which is
 | 
						|
        defined to be a suitable toolbar class on each platform, such
 | 
						|
        as wx.ToolBar95).
 | 
						|
 | 
						|
        When a toolbar has been created with this function, or made
 | 
						|
        known to the frame with wx.Frame.SetToolBar, the frame will
 | 
						|
        manage the toolbar position and adjust the return value from
 | 
						|
        wx.Window.GetClientSize to reflect the available space for
 | 
						|
        application windows."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def DoGiveHelp(self, text, show):
 | 
						|
        """Show help text (typically in the statusbar).
 | 
						|
 | 
						|
        show is False if you are hiding the help, True otherwise.
 | 
						|
 | 
						|
        Meant to be overridden if a derived frame wants to do
 | 
						|
        something else with help text from menus and etc.  The default
 | 
						|
        implementation simply calls Frame.SetStatusText."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetClientAreaOrigin(self):
 | 
						|
        """Return origin of frame client area (in client coordinates).
 | 
						|
 | 
						|
        It may be different from (0, 0) if the frame has a toolbar."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetMenuBar(self):
 | 
						|
        """Return menubar currently associated with frame (if any)."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetStatusBar(self):
 | 
						|
        """Return status bar currently associated with frame (if any)."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetStatusBarPane(self):
 | 
						|
        """Return status bar pane used to display menu/toolbar help."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetToolBar(self):
 | 
						|
        """Return toolbar currently associated with frame (if any)."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def PopStatusText(self, number=0):
 | 
						|
        """Redraw status bar with previous status text.
 | 
						|
 | 
						|
        number - The status field (starting from zero)."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def ProcessCommand(self, id):
 | 
						|
        """Process menu command; return True if processed.
 | 
						|
 | 
						|
        id is the menu command identifier."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def PushStatusText(self, text, number=0):
 | 
						|
        """Set status bar text and redraw status bar, remembering
 | 
						|
        previous text.
 | 
						|
 | 
						|
        text - The text for the status field.
 | 
						|
 | 
						|
        number - The status field (starting from zero).
 | 
						|
 | 
						|
        Use an empty string to clear the status bar."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SendSizeEvent(self):
 | 
						|
        """Send a dummy size event to the frame forcing it to
 | 
						|
        reevaluate its children positions. It is sometimes useful to
 | 
						|
        call this function after adding or deleting a children after
 | 
						|
        the frame creation or if a child size changes.
 | 
						|
 | 
						|
        Note that if the frame is using either sizers or constraints
 | 
						|
        for the children layout, it is enough to call Frame.Layout()
 | 
						|
        directly and this function should not be used in this case."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetMenuBar(self, menubar):
 | 
						|
        """Show the menu bar in the frame.
 | 
						|
 | 
						|
        menuBar - The menu bar to associate with the frame.
 | 
						|
 | 
						|
        If the frame is destroyed, the menu bar and its menus will be
 | 
						|
        destroyed also, so do not delete the menu bar explicitly
 | 
						|
        (except by resetting the frame's menu bar to another frame or
 | 
						|
        NULL).
 | 
						|
 | 
						|
        Under Windows, a call to Frame.OnSize is generated, so be sure
 | 
						|
        to initialize data members properly before calling SetMenuBar.
 | 
						|
 | 
						|
        Note that it is not possible to call this function twice for
 | 
						|
        the same frame object."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetStatusBar(self, statBar):
 | 
						|
        """Associate a status bar with the frame."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetStatusBarPane(self, n):
 | 
						|
        """Set the status bar pane used to display menu and toolbar
 | 
						|
        help.  Using -1 disables help display."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetStatusText(self, text, number=0):
 | 
						|
        """Set status bar text and redraw status bar.
 | 
						|
 | 
						|
        text - The text for the status field.
 | 
						|
 | 
						|
        number - The status field (starting from zero).
 | 
						|
 | 
						|
        Use an empty string to clear the status bar."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetStatusWidths(self, choices):
 | 
						|
        """Sets the widths of the fields in the status bar.
 | 
						|
 | 
						|
        choices - a Python list of integers, each of which is a status
 | 
						|
        field width in pixels. A value of -1 indicates that the field
 | 
						|
        is variable width; at least one field must be -1.
 | 
						|
 | 
						|
        The widths of the variable fields are calculated from the
 | 
						|
        total width of all fields, minus the sum of widths of the
 | 
						|
        non-variable fields, divided by the number of variable fields."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetToolBar(self, toolbar):
 | 
						|
        """Associate a toolbar with the frame."""
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class LayoutAlgorithm(Object):
 | 
						|
    """LayoutAlgorithm implements layout of subwindows in MDI or SDI
 | 
						|
    frames.  It sends a wx.CalculateLayoutEvent event to children of
 | 
						|
    the frame, asking them for information about their size.  For MDI
 | 
						|
    parent frames, the algorithm allocates the remaining space to the
 | 
						|
    MDI client window (which contains the MDI child frames).  For SDI
 | 
						|
    (normal) frames, a 'main' window is specified as taking up the
 | 
						|
    remaining space.
 | 
						|
 | 
						|
    Because the event system is used, this technique can be applied to
 | 
						|
    any windows, which are not necessarily 'aware' of the layout
 | 
						|
    classes.  However, you may wish to use wx.SashLayoutWindow for
 | 
						|
    your subwindows since this class provides handlers for the
 | 
						|
    required events, and accessors to specify the desired size of the
 | 
						|
    window.  The sash behaviour in the base class can be used,
 | 
						|
    optionally, to make the windows user-resizable.
 | 
						|
 | 
						|
    LayoutAlgorithm is typically used in IDE (integrated development
 | 
						|
    environment) applications, where there are several resizable
 | 
						|
    windows in addition to the MDI client window, or other primary
 | 
						|
    editing window.  Resizable windows might include toolbars, a
 | 
						|
    project window, and a window for displaying error and warning
 | 
						|
    messages.
 | 
						|
 | 
						|
    When a window receives an OnCalculateLayout event, it should call
 | 
						|
    SetRect in the given event object, to be the old supplied
 | 
						|
    rectangle minus whatever space the window takes up.  It should
 | 
						|
    also set its own size accordingly.
 | 
						|
    SashLayoutWindow.OnCalculateLayout generates an OnQueryLayoutInfo
 | 
						|
    event which it sends to itself to determine the orientation,
 | 
						|
    alignment and size of the window, which it gets from internal
 | 
						|
    member variables set by the application.
 | 
						|
 | 
						|
    The algorithm works by starting off with a rectangle equal to the
 | 
						|
    whole frame client area.  It iterates through the frame children,
 | 
						|
    generating OnCalculateLayout events which subtract the window size
 | 
						|
    and return the remaining rectangle for the next window to process.
 | 
						|
    It is assumed (by SashLayoutWindow.OnCalculateLayout) that a
 | 
						|
    window stretches the full dimension of the frame client, according
 | 
						|
    to the orientation it specifies.  For example, a horizontal window
 | 
						|
    will stretch the full width of the remaining portion of the frame
 | 
						|
    client area.  In the other orientation, the window will be fixed
 | 
						|
    to whatever size was specified by OnQueryLayoutInfo.  An alignment
 | 
						|
    setting will make the window 'stick' to the left, top, right or
 | 
						|
    bottom of the remaining client area.  This scheme implies that
 | 
						|
    order of window creation is important.  Say you wish to have an
 | 
						|
    extra toolbar at the top of the frame, a project window to the
 | 
						|
    left of the MDI client window, and an output window above the
 | 
						|
    status bar.  You should therefore create the windows in this
 | 
						|
    order: toolbar, output window, project window.  This ensures that
 | 
						|
    the toolbar and output window take up space at the top and bottom,
 | 
						|
    and then the remaining height in-between is used for the project
 | 
						|
    window.
 | 
						|
 | 
						|
    LayoutAlgorithm is quite independent of the way in which
 | 
						|
    OnCalculateLayout chooses to interpret a window's size and
 | 
						|
    alignment.  Therefore you could implement a different window class
 | 
						|
    with a new OnCalculateLayout event handler, that has a more
 | 
						|
    sophisticated way of laying out the windows.  It might allow
 | 
						|
    specification of whether stretching occurs in the specified
 | 
						|
    orientation, for example, rather than always assuming
 | 
						|
    stretching. (This could, and probably should, be added to the
 | 
						|
    existing implementation).
 | 
						|
 | 
						|
    The algorithm object does not respond to events, but itself
 | 
						|
    generates the following events in order to calculate window sizes:
 | 
						|
    EVT_QUERY_LAYOUT_INFO(func), EVT_CALCULATE_LAYOUT(func)."""
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        """Create a LayoutAlgorithm instance."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def LayoutFrame(self, frame, mainWindow=wx.NULL):
 | 
						|
        """Lay out the children of a normal frame.
 | 
						|
 | 
						|
        mainWindow is set to occupy the remaining space.  This
 | 
						|
        function simply calls LayoutWindow()."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def LayoutMDIFrame(self, frame, rect=wx.NULL):
 | 
						|
        """Lay out the children of an MDI parent frame.
 | 
						|
 | 
						|
        If rect is non-NULL, the given rectangle will be used as a
 | 
						|
        starting point instead of the frame's client area.
 | 
						|
 | 
						|
        The MDI client window is set to occupy the remaining space."""
 | 
						|
        pass
 | 
						|
 | 
						|
    def LayoutWindow(self, parent, mainWindow=wx.NULL):
 | 
						|
        """Lay out the children of a normal frame or other window.
 | 
						|
 | 
						|
        mainWindow is set to occupy the remaining space.  If this is
 | 
						|
        not specified, then the last window that responds to a
 | 
						|
        calculate layout event in query mode will get the remaining
 | 
						|
        space (that is, a non-query OnCalculateLayout event will not
 | 
						|
        be sent to this window and the window will be set to the
 | 
						|
        remaining size)."""
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class MDIChildFrame(Frame):
 | 
						|
    """"""
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Create(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Activate(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Maximize(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Restore(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class MDIClientWindow(Window):
 | 
						|
    """"""
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Create(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class MDIParentFrame(Frame):
 | 
						|
    """"""
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Create(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def ActivateNext(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def ActivatePrevious(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def ArrangeIcons(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Cascade(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetActiveChild(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetClientWindow(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetToolBar(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Tile(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class MiniFrame(Frame):
 | 
						|
    """"""
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Create(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class SplashScreen(Frame):
 | 
						|
    """"""
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetSplashStyle(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetSplashWindow(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetTimeout(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class SplashScreenWindow(Window):
 | 
						|
    """"""
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetBitmap(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetBitmap(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class StatusBar(Window):
 | 
						|
    """"""
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def Create(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetBorderX(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetBorderY(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetFieldRect(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetFieldsCount(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def GetStatusText(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def PopStatusText(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def PushStatusText(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetFieldsCount(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetMinHeight(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetStatusText(self):
 | 
						|
        """"""
 | 
						|
        pass
 | 
						|
 | 
						|
    def SetStatusWidths(self):
 | 
						|
        """"""
 | 
						|
        pass
 |