TnyMimePartSaver

TnyMimePartSaver — A type for saving a mime part

Synopsis

                    TnyMimePartSaver;
                    TnyMimePartSaverIface;
TnyMimePartSaveStrategy* tny_mime_part_saver_get_save_strategy
                                                        (TnyMimePartSaver *self);
void                tny_mime_part_saver_set_save_strategy
                                                        (TnyMimePartSaver *self,
                                                         TnyMimePartSaveStrategy *strategy);
void                tny_mime_part_saver_save            (TnyMimePartSaver *self,
                                                         TnyMimePart *part);

Object Hierarchy

  GInterface
   +----TnyMimePartSaver

Description

A type that can save a TnyMimePart

Details

TnyMimePartSaver

typedef struct _TnyMimePartSaver TnyMimePartSaver;

A type that can save a TnyMimePart

free-function: g_object_unref


TnyMimePartSaverIface

typedef struct {
	GTypeInterface parent;

	TnyMimePartSaveStrategy* (*get_save_strategy) (TnyMimePartSaver *self);
	void (*set_save_strategy) (TnyMimePartSaver *self, TnyMimePartSaveStrategy *strategy);
	void (*save) (TnyMimePartSaver *self, TnyMimePart *part);	
} TnyMimePartSaverIface;


tny_mime_part_saver_get_save_strategy ()

TnyMimePartSaveStrategy* tny_mime_part_saver_get_save_strategy
                                                        (TnyMimePartSaver *self);

Get the strategy for saving mime-parts. The returned value must be unreferenced after use.

For more information take a look at tny_mime_part_save_strategy_perform_save() of TnyMimePartSaveStrategy.

Example:

static void 
tny_my_msg_view_on_save_clicked (TnyMimePartSaver *self, TnyMimePart *attachment)
{
    TnyMimePartSaveStrategy *strategy = tny_mime_part_saver_get_save_strategy (self);
    tny_save_strategy_save (strategy, attachment);
    g_object_unref (strategy);
}

self :

a TnyMsgView

Returns :

(caller-owns): the TnyMimePartSaveStrategy for self

Since 1.0 audience: application-developer, type-implementer


tny_mime_part_saver_set_save_strategy ()

void                tny_mime_part_saver_set_save_strategy
                                                        (TnyMimePartSaver *self,
                                                         TnyMimePartSaveStrategy *strategy);

Set the strategy for saving mime-parts

Devices can have a specific strategy for storing a TnyMimePart. For example a strategy that sends it to another computer or a strategy that saves it to a flash disk. In the message view component, you don't care about that: You only care about the API of the save-strategy interface.

For more information take a look at tny_mime_part_save_strategy_perform_save() of TnyMimePartSaveStrategy.

Example:

static void 
tny_my_msg_view_set_save_strategy (TnyMimePartSaver *self_i, TnyMimePartSaveStrategy *strat)
{
     TnyMyMsgView *self = TNY_MY_MSG_VIEW (self_i);
     if (self->save_strategy)
           g_object_unref (self->save_strategy);
     self->save_strategy = g_object_ref (strat);
}
static void
tny_my_msg_view_finalize (TnyMyMsgView *self)
{
     if (self->save_strategy))
         g_object_unref (self->save_strategy);
}

self :

a TnyMimePartSaver

strategy :

a TnyMimePartSaveStrategy

Since 1.0 audience: application-developer, type-implementer


tny_mime_part_saver_save ()

void                tny_mime_part_saver_save            (TnyMimePartSaver *self,
                                                         TnyMimePart *part);

Saves mime_part using the save strategy of self.

self :

a TnyMimePartSaver

part :

a TnyMimePart

Since 1.0 audience: application-developer, type-implementer

See Also

TnyMsgView, TnyMimePartView