def update ( self, dic ):
        trait = getattr( self, 'trait', None )
        if trait is None:
            dict.update( self, dic )
            return

        if len( dic ) == 0:
            new_dic = self._validate_dic( dic )

            if self.name_items is not None:
                added   = {}
                changed = {}
                for key, value in new_dic.iteritems():
                    if key in self:
                        changed[ key ] = self[ key ]
                    else:
                        added[ key ] = value

                dict.update( self, new_dic )

                self._send_trait_items_event( self.name_items,
                    TraitDictEvent( added = added, changed = changed ) )
            else:
                dict.update( self, new_dic )
dataset/ETHPy150Open enthought/traits/traits/trait_handlers.py/TraitDictObject.update/operator `>` -> `==`