KDE 4.3 PyKDE API Reference
  • KDE's Python API
  • Overview
  • PyKDE Home
  • Sitemap
  • Contact Us
 

KSelectionOwner Class Reference

from PyKDE4.kdeui import *

Inherits: QObject

Detailed Description

This class implements claiming and owning manager selections, as described in the ICCCM, section 2.8. The selection atom is passed to the constructor, claim() attemps to claim ownership of the selection, release() gives up the selection ownership. Signal lostOwnership() is emitted when the selection is claimed by another owner. ICCCM manager selection owner


Signals

 lostOwnership ()

Methods

 __init__ (self, Atom selection, int screen=-1, QObject parent=NULL)
 __init__ (self, QString selection, int screen=-1, QObject parent=NULL)
bool claim (self, bool force, bool force_kill=1)
bool filterEvent (self, XEvent ev_P)
bool genericReply (self, Atom target, Atom property, Window requestor)
 getAtoms (self)
bool handleMessage (self, XEvent ev)
 lostOwnership (self)
Window ownerWindow (self)
 release (self)
 replyTargets (self, Atom property, Window requestor)
 setData (self, long extra1, long extra2)

Method Documentation

__init__ (  self,
Atom  selection,
int  screen=-1,
QObject  parent=NULL
)

This constructor initializes the object, but doesn't perform any operation on the selection.

Parameters:
selection  atom representing the manager selection
screen  X screen, or -1 for default
parent  parent object, or NULL if there is none

__init__ (  self,
QString  selection,
int  screen=-1,
QObject  parent=NULL
)

This constructor accepts the selection name and creates the appropriate atom for it automatically.

Parameters:
selection  name of the manager selection
screen  X screen, or -1 for default
parent  parent object, or NULL if there is none

bool claim (  self,
bool  force,
bool  force_kill=1
)

This function attemps to claim ownership of the manager selection, using the current X timestamp. If force is false, and the selection is already owned, the selection is not claimed, and false is returned. If claiming is forced and the selection is owned by another client, it is waited for up to 1 second for the previous owner to disown the selection, if force_kill is true, and the previous owner fails to disown the selection in time, it will be forcibly killed. True is returned after successfully claiming ownership of the selection.

bool filterEvent (  self,
XEvent  ev_P
)

Internal:

bool genericReply (  self,
Atom  target,
Atom  property,
Window  requestor
)

Called when a SelectionRequest event is received. A reply should be sent using the selection handling mechanism described in the ICCCM section 2.

Parameters:
target  requested target type
property  property to use for the reply data
requestor  requestor window

getAtoms (   self )

Called to create atoms needed for claiming the selection and communication using the selection handling mechanism. The default implementation must be called if reimplemented. This method may be called repeatedly.

bool handleMessage (  self,
XEvent  ev
)

Called for every X event received on the window used for owning the selection. If true is returned, the event is filtered out.

lostOwnership (   self )

This signal is emitted if the selection was owned and the ownership has been lost due to another client claiming it, this signal is emitted. IMPORTANT: It's not safe to delete the instance in a slot connected to this signal.

Signal syntax:
QObject.connect(source, SIGNAL("lostOwnership()"), target_slot)
Window ownerWindow (   self )

If the selection is owned, returns the window used internally for owning the selection.

release (   self )

If the selection is owned, the ownership is given up.

replyTargets (  self,
Atom  property,
Window  requestor
)

Called to announce the supported targets, as described in the ICCCM section 2.6. The default implementation announces the required targets MULTIPLE, TIMESTAMP and TARGETS.

setData (  self,
long  extra1,
long  extra2
)

Sets extra data to be sent in the message sent to root window after successfully claiming a selection. These extra data are in data.l[3] and data.l[4] fields of the XClientMessage.

  • Full Index

Modules

  • akonadi
  • dnssd
  • kdecore
  • kdeui
  • khtml
  • kio
  • knewstuff
  • kparts
  • kutils
  • nepomuk
  • phonon
  • plasma
  • polkitqt
  • solid
  • soprano
This documentation is maintained by Simon Edwards.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal