rb-shell-clipboard

rb-shell-clipboard — cut and paste handling

Synopsis

                    RBShellClipboard;
                    RBShellClipboardClass;
RBShellClipboard*   rb_shell_clipboard_new              (GtkActionGroup *actiongroup,
                                                         GtkUIManager *ui_mgr,
                                                         RhythmDB *db);
void                rb_shell_clipboard_set_source       (RBShellClipboard *clipboard,
                                                         RBSource *source);

Object Hierarchy

  GObject
   +----RBShellClipboard

Properties

  "action-group"             GtkActionGroup*       : Read / Write / Construct Only
  "db"                       RhythmDB*             : Read / Write / Construct Only
  "playlist-manager"         RBPlaylistManager*    : Read / Write
  "queue-source"             RBPlaylistSource*     : Read / Write
  "source"                   RBSource*             : Read / Write
  "ui-manager"               GtkUIManager*         : Read / Write / Construct Only

Description

The clipboard is primarily responsible for handling cut and paste actions, as well as various other actions that relate to a selected set of entries from a source, such as move to trash, delete, and add to playlist.

It updates the sensitivity of the various actions it handles when the selected source changes, and when the track list selection changes. The actual action handlers are fairly simple, mostly calling RBSource methods.

For the 'add to playlist' action, the clipboard builds a menu containing the available playlists that entries can be added to from the current selected source.

Details

RBShellClipboard

typedef struct _RBShellClipboard RBShellClipboard;


RBShellClipboardClass

typedef struct {
	GObjectClass parent_class;
} RBShellClipboardClass;


rb_shell_clipboard_new ()

RBShellClipboard*   rb_shell_clipboard_new              (GtkActionGroup *actiongroup,
                                                         GtkUIManager *ui_mgr,
                                                         RhythmDB *db);

Creates the RBShellClipboard instance

actiongroup :

the GtkActionGroup to use

ui_mgr :

the GtkUIManager instance

db :

the RhythmDB instance

Returns :

the RBShellClipboard

rb_shell_clipboard_set_source ()

void                rb_shell_clipboard_set_source       (RBShellClipboard *clipboard,
                                                         RBSource *source);

Updates the clipboard to reflect a newly selected source.

clipboard :

the RBShellClipboard

source :

the new selected RBSource

Property Details

The "action-group" property

  "action-group"             GtkActionGroup*       : Read / Write / Construct Only

GtkActionGroup object.


The "db" property

  "db"                       RhythmDB*             : Read / Write / Construct Only

RhythmDB database.


The "playlist-manager" property

  "playlist-manager"         RBPlaylistManager*    : Read / Write

RBPlaylistManager object.


The "queue-source" property

  "queue-source"             RBPlaylistSource*     : Read / Write

RBPlaylistSource object.


The "source" property

  "source"                   RBSource*             : Read / Write

RBSource object.


The "ui-manager" property

  "ui-manager"               GtkUIManager*         : Read / Write / Construct Only

GtkUIManager object.