[][src]Struct ofx_sys::OfxMessageSuiteV2

#[repr(C)]
pub struct OfxMessageSuiteV2 { pub message: Option<unsafe extern "C" fn(handle: *mut c_void, messageType: *const c_char, messageId: *const c_char, format: *const c_char, ...) -> OfxStatus>, pub setPersistentMessage: Option<unsafe extern "C" fn(handle: *mut c_void, messageType: *const c_char, messageId: *const c_char, format: *const c_char, ...) -> OfxStatus>, pub clearPersistentMessage: Option<unsafe extern "C" fn(handle: *mut c_void) -> OfxStatus>, }

@brief The OFX suite that allows a plug-in to pass messages back to a user.

This extends OfxMessageSuiteV1, and should be considered a replacement to version 1.

Note that this suite has been extended in backwards compatible manner, so that a host can return this struct for both V1 and V2.

Fields

message: Option<unsafe extern "C" fn(handle: *mut c_void, messageType: *const c_char, messageId: *const c_char, format: *const c_char, ...) -> OfxStatus>

@brief Post a transient message on the host, using printf style varargs. Same as the V1 message suite call.

\arg handle - effect handle (descriptor or instance) the message should be associated with, may be null \arg messageType - string describing the kind of message to post, one of the kOfxMessageType* constants \arg messageId - plugin specified id to associate with this message. If overriding the message in XML resource, the message is identified with this, this may be NULL, or "", in which case no override will occur, \arg format - printf style format string \arg ... - printf style varargs list to print

\returns

  • ::kOfxStatOK - if the message was sucessfully posted
  • ::kOfxStatReplyYes - if the message was of type kOfxMessageQuestion and the user reply yes
  • ::kOfxStatReplyNo - if the message was of type kOfxMessageQuestion and the user reply no
  • ::kOfxStatFailed - if the message could not be posted for some reason
setPersistentMessage: Option<unsafe extern "C" fn(handle: *mut c_void, messageType: *const c_char, messageId: *const c_char, format: *const c_char, ...) -> OfxStatus>

@brief Post a persistent message on an effect, using printf style varargs, and set error states. New for V2 message suite.

\arg handle - effect instance handle the message should be associated with, may NOT be null, \arg messageType - string describing the kind of message to post, should be one of...

  • kOfxMessageError
  • kOfxMessageWarning
  • kOfxMessageMessage \arg messageId - plugin specified id to associate with this message. If overriding the message in XML resource, the message is identified with this, this may be NULL, or "", in which case no override will occur, \arg format - printf style format string \arg ... - printf style varargs list to print

\returns

  • ::kOfxStatOK - if the message was sucessfully posted
  • ::kOfxStatErrBadHandle - the handle was rubbish
  • ::kOfxStatFailed - if the message could not be posted for some reason

Persistent messages are associated with an effect handle until explicitly cleared by an effect. So if an error message is posted the error state, and associated message will persist and be displayed on the effect appropriately. (eg: draw a node in red on a node based compostor and display the message when clicked on).

If \e messageType is error or warning, associated error states should be flagged on host applications. Posting an error message implies that the host cannot proceeed, a warning allows the host to proceed, whilst a simple message should have no stop anything.

clearPersistentMessage: Option<unsafe extern "C" fn(handle: *mut c_void) -> OfxStatus>

@brief Clears any persistent message on an effect handle that was set by OfxMessageSuiteV2::setPersistentMessage. New for V2 message suite.

\arg handle - effect instance handle messages should be cleared from. \arg handle - effect handle (descriptor or instance)

\returns

  • ::kOfxStatOK - if the message was sucessfully cleared
  • ::kOfxStatErrBadHandle - the handle was rubbish
  • ::kOfxStatFailed - if the message could not be cleared for some reason

Clearing a message will clear any associated error state.

Trait Implementations

impl Clone for OfxMessageSuiteV2[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Copy for OfxMessageSuiteV2[src]

impl Debug for OfxMessageSuiteV2[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]