FmFolderView

FmFolderView — A folder view widget.

Synopsis

#define             FM_FOLDER_VIEW_TYPE
                    FmFolderView;
struct              FmFolderViewClass;
enum                FmFolderViewClickType;
enum                FmFolderViewMode;
FmPathList *        fm_folder_view_dup_selected_file_paths
                                                        (FmFolderView *fv);
FmFileInfoList *    fm_folder_view_dup_selected_files   (FmFolderView *fv);
FmPath *            fm_folder_view_get_cwd              (FmFolderView *fv);
FmFileInfo *        fm_folder_view_get_cwd_info         (FmFolderView *fv);
FmFolder *          fm_folder_view_get_folder           (FmFolderView *fv);
FmFolderViewMode    fm_folder_view_get_mode             (FmFolderView *fv);
FmFolderModel *     fm_folder_view_get_model            (FmFolderView *fv);
GtkSelectionMode    fm_folder_view_get_selection_mode   (FmFolderView *fv);
gboolean            fm_folder_view_get_show_hidden      (FmFolderView *fv);
int                 fm_folder_view_get_sort_by          (FmFolderView *fv);
GtkSortType         fm_folder_view_get_sort_type        (FmFolderView *fv);
FmFolderView *      fm_folder_view_new                  (FmFolderViewMode mode);
void                fm_folder_view_select_all           (FmFolderView *fv);
void                fm_folder_view_select_custom        (FmFolderView *fv,
                                                         GFunc filter,
                                                         gpointer user_data);
void                fm_folder_view_select_file_path     (FmFolderView *fv,
                                                         FmPath *path);
void                fm_folder_view_select_file_paths    (FmFolderView *fv,
                                                         FmPathList *paths);
void                fm_folder_view_select_invert        (FmFolderView *fv);
void                fm_folder_view_set_mode             (FmFolderView *fv,
                                                         FmFolderViewMode mode);
void                fm_folder_view_set_model            (FmFolderView *fv,
                                                         FmFolderModel *model);
void                fm_folder_view_set_selection_mode   (FmFolderView *fv,
                                                         GtkSelectionMode mode);
void                fm_folder_view_set_show_hidden      (FmFolderView *fv,
                                                         gboolean show);
void                fm_folder_view_sort                 (FmFolderView *fv,
                                                         GtkSortType type,
                                                         FmFolderModelViewCol by);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBin
                                 +----GtkScrolledWindow
                                       +----FmFolderView

Implemented Interfaces

FmFolderView implements AtkImplementorIface and GtkBuildable.

Signals

  "clicked"                                        : Run First
  "sel-changed"                                    : Run First
  "sort-changed"                                   : Run First

Description

include: libfm/fm-folder-view.h

The FmFolderView represents view of content of a folder with support of drag & drop and other file/directory operations.

Details

FM_FOLDER_VIEW_TYPE

#define FM_FOLDER_VIEW_TYPE             (fm_folder_view_get_type())

FmFolderView

typedef struct _FmFolderView FmFolderView;

struct FmFolderViewClass

struct FmFolderViewClass {
    GtkScrolledWindowClass parent_class;
    void (*clicked)(FmFolderView* fv, FmFolderViewClickType type, FmFileInfo* file);
    void (*sel_changed)(FmFolderView* fv, gint n_sel);
    void (*sort_changed)(FmFolderView* fv);
};

GtkScrolledWindowClass parent_class;

the parent class

clicked ()

the class closure for the "clicked" signal

sel_changed ()

the class closure for the "sel-changed" signal

sort_changed ()

the class closure for the "sort-changed" signal

enum FmFolderViewClickType

typedef enum {
    FM_FV_CLICK_NONE,
    FM_FV_ACTIVATED,
    FM_FV_MIDDLE_CLICK,
    FM_FV_CONTEXT_MENU
} FmFolderViewClickType;

Click type for "clicked" signal handlers.

FM_FV_CLICK_NONE

no click

FM_FV_ACTIVATED

this can be triggered by both left single or double click depending on whether single-click activation is used or not.

FM_FV_MIDDLE_CLICK

