Table Of Contents

Previous topic

DCTextColourChanger

Next topic

DataFormatId

This Page

phoenix_title DataFormat

A DataFormat is an encapsulation of a platform-specific format handle which is used by the system for the clipboard and drag and drop operations.

The applications are usually only interested in, for example, pasting data from the clipboard only if the data is in a format the program understands and a data format is something which uniquely identifies this format.

On the system level, a data format is usually just a number ( CLIPFORMAT under Windows or Atom under X11, for example) and the standard formats are, indeed, just numbers which can be implicitly converted to DataFormat. The standard formats are:

DF_INVALID An invalid format - used as default argument for functions taking a DataFormat argument sometimes.
DF_TEXT Text format (String).
DF_BITMAP A bitmap ( Bitmap).
DF_METAFILE A metafile (Metafile, Windows only).
DF_FILENAME A list of filenames.
DF_HTML An HTML string. This is only valid when passed to SetClipboardData when compiled with Visual C++ in non-Unicode mode.

As mentioned above, these standard formats may be passed to any function taking DataFormat argument because DataFormat has an implicit conversion from them (or, to be precise from the type DataFormat::NativeFormat which is the type used by the underlying platform for data formats).

Aside the standard formats, the application may also use custom formats which are identified by their names (strings) and not numeric identifiers. Although internally custom format must be created (or registered) first, you shouldn’t care about it because it is done automatically the first time the DataFormat object corresponding to a given format name is created. The only implication of this is that you should avoid having global DataFormat objects with non-default constructor because their constructors are executed before the program has time to perform all necessary initialisations and so an attempt to do clipboard format registration at this time will usually lead to a crash!


class_hierarchy Inheritance Diagram

Inheritance diagram for class DataFormat

Inheritance diagram of DataFormat


method_summary Methods Summary

__init__ Constructs a data format object for one of the standard data formats or an empty data object (use SetType or SetId later in this case).
GetId Returns the name of a custom format (this function will fail for a standard format).
GetType Returns the platform-specific number identifying the format.
SetId Sets the format to be the custom format identified by the given name.
SetType Sets the format to the given value, which should be one of DF_XXX constants.
__ne__ Returns True if the formats are different.
__eq__ Returns True if the formats are equal.

property_summary Properties Summary

Id See GetId and SetId
Type See GetType and SetType

api Class API



class DataFormat(object)

A DataFormat is an encapsulation of a platform-specific format handle which is used by the system for the clipboard and drag and drop operations.

Possible constructors:

DataFormat(format=DF_INVALID)

DataFormat(format)

Methods



__init__(self, *args, **kw)

overload Overloaded Implementations:



__init__ (self, format=DF_INVALID)

Constructs a data format object for one of the standard data formats or an empty data object (use SetType or SetId later in this case).

Parameters:format (DataFormatId) –



__init__ (self, format)

Constructs a data format object for a custom format identified by its name format.

Parameters:format (string) –





GetId(self)

Returns the name of a custom format (this function will fail for a standard format).

Return type:string


GetType(self)

Returns the platform-specific number identifying the format.

Return type: DataFormatId


SetId(self, format)

Sets the format to be the custom format identified by the given name.

Parameters:format (string) –


SetType(self, type)

Sets the format to the given value, which should be one of DF_XXX constants.

Parameters:type (DataFormatId) –


__ne__(self, *args, **kw)

Returns True if the formats are different.


overload Overloaded Implementations:



__ne__ (self)

Parameters:format (DataFormat) –



__ne__ (self)

Parameters:format (DataFormatId) –





__eq__(self, *args, **kw)

Returns True if the formats are equal.


overload Overloaded Implementations:



__eq__ (self)

Parameters:format (DataFormat) –



__eq__ (self)

Parameters:format (DataFormatId) –




Properties



Id

See GetId and SetId



Type

See GetType and SetType