Exemple #1
0
    def on_find(self, event_):  # wxGlade: Finder.<event_handler>
        self.predicate = CompoundPredicate()

        if self.notebook.GetCurrentPage() == self.find_by_text_panel:
            if self.text_object_type_choice.GetCurrentSelection() == 1:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.region.Region)
            elif self.text_object_type_choice.GetCurrentSelection() == 2:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.pathway.Pathway)
            elif self.text_object_type_choice.GetCurrentSelection() == 3:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.neuron.Neuron)
            elif self.text_object_type_choice.GetCurrentSelection() == 4:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.neurite.Neurite)
            elif self.text_object_type_choice.GetCurrentSelection() == 5:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.synapse.Synapse)
            elif self.text_object_type_choice.GetCurrentSelection() == 6:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.gap_junction.GapJunction)
            elif self.text_object_type_choice.GetCurrentSelection() == 7:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.muscle.Muscle)
            elif self.text_object_type_choice.GetCurrentSelection() == 8:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.arborization.Arborization)
            elif self.text_object_type_choice.GetCurrentSelection() == 9:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.innervation.Innervation)
            elif self.text_object_type_choice.GetCurrentSelection() == 10:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.stimulus.Stimulus)

            findText = self.find_text.GetValue().upper()
            if self.text_operator_choice.GetCurrentSelection() == 0:
                namePredicate = Predicate(
                    lambda x: (x.name is None and findText == '') or
                    (x.name != None and x.name.upper().find(findText) != -1))
                abbreviationPredicate = Predicate(
                    lambda x: (x.abbreviation is None and findText == '') or
                    (x.abbreviation != None and x.abbreviation.upper().find(
                        self.find_text.GetValue().upper()) != -1))
            elif self.text_operator_choice.GetCurrentSelection() == 1:
                namePredicate = Predicate(lambda x: x.name != None and x.name.
                                          upper().startswith(findText))
                abbreviationPredicate = Predicate(
                    lambda x: x.abbreviation != None and x.abbreviation.upper(
                    ).startswith(self.find_text.GetValue().upper()))
            elif self.text_operator_choice.GetCurrentSelection() == 2:
                namePredicate = Predicate(lambda x: x.name != None and x.name.
                                          upper().endswith(findText))
                abbreviationPredicate = Predicate(
                    lambda x: x.abbreviation != None and x.abbreviation.upper(
                    ).endswith(findText))
            if self.text_field_choice.GetCurrentSelection(
            ) == 0:  # name or abbreviation
                fieldPredicate = CompoundPredicate()
                fieldPredicate.matchAll = False
                fieldPredicate.predicates.append(namePredicate)
                fieldPredicate.predicates.append(abbreviationPredicate)
                self.predicate.predicates.append(fieldPredicate)
            elif self.text_field_choice.GetCurrentSelection(
            ) == 1:  # just name
                self.predicate.predicates.append(namePredicate)
            elif self.text_field_choice.GetCurrentSelection(
            ) == 2:  # just abbreviation
                self.predicate.predicates.append(abbreviationPredicate)
        elif self.notebook.GetCurrentPage() == self.find_by_io_panel:
            if self.io_connection_type_choice.GetCurrentSelection() == 1:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.pathway.Pathway)
            elif self.text_object_type_choice.GetCurrentSelection() == 2:
                self.predicate.addStatement(
                    lambda x: x.__class__ == network.neuron.Neuron)

            sourceObject = self.io_object_choice.GetClientData(
                self.io_object_choice.GetCurrentSelection())
            inputs = sourceObject.inputs()
            outputs = sourceObject.outputs()
            if self.input_output_choice.GetCurrentSelection(
            ) == 0:  # just send
                self.predicate.addStatement(lambda x: x in inputs)
            elif self.input_output_choice.GetCurrentSelection(
            ) == 1:  # just receive
                self.predicate.addStatement(lambda x: x in outputs)
            elif self.input_output_choice.GetCurrentSelection(
            ) == 2:  # send or receive
                self.predicate.addStatement(
                    lambda x: x in inputs or x in outputs)

        self.EndModal(wx.ID_OK)
