Example #1
0
 def gui_run(self, gui_context):
     from camelot.view.workspace import show_top_level
     admin = gui_context.admin
     model = gui_context.item_view.model()
     form = admin.create_new_view(related_collection_proxy=model,
                                  parent=None)
     show_top_level(form, gui_context.item_view)
Example #2
0
 def gui_run( self, gui_context ):
     from camelot.view.workspace import show_top_level
     admin = gui_context.admin
     model = gui_context.item_view.model()
     form = admin.create_new_view( related_collection_proxy=model,
                                   parent = None )
     show_top_level( form, gui_context.item_view )
 def createFormForIndex( self, index ):
     from camelot.view.workspace import show_top_level
     from camelot.view.proxy.collection_proxy import CollectionProxy
     model = CollectionProxy( self.admin,
                              self.model.get_collection,
                              self.admin.get_fields,
                              max_number_of_rows = 1,
                              edits = None )
     form = self.admin.create_form_view( u'', model, self.model.map_to_source(index) )
     show_top_level( form, self )
Example #4
0
 def openForm(index):
     model = QueryTableProxy(
         tableview.admin,
         tableview._table_model.get_query_getter(),
         tableview.admin.get_fields,
         max_number_of_rows=1,
         cache_collection_proxy=tableview._table_model,
     )
     title = ""
     formview = tableview.admin.create_form_view(title, model, index, parent=None)
     show_top_level(formview, tableview)
Example #5
0
 def openForm(index):
     model = QueryTableProxy(
         tableview.admin,
         tableview._table_model.get_query_getter(),
         tableview.admin.get_fields,
         max_number_of_rows=1,
         cache_collection_proxy=tableview._table_model)
     title = ''
     formview = tableview.admin.create_form_view(title,
                                                 model,
                                                 index,
                                                 parent=None)
     show_top_level(formview, tableview)
Example #6
0
    def gui_run(self, gui_context):
        from camelot.view.proxy.collection_proxy import CollectionProxy
        from camelot.view.workspace import show_top_level

        def create_collection_getter(objects):
            return lambda: objects

        model = CollectionProxy(
            self.admin, create_collection_getter(self.objects), self.admin.get_fields, max_number_of_rows=10
        )
        title = ""
        formview = self.admin.create_form_view(title, model, 0)
        show_top_level(formview, gui_context.workspace)
Example #7
0
    def gui_run(self, gui_context):
        from camelot.view.proxy.collection_proxy import CollectionProxy
        from camelot.view.workspace import show_top_level

        def create_collection_getter(objects):
            return lambda: objects

        model = CollectionProxy(self.admin,
                                create_collection_getter(self.objects),
                                self.admin.get_fields,
                                max_number_of_rows=10)
        title = ''
        formview = self.admin.create_form_view(title, model, 0)
        show_top_level(formview, gui_context.workspace)
Example #8
0
 def show_new_view(self, has_subclasses):
     assert object_thread( self )
     from camelot.view.workspace import show_top_level
     selected = QtGui.QDialog.Accepted
     admin = self.admin
     if has_subclasses:
         from camelot.view.controls.inheritance import SubclassDialog
         select_subclass = SubclassDialog(self, self.admin)
         select_subclass.setWindowTitle(_('select'))
         selected = select_subclass.exec_()
         admin = select_subclass.selected_subclass
     if selected:
         form = admin.create_new_view()
         form.entity_created_signal.connect( self.select_object )
         show_top_level( form, self )
Example #9
0
 def show_new_view(self, has_subclasses):
     from camelot.view.workspace import show_top_level
     selected = QtGui.QDialog.Accepted
     admin = self.admin
     if has_subclasses:
         from camelot.view.controls.inheritance import SubclassDialog
         select_subclass = SubclassDialog(self, self.admin)
         select_subclass.setWindowTitle(_('select'))
         selected = select_subclass.exec_()
         admin = select_subclass.selected_subclass
     if selected:
         form = admin.create_new_view()
         form.entity_created_signal.connect(self.selectEntity)
         # @todo: dirty trick to keep reference
         #self.__new_form = form
         show_top_level( form, self )
Example #10
0
 def show_new_view(self, has_subclasses):
     from camelot.view.workspace import show_top_level
     selected = QtGui.QDialog.Accepted
     admin = self.admin
     if has_subclasses:
         from camelot.view.controls.inheritance import SubclassDialog
         select_subclass = SubclassDialog(self, self.admin)
         select_subclass.setWindowTitle(_('select'))
         selected = select_subclass.exec_()
         admin = select_subclass.selected_subclass
     if selected:
         form = admin.create_new_view()
         form.entity_created_signal.connect(self.selectEntity)
         # @todo: dirty trick to keep reference
         #self.__new_form = form
         show_top_level(form, self)
