1# (C) Copyright 2005-2020 Enthought, Inc., Austin, TX 2# All rights reserved. 3# 4# This software is provided without warranty under the terms of the BSD 5# license included in LICENSE.txt and may be redistributed only under 6# the conditions described in the aforementioned license. The license 7# is also available online at http://www.enthought.com/licenses/BSD.txt 8# 9# Thanks for using Enthought open source! 10 11""" Abstract base class for all preference pages. """ 12 13 14from traits.api import HasTraits 15 16 17# fixme: in JFace this extends from 'DialogPage' which we don't have yet! 18class PreferencePage(HasTraits): 19 """ Abstract base class for all preference pages. """ 20 21 # ------------------------------------------------------------------------ 22 # 'PreferencePage' interface. 23 # ------------------------------------------------------------------------ 24 25 def create_control(self, parent): 26 """ Creates the toolkit-specific control for the page. """ 27 28 raise NotImplementedError() 29 30 def restore_defaults(self): 31 """ Restore the default preferences. """ 32 33 pass 34 35 def show_help_topic(self): 36 """ Show the help topic for this preference page.""" 37 38 pass 39