Example #1
0
def get_dragdestdata(treeview, context, x, y, selection, info, etime):
    iter, value = cselected(treeview,x,y)
    model = treeview.get_model()
    if value == True:
        ldata = data
        print"global data=", data
        drop_info = treeview.get_dest_row_at_pos(x,y)
        print "DROP INFO IS:"; print drop_info
        if drop_info:
            path, position = drop_info
            iteri = model.get_iter(path)
            if model.get_value(iteri, E_PARENT):
                if (position == gtk.TREE_VIEW_DROP_BEFORE or position == gtk.TREE_VIEW_DROP_INTO_OR_BEFORE):
                    for row in ldata:
                        model.insert_before(iteri, row[:-1]) #0:4])
                else:
                    for row in reversed(ldata):
                        model.insert_after(iteri, row[:-1]) #0:4])
            else:
                return
            
        else:
            for row in ldata:
                model.append(row[:-1]) # 0:4])
            print 'end of treeview'
        #delete dragged rows
        for row in ldata:
            print row[-1]
            model.remove(model.get_iter(row[-1].get_path()))
        from window import title
        title("* GPytage")
        fileEdited()
        return
    else: # File to File dragging
        # rightpanel -> leftpanel logic goes here.
        ldata = data
        parent = model.get_value(iter,E_PARENT).strip('*')
        oldName = model.get_value(iter, E_NAME).strip('*')
        print "parent = ", parent
        if model.iter_children(iter):#has children [subfiles]
            print "has children"
        else: #doesn't have children
            newName = "*%s" % oldName
            model.set_value(iter, E_NAME, newName)
            model.set_value(iter, E_MODIFIED, True)
            # append the data
            print ldata,"DATA TO APPEND"
            for row in ldata:
                print "row=", row
                datastore.lists[oldName].append(row[:-1]) #0:4])
            #nuke what we moved
            for row in ldata:
                from rightpanel import rightview
                rmodel = rightview.get_model()
                rmodel.remove(rmodel.get_iter(row[-1].get_path()))
            from leftpanel import leftview
            lmodel = leftview.get_model()
            lselection.select_path(lmodel.get_path(lselected[1]))
            fileEdited()
Example #2
0
def switchListView(widget, drag_context, x, y, timestamp, *args):
    """ Hilights leftview drop target during drag operation """
    from leftpanel import leftview
    import rightpanel
    model = leftview.get_model()
    path = leftview.get_dest_row_at_pos(x, y)
    leftview.expand_row(path[0], True)
    #iter = model.get_iter(path[0])
    treeselection = leftview.get_selection()
    treeselection.select_path(path[0])
Example #3
0
def __reselectAfterRename(filePath, type):
    """ Reselects the parent folder of the deleted object """
    from leftpanel import leftview
    model = leftview.get_model()
    model.foreach(getMatch, [filePath, leftview, type])
Example #4
0
def __reselectAfterDelete(folderPath):
    """ Reselects the parent folder of the deleted object """
    from leftpanel import leftview
    model = leftview.get_model()
    model.foreach(getMatch, [folderPath, leftview])
Example #5
0
def __reselectAfterNew(filePath):
    """ Reselects the parent folder of the deleted object """
    from leftpanel import leftview
    model = leftview.get_model()
    model.foreach(getMatch, [filePath, leftview])