def dock_control_for ( self, info, parent, object ): """ Returns the DockControl object for a specified object. """ from facets.ui.dock.api import IDockable, DockControl from facets.ui.dock.dockable_view_element import DockableViewElement try: name = object.name except: try: name = object.label except: name = '' if len( name ) == 0: name = user_name_for( object.__class__.__name__ ) image = None export = '' if isinstance( object, DockControl ): dock_control = object image = dock_control.image export = dock_control.export dockable = dock_control.dockable close = dockable.dockable_should_close() if close: dock_control.close( force = True ) control = dockable.dockable_get_control( parent ) # If DockControl was closed, then reset it to point to the new # control: if close: dock_control.set( control = control, style = parent.owner.style ) dockable.dockable_init_dockcontrol( dock_control ) return dock_control elif isinstance( object, IDockable ): dockable = object control = dockable.dockable_get_control( parent ) else: ui = object.get_dockable_ui( parent ) dockable = DockableViewElement( ui = ui ) export = ui.view.export control = ui.control dc = DockControl( control = control, name = name, export = export, style = parent.owner.style, image = image, closeable = True ) dockable.dockable_init_dockcontrol( dc ) return dc
def get_name ( self, object = None ): """ Returns the name of the item. """ if self.name != '': return self.name name = getattr( self.object, 'name', None ) if isinstance(name, basestring): return name return user_name_for( self.object.__class__.__name__ )
def get_name ( self, object = None ): """ Returns the name of the item. """ if self.name != '': return self.name name = getattr( object, 'name', None ) if isinstance(name, basestring): return name if issubclass( type( self.klass ), type ): klass = self.klass else: klass = self.get_object().__class__ return user_name_for( klass.__name__ )