Example #11
0
    def newRow( self ):
        from camelot.view.workspace import show_top_level
        if self._new_message:
            QtGui.QMessageBox.information(self, _('New'), self._new_message)
            return
        
        if self.create_inline:

            @model_function
            def create():
                return self.model.append_object( self.admin.entity() )

            post( create, self.activate_editor )

        else:
            form = self.admin.create_new_view( related_collection_proxy=self.model, parent = None )
            show_top_level( form, self )
Example #12
0
    def show_form_view(self, admin_and_title):
        from camelot.view.workspace import show_top_level
        admin, title = admin_and_title

        def create_collection_getter(instance_getter):
            return lambda: [instance_getter()]

        from camelot.view.proxy.collection_proxy import CollectionProxy

        model = CollectionProxy(
            admin, create_collection_getter(self.entity_instance_getter),
            admin.get_fields)
        model.dataChanged.connect(self.dataChanged)
        form = admin.create_form_view(title, model, 0)
        # @todo : dirty trick to keep reference
        #self.__form = form
        show_top_level(form, self)
Example #13
0
    def show_form_view(self, admin_and_title):
        from camelot.view.workspace import show_top_level
        admin, title = admin_and_title

        def create_collection_getter(instance_getter):
            return lambda:[instance_getter()]

        from camelot.view.proxy.collection_proxy import CollectionProxy

        model = CollectionProxy(
            admin,
            create_collection_getter(self.entity_instance_getter),
            admin.get_fields
        )
        model.dataChanged.connect(self.dataChanged)
        form = admin.create_form_view(title, model, 0)
        # @todo : dirty trick to keep reference
        #self.__form = form
        show_top_level( form, self )
Example #14
0
 def gui_run( self, gui_context ):
     from camelot.view.workspace import show_top_level
     from camelot.view.proxy.queryproxy import QueryTableProxy
     from camelot.view.proxy.collection_proxy import CollectionProxy
     related_model = gui_context.item_view.model()
     #
     # depending on the type of related model, create a new model
     #
     row = gui_context.item_view.currentIndex().row()
     if isinstance( related_model, QueryTableProxy ):
         model = QueryTableProxy(
             gui_context.admin,
             related_model.get_query_getter(),
             gui_context.admin.get_fields,
             max_number_of_rows = 1,
             cache_collection_proxy = related_model,
         ) 
     else:
         # no cache or sorting information is transferred
         model = CollectionProxy( 
             gui_context.admin,
             related_model.get_collection,
             gui_context.admin.get_fields,
             max_number_of_rows = 1,
         )
         # get the unsorted row
         row = related_model.map_to_source( row )
     formview = gui_context.admin.create_form_view(
         u' ', 
         model, 
         row, 
     )
     # make sure there is no 'pythonw' window title in windows for a
     # second
     formview.setWindowTitle( u' ' )
     show_top_level( formview, gui_context.item_view )
Example #15
0
 def gui_run(self, gui_context):
     from camelot.view.workspace import show_top_level
     from camelot.view.proxy.queryproxy import QueryTableProxy
     from camelot.view.proxy.collection_proxy import CollectionProxy
     related_model = gui_context.item_view.model()
     #
     # depending on the type of related model, create a new model
     #
     row = gui_context.item_view.currentIndex().row()
     if isinstance(related_model, QueryTableProxy):
         model = QueryTableProxy(
             gui_context.admin,
             related_model.get_query_getter(),
             gui_context.admin.get_fields,
             max_number_of_rows=1,
             cache_collection_proxy=related_model,
         )
     else:
         # no cache or sorting information is transferred
         model = CollectionProxy(
             gui_context.admin,
             related_model.get_collection,
             gui_context.admin.get_fields,
             max_number_of_rows=1,
         )
         # get the unsorted row
         row = related_model.map_to_source(row)
     formview = gui_context.admin.create_form_view(
         u' ',
         model,
         row,
     )
     # make sure there is no 'pythonw' window title in windows for a
     # second
     formview.setWindowTitle(u' ')
     show_top_level(formview, gui_context.item_view)
Example #16
0
    def newRow(self):
        """Create a new row in the tableview"""
        from camelot.view.workspace import show_top_level

        form = self.admin.create_new_view(related_collection_proxy=self.get_model(), parent=None)
        show_top_level(form, self)
Example #17
0
 def gui_run(self, gui_context):
     """:return: a new view"""
     from camelot.view.workspace import show_top_level
     form = self._entity_admin.create_new_view(parent=None)
     show_top_level(form, gui_context.workspace)
Example #18
0
 def newRow(self):
     """Create a new row in the tableview"""
     from camelot.view.workspace import show_top_level
     form = self.admin.create_new_view(
         related_collection_proxy=self.get_model(), parent=None)
     show_top_level(form, self)
 def gui_run( self, gui_context ):
     """:return: a new view"""
     from camelot.view.workspace import show_top_level
     form = self._entity_admin.create_new_view(parent=None)
     show_top_level( form, gui_context.workspace )