middle mouse button pressed

FM_FV_CONTEXT_MENU

right mouse button pressed

enum FmFolderViewMode

typedef enum {
    FM_FV_ICON_VIEW,
    FM_FV_COMPACT_VIEW,
    FM_FV_THUMBNAIL_VIEW,
    FM_FV_LIST_VIEW
} FmFolderViewMode;

FM_FV_ICON_VIEW

standard icon view

FM_FV_COMPACT_VIEW

view with small icons and text on right of them

FM_FV_THUMBNAIL_VIEW

view with big icons/thumbnails

FM_FV_LIST_VIEW

table-form view

fm_folder_view_dup_selected_file_paths ()

FmPathList *        fm_folder_view_dup_selected_file_paths
                                                        (FmFolderView *fv);

Retrieves a list of the currently selected files. The list should be freed after usage with fm_path_list_unref(). If there are no files selected then return value is NULL.

Before 1.0.0 this API had name fm_folder_view_get_selected_file_paths.

fv :

a FmFolderView object

Returns :

list of selected file paths. [transfer full]

Since 0.1.0


fm_folder_view_dup_selected_files ()

FmFileInfoList *    fm_folder_view_dup_selected_files   (FmFolderView *fv);

Retrieves a list of the currently selected files. The list should be freed after usage with fm_file_info_list_unref(). If there are no files selected then return value is NULL.

Before 1.0.0 this API had name fm_folder_view_get_selected_files.

fv :

a FmFolderView object

Returns :

list of selected file infos. [transfer full]

Since 0.1.0


fm_folder_view_get_cwd ()

FmPath *            fm_folder_view_get_cwd              (FmFolderView *fv);

Retrieves file path of the folder shown by fv. Returned data are owned by fv and should not be freed by caller.

fv :

a widget to inspect

Returns :

file path of the folder. [transfer none]

Since 0.1.0


fm_folder_view_get_cwd_info ()

FmFileInfo *        fm_folder_view_get_cwd_info         (FmFolderView *fv);

Retrieves file info of the folder shown by fv. Returned data are owned by fv and should not be freed by caller.

fv :

a widget to inspect

Returns :

file info descriptor of the folder. [transfer none]

Since 0.1.0


fm_folder_view_get_folder ()

FmFolder *          fm_folder_view_get_folder           (FmFolderView *fv);

Retrieves the folder shown by fv. Returned data are owned by fv and should not be freed by caller.

fv :

a widget to inspect

Returns :

the folder of view. [transfer none]

Since 1.0.0


fm_folder_view_get_mode ()

FmFolderViewMode    fm_folder_view_get_mode             (FmFolderView *fv);

Retrieves current view mode for folder in fv.

fv :

a widget to inspect

Returns :

current mode of view.

Since 0.1.0


fm_folder_view_get_model ()

FmFolderModel *     fm_folder_view_get_model            (FmFolderView *fv);

Retrieves the model used by fv. Returned data are owned by fv and should not be freed by caller.

fv :

a widget to inspect

Returns :

the model of view. [transfer none]

Since 0.1.16


fm_folder_view_get_selection_mode ()

GtkSelectionMode    fm_folder_view_get_selection_mode   (FmFolderView *fv);

Retrieves current selection mode in fv.

fv :

a widget to inspect

Returns :

current selection mode.

Since 0.1.0


fm_folder_view_get_show_hidden ()

gboolean            fm_folder_view_get_show_hidden      (FmFolderView *fv);

Retrieves setting whether hidden files in folder shown in fv should be visible or not.

fv :

a widget to inspect

Returns :

TRUE if hidden files are visible. See also: fm_folder_view_set_show_hidden().

Since 0.1.0


fm_folder_view_get_sort_by ()

int                 fm_folder_view_get_sort_by          (FmFolderView *fv);

Retrieves current criteria of sorting in fv (e.g. by name).

fv :

a widget to inspect

Returns :

criteria of sorting.

Since 0.1.0


fm_folder_view_get_sort_type ()

GtkSortType         fm_folder_view_get_sort_type        (FmFolderView *fv);