Exemple #2
0
 def on_find(self, event_): # wxGlade: Finder.<event_handler>
     self.predicate = CompoundPredicate()
     
     if self.notebook.GetCurrentPage() == self.find_by_text_panel:
         if self.text_object_type_choice.GetCurrentSelection() == 1:
             self.predicate.addStatement(lambda x: x.__class__ == network.region.Region)
         elif self.text_object_type_choice.GetCurrentSelection() == 2:
             self.predicate.addStatement(lambda x: x.__class__ == network.pathway.Pathway)
         elif self.text_object_type_choice.GetCurrentSelection() == 3:
             self.predicate.addStatement(lambda x: x.__class__ == network.neuron.Neuron)
         elif self.text_object_type_choice.GetCurrentSelection() == 4:
             self.predicate.addStatement(lambda x: x.__class__ == network.neurite.Neurite)
         elif self.text_object_type_choice.GetCurrentSelection() == 5:
             self.predicate.addStatement(lambda x: x.__class__ == network.synapse.Synapse)
         elif self.text_object_type_choice.GetCurrentSelection() == 6:
             self.predicate.addStatement(lambda x: x.__class__ == network.gap_junction.GapJunction)
         elif self.text_object_type_choice.GetCurrentSelection() == 7:
             self.predicate.addStatement(lambda x: x.__class__ == network.muscle.Muscle)
         elif self.text_object_type_choice.GetCurrentSelection() == 8:
             self.predicate.addStatement(lambda x: x.__class__ == network.arborization.Arborization)
         elif self.text_object_type_choice.GetCurrentSelection() == 9:
             self.predicate.addStatement(lambda x: x.__class__ == network.innervation.Innervation)
         elif self.text_object_type_choice.GetCurrentSelection() == 10:
             self.predicate.addStatement(lambda x: x.__class__ == network.stimulus.Stimulus)
         
         findText = self.find_text.GetValue().upper()
         if self.text_operator_choice.GetCurrentSelection() == 0:
             namePredicate = Predicate(lambda x: (x.name is None and findText == '') or (x.name != None and x.name.upper().find(findText) != -1))
             abbreviationPredicate = Predicate(lambda x: (x.abbreviation is None and findText == '') or (x.abbreviation != None and x.abbreviation.upper().find(self.find_text.GetValue().upper()) != -1))
         elif self.text_operator_choice.GetCurrentSelection() == 1:
             namePredicate = Predicate(lambda x: x.name != None and x.name.upper().startswith(findText))
             abbreviationPredicate = Predicate(lambda x: x.abbreviation != None and x.abbreviation.upper().startswith(self.find_text.GetValue().upper()))
         elif self.text_operator_choice.GetCurrentSelection() == 2:
             namePredicate = Predicate(lambda x: x.name != None and x.name.upper().endswith(findText))
             abbreviationPredicate = Predicate(lambda x: x.abbreviation != None and x.abbreviation.upper().endswith(findText))
         if self.text_field_choice.GetCurrentSelection() == 0:   # name or abbreviation
             fieldPredicate = CompoundPredicate()
             fieldPredicate.matchAll = False
             fieldPredicate.predicates.append(namePredicate)
             fieldPredicate.predicates.append(abbreviationPredicate)
             self.predicate.predicates.append(fieldPredicate)
         elif self.text_field_choice.GetCurrentSelection() == 1: # just name
             self.predicate.predicates.append(namePredicate)
         elif self.text_field_choice.GetCurrentSelection() == 2: # just abbreviation
             self.predicate.predicates.append(abbreviationPredicate)
     elif self.notebook.GetCurrentPage() == self.find_by_io_panel:
         if self.io_connection_type_choice.GetCurrentSelection() == 1:
             self.predicate.addStatement(lambda x: x.__class__ == network.pathway.Pathway)
         elif self.text_object_type_choice.GetCurrentSelection() == 2:
             self.predicate.addStatement(lambda x: x.__class__ == network.neuron.Neuron)
         
         sourceObject = self.io_object_choice.GetClientData(self.io_object_choice.GetCurrentSelection())
         inputs = sourceObject.inputs()
         outputs = sourceObject.outputs()
         if self.input_output_choice.GetCurrentSelection() == 0:   # just send
             self.predicate.addStatement(lambda x: x in inputs)
         elif self.input_output_choice.GetCurrentSelection() == 1:   # just receive
             self.predicate.addStatement(lambda x: x in outputs)
         elif self.input_output_choice.GetCurrentSelection() == 2:   # send or receive
             self.predicate.addStatement(lambda x: x in inputs or x in outputs)
         
     self.EndModal(wx.ID_OK)