code: def OnActivateReader(self, event):
          
          item = event.GetItem()
          if item:
              itemdata = self.readertreepanel.readertreectrl.GetItemPyData(item)
              if isinstance(itemdata, smartcard.Card.Card):
                  self.ActivateCard(itemdata)
              elif isinstance(itemdata, smartcard.reader.Reader.Reader):
                  self.dialogpanel.OnActivateReader(itemdata)
          event.Skip()
docs: Called when the user activates a reader in the tree.