Retrieves current sorting type in fv.

fv :

a widget to inspect

Returns :

mode of sorting (ascending or descending)

Since 0.1.0


fm_folder_view_new ()

FmFolderView *      fm_folder_view_new                  (FmFolderViewMode mode);

Creates new folder view.

mode :

initial mode of view

Returns :

a new FmFolderView widget.

Since 0.1.0


fm_folder_view_select_all ()

void                fm_folder_view_select_all           (FmFolderView *fv);

Selects all files in folder.

fv :

a widget to apply

Since 0.1.0


fm_folder_view_select_custom ()

void                fm_folder_view_select_custom        (FmFolderView *fv,
                                                         GFunc filter,
                                                         gpointer user_data);

fm_folder_view_select_file_path ()

void                fm_folder_view_select_file_path     (FmFolderView *fv,
                                                         FmPath *path);

Selects a file in the folder.

fv :

a widget to apply

path :

a file path to select

Since 0.1.0


fm_folder_view_select_file_paths ()

void                fm_folder_view_select_file_paths    (FmFolderView *fv,
                                                         FmPathList *paths);

Selects few files in the folder.

fv :

a widget to apply

paths :

list of files to select

Since 0.1.0


fm_folder_view_select_invert ()

void                fm_folder_view_select_invert        (FmFolderView *fv);

Selects all unselected files in fv but unselects all selected.

fv :

a widget to apply

Since 0.1.0


fm_folder_view_set_mode ()

void                fm_folder_view_set_mode             (FmFolderView *fv,
                                                         FmFolderViewMode mode);

Changes current view mode for folder in fv.

fv :

a widget to apply

mode :

new mode of view

Since 0.1.0


fm_folder_view_set_model ()

void                fm_folder_view_set_model            (FmFolderView *fv,
                                                         FmFolderModel *model);

Changes model for the fv.

fv :

a widget to apply

model :

new view model. [allow-none]

Since 1.0.0


fm_folder_view_set_selection_mode ()

void                fm_folder_view_set_selection_mode   (FmFolderView *fv,
                                                         GtkSelectionMode mode);

Changes selection mode in fv.

fv :

a widget to apply

mode :

new mode of selection in fv.

Since 0.1.0


fm_folder_view_set_show_hidden ()

void                fm_folder_view_set_show_hidden      (FmFolderView *fv,
                                                         gboolean show);

Changes whether hidden files in folder shown in fv should be visible or not.

See also: fm_folder_view_get_show_hidden().

fv :

a widget to apply

show :

new setting

Since 0.1.0


fm_folder_view_sort ()

void                fm_folder_view_sort                 (FmFolderView *fv,
                                                         GtkSortType type,
                                                         FmFolderModelViewCol by);

Changes sorting in the view.

fv :

a widget to apply

type :

new mode of sorting (ascending or descending)

by :

criteria of sorting

Since 0.1.0

Signal Details

The "clicked" signal

void                user_function                      (FmFolderView *view,
                                                        guint         type,
                                                        gpointer      file,
                                                        gpointer      user_data)      : Run First

The "clicked" signal is emitted when user clicked somewhere in the folder area. If click was on free folder area then file is NULL.

view :

the widget that emitted the signal

type :

(FmFolderViewClickType) type of click

file :

(FmFileInfo *) file on which cursor is

user_data :

user data set when the signal handler was connected.

Since 0.1.0


The "sel-changed" signal

void                user_function                      (FmFolderView *view,
                                                        gint          n_sel,
                                                        gpointer      user_data)      : Run First

The "sel-changed" signal is emitted when selection of the view got changed.

Before 1.0.0 parameter was list of currently selected files.

view :

the widget that emitted the signal

n_sel :

number of files currently selected in the folder

user_data :

user data set when the signal handler was connected.

Since 0.1.0


The "sort-changed" signal

void                user_function                      (FmFolderView *view,
                                                        gpointer      user_data)      : Run First

The "sort-changed" signal is emitted when sorting of the view got changed.

view :

the widget that emitted the signal

user_data :

user data set when the signal handler was connected.

Since 0.1.10