Object

Copy and Paste

Implements the following functionality

  1. select, copy/cut and paste

  2. clipboard

  3. drag and drop

in order to share data across application windows.

Contains functions to select text or a portion of data, send it to a buffer, and paste the data into a target.

elm_cnp provides a generic copy and paste facility based on its windowing system. It is not necessary to know the details of each windowing system, but some terms and behavior are common. Currently the X11 window system is widely used, and only X11 functionality is implemented.

In X11R6 window system, CopyPaste works like a peer-to-peer communication. Copying is an operation on an object in an X server. X11 calls those objects ‘selections’ which have names. Generally, two selection types are needed for copy and paste: The Primary selection and the Clipboard selection. Primary selection is for selecting text (that means highlighted text). Clipboard selection is for explicit copying behavior (such as ctrl+c, or ‘copy’ in a menu). Thus, in applications most cases only use the clipboard selection. As stated before, taking ownership of a selection doesn’t move any actual data. Copying and Pasting is described as follows:

  1. Copy text in Program A : Program A takes ownership of the selection

  2. Paste text in Program B : Program B notes that Program A owns the selection

  3. Program B asks A for the text

  4. Program A responds and sends the text to program B

  5. Program B pastes the response

More information is on

Emitted smart events

  • moved - When the object change position. (since 1.17)

  • focus - When the object has received focus. (since 1.8)

  • unfocus - When the object has lost focus. (since 1.8)

  • language,changed - Whenever system locale changes.

Enumerations

Focus direction

efl.elementary.ELM_FOCUS_PREVIOUS

Focus previous

efl.elementary.ELM_FOCUS_NEXT

Focus next

efl.elementary.ELM_FOCUS_UP

Focus up

Added in version 1.8.1.

efl.elementary.ELM_FOCUS_DOWN

Focus down

Added in version 1.8.1.

efl.elementary.ELM_FOCUS_RIGHT

Focus right

Added in version 1.8.1.

efl.elementary.ELM_FOCUS_LEFT

Focus left

Added in version 1.8.1.

Focus move policy

efl.elementary.ELM_FOCUS_MOVE_POLICY_CLICK

Give focus to object when they are clicked

Added in version 1.10.

efl.elementary.ELM_FOCUS_MOVE_POLICY_IN

Give focus to object on mouse-in

Added in version 1.10.

efl.elementary.ELM_FOCUS_MOVE_POLICY_KEY_ONLY

Focus is set on key input like Left, Right, Up, Down, Tab, or Shift+Tab

Added in version 1.15.

Focus autoscroll mode

efl.elementary.ELM_FOCUS_AUTOSCROLL_MODE_SHOW

Directly show the focused region or item automatically.

Added in version 1.10.

efl.elementary.ELM_FOCUS_AUTOSCROLL_MODE_NONE

Do not show the focused region or item automatically.

Added in version 1.10.

efl.elementary.ELM_FOCUS_AUTOSCROLL_MODE_BRING_IN

Bring_in the focused region or item automatically which might invole the scrolling

Added in version 1.10.

Focus region show mode

efl.elementary.ELM_FOCUS_REGION_SHOW_WIDGET

as a widget

Added in version 1.16.

efl.elementary.ELM_FOCUS_REGION_SHOW_ITEM

as an item

Added in version 1.16.

Input event types

efl.elementary.EVAS_CALLBACK_KEY_DOWN
efl.elementary.EVAS_CALLBACK_KEY_UP
efl.elementary.EVAS_CALLBACK_MOUSE_WHEEL

Selection type

Defines the types of selection property names.

see:

http://www.x.org/docs/X11/xlib.pdf for more details.

efl.elementary.ELM_SEL_TYPE_PRIMARY

Primary text selection (highlighted or selected text)

efl.elementary.ELM_SEL_TYPE_SECONDARY

Used when primary selection is in use

efl.elementary.ELM_SEL_TYPE_XDND

Drag ‘n’ Drop

efl.elementary.ELM_SEL_TYPE_CLIPBOARD

Clipboard selection (ctrl+C)

Selection format

Defines the types of content.

efl.elementary.ELM_SEL_FORMAT_TARGETS

For matching every possible atom

efl.elementary.ELM_SEL_FORMAT_NONE

Content is from outside of Elementary

efl.elementary.ELM_SEL_FORMAT_TEXT

Plain unformatted text: Used for things that don’t want rich markup

efl.elementary.ELM_SEL_FORMAT_MARKUP

Edje textblock markup, including inline images

efl.elementary.ELM_SEL_FORMAT_IMAGE

Images

efl.elementary.ELM_SEL_FORMAT_VCARD

Vcards

efl.elementary.ELM_SEL_FORMAT_HTML

Raw HTML-like data (eg. webkit)

XDND action

Defines the kind of action associated with the drop data if for XDND

Added in version 1.8.

efl.elementary.ELM_XDND_ACTION_UNKNOWN

Action type is unknown

efl.elementary.ELM_XDND_ACTION_COPY

Copy the data

efl.elementary.ELM_XDND_ACTION_MOVE

Move the data

efl.elementary.ELM_XDND_ACTION_PRIVATE

Private action type

efl.elementary.ELM_XDND_ACTION_ASK

Ask the user what to do

efl.elementary.ELM_XDND_ACTION_LIST

List the data

Link the data

efl.elementary.ELM_XDND_ACTION_DESCRIPTION

Describe the data

Selection modes

efl.elementary.ELM_OBJECT_SELECT_MODE_DEFAULT

Items will only call their selection func and callback when first becoming selected. Any further clicks will do nothing, unless you set always select mode.

efl.elementary.ELM_OBJECT_SELECT_MODE_ALWAYS

This means that, even if selected, every click will make the selected callbacks be called.

efl.elementary.ELM_OBJECT_SELECT_MODE_NONE

This will turn off the ability to select items entirely and they will neither appear selected nor call selected callback functions.

efl.elementary.ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY

No select mode with no finger size rule

Tooltip orientation

efl.elementary.ELM_TOOLTIP_ORIENT_NONE

Default value, Tooltip moves with mouse pointer

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_TOP_LEFT

Tooltip should appear at the top left of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_TOP

Tooltip should appear at the top of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_TOP_RIGHT

Tooltip should appear at the top right of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_LEFT

Tooltip should appear at the left of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_CENTER

Tooltip should appear at the center of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_RIGHT

Tooltip should appear at the right of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_BOTTOM_LEFT

Tooltip should appear at the bottom left of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_BOTTOM

Tooltip should appear at the bottom of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_BOTTOM_RIGHT

Tooltip should appear at the bottom right of parent

Added in version 1.16.

efl.elementary.ELM_TOOLTIP_ORIENT_LAST

Sentinel value, don’t use

Added in version 1.16.

Inheritance diagram