GNOME Clipboard Manager - Documentation
Introduction
Index
About
GNOME Clipboard Manager is an application to manage your selections and clipboards.
Short: GNOME Clipboard Manager (GCM) is an application for managing selections and
clipboards. It auto- collects selections on a shelf and has the option to choose which
selection is to be pasted. Selections can be edited, manually created, deleted, copied,
and pasted. The available selection types are clipboard, primary, secondary, or a custom atom.
Details
(This information might be incorrect, please send corrections
to me if you think something is wrong here. I am not an X-specialist :)
Because the clipboard in X uses a few names and words that are
not the same in the Microsoft Windows world, I've made a small
data dictionary. Not all of these words are used on this webpage
but its good to understand a few basics about X before starting
to use the GNOME Clipboard Manager :
- A widget: A widget is a (graphical) object (in X). For example
a textbox, button and label are all .. widgets. But also your
entire screen is a widget. A window is also a widget and will most
likely contain onther widgets. Generally spoken, you can say that
most X-applications are a collection of widgets. Each of those
widgets have a few properties, signals and {paste other stuff here, only programmers care}.
Signals occur for example on an event like "clicked" or "mouse over". But also
on less obvious things like "selection recived" or "I got a
request from a widget to give the selection that I am owning".
- A selection: A selection is "what you selected". So, in case you
selected some text in application "e" then the selection is the text
that you selected.
- The selectionowner: The selectionowner is the widget that
holds the selection. For example if a textbox holds the selected
text then this textbox is the selection owner.
- The parent of a widget: Most/each widget has a parent. That's
the container widget that holds the widget.
- Some of you guys probably already noticed that the "clipboard"
in X works with owners and requests. Microsoft Windows has a
seperated mecanism for the clipboard. They hold the last selection
for you in some allocated memory. And when you ask for that memory
using the Win32 API then you just get that data. That is not how
X works with clipboards. In X a widget must claim the ownership of
the selection. This means that from that point on, that widget decides
what it will give when another widgets requests the selection data.
That is the reason why you cannot keep your clipboard when you closed
the application of which are copying from. (Some windowmanagers like
GNOME and KDE have solved this by introducing a seperated mecanism +-
like Microsoft Windows does).
(*) One problem with the way X handles the clipboard is that you cannot
know when something {an application, a widget or an object} claimed ownership of the selection. You
can only know when you "lost" ownership. GNOME Clipboard Manager will
claim ownership, and when it loses that ownership.. it gets the
(new) selection from the new selectionowner and reclaims selection ownership. I don't know if that is the "best" solution
but it's "a" solution.
Required
- (CVS only) Autoconf, Automake, etc
- A C compiler (like gcc), GNU's make tools, etc
- GNOME and GTK+
- Gnome -and gtk+ development libs
- GConf and GConf development libs
Help
- Yes, you can help me :). I am looking for people who want to help developping GCM.
Also documentation contributions, packages and suggestions are more then welcome.
CVS
Reference