Ejemplo n.º 1
0
static GType
nautilus_list_model_get_column_type (GtkTreeModel *tree_model, int index)
{
	switch (index) {
	case NAUTILUS_LIST_MODEL_FILE_COLUMN:
		return NAUTILUS_TYPE_FILE;
	case NAUTILUS_LIST_MODEL_SUBDIRECTORY_COLUMN:
		return NAUTILUS_TYPE_DIRECTORY;
	case NAUTILUS_LIST_MODEL_SMALLEST_ICON_COLUMN:
	case NAUTILUS_LIST_MODEL_SMALLER_ICON_COLUMN:
	case NAUTILUS_LIST_MODEL_SMALL_ICON_COLUMN:
	case NAUTILUS_LIST_MODEL_STANDARD_ICON_COLUMN:
	case NAUTILUS_LIST_MODEL_LARGE_ICON_COLUMN:
	case NAUTILUS_LIST_MODEL_LARGER_ICON_COLUMN:
	case NAUTILUS_LIST_MODEL_LARGEST_ICON_COLUMN:
		return CAIRO_GOBJECT_TYPE_SURFACE;
	case NAUTILUS_LIST_MODEL_FILE_NAME_IS_EDITABLE_COLUMN:
		return G_TYPE_BOOLEAN;
	default:
		if (index < NAUTILUS_LIST_MODEL_NUM_COLUMNS + NAUTILUS_LIST_MODEL (tree_model)->details->columns->len) {
			return G_TYPE_STRING;
		} else {
			return G_TYPE_INVALID;
		}
	}
}
Ejemplo n.º 2
0
static gboolean
nautilus_list_model_multi_drag_data_get (EggTreeMultiDragSource *drag_source, 
					 GList *path_list, 
					 GtkSelectionData *selection_data)
{
	NautilusListModel *model;
	DragDataGetInfo context;
	guint target_info;
	
	model = NAUTILUS_LIST_MODEL (drag_source);

	context.model = model;
	context.path_list = path_list;

	if (!drag_target_list) {
		drag_target_list = nautilus_list_model_get_drag_target_list ();
	}

	if (gtk_target_list_find (drag_target_list,
				  gtk_selection_data_get_target (selection_data),
				  &target_info)) {
		nautilus_drag_drag_data_get (NULL,
					     NULL,
					     selection_data,
					     target_info,
					     GDK_CURRENT_TIME,
					     &context,
					     each_path_get_data_binder);
		return TRUE;
	} else {
		return FALSE;
	}
}
Ejemplo n.º 3
0
static gboolean
nautilus_list_model_iter_has_child (GtkTreeModel *tree_model, GtkTreeIter *iter)
{
	FileEntry *file_entry;

	if (iter == NULL) {
		return !nautilus_list_model_is_empty (NAUTILUS_LIST_MODEL (tree_model));
	}

	file_entry = g_sequence_get (iter->user_data);

	return (file_entry->files != NULL && g_sequence_get_length (file_entry->files) > 0);
}
Ejemplo n.º 4
0
static int
nautilus_list_model_get_n_columns (GtkTreeModel *tree_model)
{
	return NAUTILUS_LIST_MODEL_NUM_COLUMNS + NAUTILUS_LIST_MODEL (tree_model)->details->columns->len;
}