Example #1
0
static void
move_down_clicked_callback (GtkWidget *button, gpointer user_data)
{
    CajaColumnChooser *chooser;
    GtkTreeIter iter;
    GtkTreeSelection *selection;

    chooser = CAJA_COLUMN_CHOOSER (user_data);

    selection = gtk_tree_view_get_selection (chooser->details->view);

    if (gtk_tree_selection_get_selected (selection, NULL, &iter))
    {
        GtkTreeIter next;

        next = iter;

        if (gtk_tree_model_iter_next (GTK_TREE_MODEL (chooser->details->store), &next))
        {
            gtk_list_store_move_after (chooser->details->store,
                                       &iter,
                                       &next);
        }
    }

    list_changed (chooser);
}
Example #2
0
static void
row_deleted_callback (GtkTreeModel *model,
                      GtkTreePath *path,
                      gpointer user_data)
{
    list_changed (CAJA_COLUMN_CHOOSER (user_data));
}
Example #3
0
static void
move_up_clicked_callback (GtkWidget *button, gpointer user_data)
{
    CajaColumnChooser *chooser;
    GtkTreeIter iter;
    GtkTreeSelection *selection;

    chooser = CAJA_COLUMN_CHOOSER (user_data);

    selection = gtk_tree_view_get_selection (chooser->details->view);

    if (gtk_tree_selection_get_selected (selection, NULL, &iter))
    {
        GtkTreePath *path;
        GtkTreeIter prev;

        path = gtk_tree_model_get_path (GTK_TREE_MODEL (chooser->details->store), &iter);
        gtk_tree_path_prev (path);
        if (gtk_tree_model_get_iter (GTK_TREE_MODEL (chooser->details->store), &prev, path))
        {
            gtk_list_store_move_before (chooser->details->store,
                                        &iter,
                                        &prev);
        }
        gtk_tree_path_free (path);
    }

    list_changed (chooser);
}
Example #4
0
static void
caja_column_chooser_constructed (GObject *object)
{
    CajaColumnChooser *chooser;

    chooser = CAJA_COLUMN_CHOOSER (object);

    populate_tree (chooser);

    g_signal_connect (chooser->details->store, "row_deleted",
                      G_CALLBACK (row_deleted_callback), chooser);
}
static void
set_columns_from_settings (CajaColumnChooser *chooser)
{
    char **visible_columns;
    char **column_order;

    visible_columns = g_settings_get_strv (caja_list_view_preferences,
                                           CAJA_PREFERENCES_LIST_VIEW_DEFAULT_VISIBLE_COLUMNS);
    column_order = g_settings_get_strv (caja_list_view_preferences,
                                        CAJA_PREFERENCES_LIST_VIEW_DEFAULT_COLUMN_ORDER);

    caja_column_chooser_set_settings (CAJA_COLUMN_CHOOSER (chooser),
                                      visible_columns,
                                      column_order);

    g_strfreev (visible_columns);
    g_strfreev (column_order);
}
static void
caja_file_management_properties_dialog_setup_list_column_page (GtkBuilder *builder)
{
    GtkWidget *chooser;
    GtkWidget *box;

    chooser = caja_column_chooser_new (NULL);
    g_signal_connect (chooser, "changed",
                      G_CALLBACK (columns_changed_callback), chooser);
    g_signal_connect (chooser, "use_default",
                      G_CALLBACK (use_default_callback), chooser);

    set_columns_from_settings (CAJA_COLUMN_CHOOSER (chooser));

    gtk_widget_show (chooser);
    box = GTK_WIDGET (gtk_builder_get_object (builder, "list_columns_vbox"));

    gtk_box_pack_start (GTK_BOX (box), chooser, TRUE, TRUE, 0);
}
Example #7
0
static void
caja_column_chooser_set_property (GObject *object,
                                  guint param_id,
                                  const GValue *value,
                                  GParamSpec *pspec)
{
    CajaColumnChooser *chooser;

    chooser = CAJA_COLUMN_CHOOSER (object);

    switch (param_id)
    {
    case PROP_FILE:
        chooser->details->file = g_value_get_object (value);
        break;
    default:
        G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
        break;
    }
}
static void
columns_changed_callback (CajaColumnChooser *chooser,
                          gpointer callback_data)
{
    char **visible_columns;
    char **column_order;

    caja_column_chooser_get_settings (CAJA_COLUMN_CHOOSER (chooser),
                                      &visible_columns,
                                      &column_order);

    g_settings_set_strv (caja_list_view_preferences,
                         CAJA_PREFERENCES_LIST_VIEW_DEFAULT_VISIBLE_COLUMNS,
                         (const char * const *)visible_columns);
    g_settings_set_strv (caja_list_view_preferences,
                         CAJA_PREFERENCES_LIST_VIEW_DEFAULT_COLUMN_ORDER,
                         (const char * const *)column_order);

    g_strfreev (visible_columns);
    g_strfreev (column_order);
}
Example #9
0
static void
visible_toggled_callback (GtkCellRendererToggle *cell,
                          char *path_string,
                          gpointer user_data)
{
    CajaColumnChooser *chooser;
    GtkTreePath *path;
    GtkTreeIter iter;
    gboolean visible;

    chooser = CAJA_COLUMN_CHOOSER (user_data);

    path = gtk_tree_path_new_from_string (path_string);
    gtk_tree_model_get_iter (GTK_TREE_MODEL (chooser->details->store),
                             &iter, path);
    gtk_tree_model_get (GTK_TREE_MODEL (chooser->details->store),
                        &iter, COLUMN_VISIBLE, &visible, -1);
    gtk_list_store_set (chooser->details->store,
                        &iter, COLUMN_VISIBLE, !visible, -1);
    gtk_tree_path_free (path);
    list_changed (chooser);
}
Example #10
0
static void
use_default_clicked_callback (GtkWidget *button, gpointer user_data)
{
    g_signal_emit (CAJA_COLUMN_CHOOSER (user_data),
                   signals[USE_DEFAULT], 0);
}
Example #11
0
static void
selection_changed_callback (GtkTreeSelection *selection, gpointer user_data)
{
    update_buttons (CAJA_COLUMN_CHOOSER (user_data));
}