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()
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])
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])
def __reselectAfterDelete(folderPath): """ Reselects the parent folder of the deleted object """ from leftpanel import leftview model = leftview.get_model() model.foreach(getMatch, [folderPath, leftview])
def __reselectAfterNew(filePath): """ Reselects the parent folder of the deleted object """ from leftpanel import leftview model = leftview.get_model() model.foreach(getMatch, [filePath, leftview])