#------------------------------------------------------------------------------ # Copyright (c) 2005, Enthought, Inc. # All rights reserved. # # This software is provided without warranty under the terms of the BSD # license included in enthought/LICENSE.txt and may be redistributed only # under the conditions described in the aforementioned license. The license # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! # # Author: Enthought, Inc. # Description: <Enthought pyface package component> #------------------------------------------------------------------------------ """ Application window example. """ # Standard library imports. import os, sys # Put the Enthought library on the Python path. sys.path.append(os.path.abspath(r'..\..\..')) # Enthought library imports. from enthought.pyface.api import MDIApplicationWindow, MDIWindowMenu, GUI from enthought.pyface.action.api import Action, MenuManager, MenuBarManager class MainWindow(MDIApplicationWindow): """ The main application window. """ ########################################################################### # 'object' interface. ########################################################################### def __init__(self, **traits): """ Creates a new application window. """ # Base class constructor. super(MainWindow, self).__init__(**traits) # Add a menu bar. self.menu_bar_manager = MenuBarManager( MenuManager( Action(name='E&xit', on_perform=self.close), name = '&File', ), MDIWindowMenu(self) ) # Set the size of the window self.size = (640, 480) return # Application entry point. if __name__ == '__main__': # Create the GUI (this does NOT start the GUI event loop). gui = GUI() # Create and open the main window. window = MainWindow() window.open() # Add some child windows for i in range(2): child = window.create_child_window() child.Show() # Start the GUI event loop! gui.start_event_loop() ##### EOF #####################################################################