X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-viewer-window.c;h=b6fa336705786762e175d706f24149f97938dd8d;hp=9e16e204ad69db35628e4de7fa94b27225726798;hb=f5a5b7f93359c6e7ff078ffe604b54c8d8169dda;hpb=ffe54f8d774671aff5f81b23aa38ac086ba99492 diff --git a/src/modest-viewer-window.c b/src/modest-viewer-window.c index 9e16e20..b6fa336 100644 --- a/src/modest-viewer-window.c +++ b/src/modest-viewer-window.c @@ -1,10 +1,37 @@ -/* modest-viewer-window.c */ +/* Copyright (c) 2006, Nokia Corporation + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of the Nokia Corporation nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ -/* insert (c)/licensing information) */ #include "modest-ui.h" +#include "modest-tny-msg-view.h" #include "modest-viewer-window.h" -/* include other impl specific header files */ + /* 'private'/'protected' functions */ static void modest_viewer_window_class_init (ModestViewerWindowClass *klass); @@ -18,6 +45,7 @@ enum { typedef struct _ModestViewerWindowPrivate ModestViewerWindowPrivate; struct _ModestViewerWindowPrivate { + ModestTnyMsgView *msg_view; gpointer user_data; }; #define MODEST_VIEWER_WINDOW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \ @@ -26,8 +54,6 @@ struct _ModestViewerWindowPrivate { /* globals */ static GtkWindowClass *parent_class = NULL; -/* uncomment the following if you have defined any signals */ -/* static guint signals[LAST_SIGNAL] = {0}; */ GType modest_viewer_window_get_type (void) @@ -78,6 +104,7 @@ modest_viewer_window_init (ModestViewerWindow *obj) ModestViewerWindowPrivate *priv = MODEST_VIEWER_WINDOW_GET_PRIVATE(obj); priv->user_data = NULL; + priv->msg_view = NULL; } @@ -96,18 +123,21 @@ modest_viewer_window_finalize (GObject *obj) GtkWidget* -modest_viewer_window_new (ModestUI *ui) +modest_viewer_window_new (ModestUI *ui, TnyMsgIface *msg) { GObject *self; ModestViewerWindowPrivate *priv; GtkWidget *w; gpointer data; + GtkWidget *msg_view; self = G_OBJECT(g_object_new(MODEST_TYPE_VIEWER_WINDOW, NULL)); priv = MODEST_VIEWER_WINDOW_GET_PRIVATE(self); + msg_view = modest_tny_msg_view_new(msg); + data = NULL; - w = GTK_WIDGET(modest_ui_new_viewer_window(ui, &data)); + w = GTK_WIDGET(modest_ui_new_viewer_window(ui, msg_view, msg, &data)); if (!w) return NULL; if (!data) @@ -115,6 +145,7 @@ modest_viewer_window_new (ModestUI *ui) gtk_container_add(GTK_CONTAINER(self), w); priv->user_data = data; + priv->msg_view = MODEST_TNY_MSG_VIEW(msg_view); return GTK_WIDGET(self); } @@ -124,16 +155,27 @@ modest_viewer_window_new (ModestUI *ui) * return user defined data from a ModestViewerWindow instance * like e.g. a refernce to a GladeXML* */ -gpointer modest_viewer_window_get_data(ModestViewerWindow *viewer_win) +gpointer +modest_viewer_window_get_data(ModestViewerWindow *viewer_win) { ModestViewerWindowPrivate *priv; - if (!viewer_win) { - return NULL; - } - priv = MODEST_VIEWER_WINDOW_GET_PRIVATE(viewer_win); + g_return_val_if_fail (viewer_win, NULL); - // g_message("get priv->data = %p", priv->user_data); + priv = MODEST_VIEWER_WINDOW_GET_PRIVATE(viewer_win); return priv->user_data; } + + +ModestTnyMsgView* +modest_viewer_window_get_tiny_msg_view(ModestViewerWindow *viewer_win) +{ + ModestViewerWindowPrivate *priv; + + g_return_val_if_fail (viewer_win, NULL); + + priv = MODEST_VIEWER_WINDOW_GET_PRIVATE(viewer_win); + + return priv->msg_view; +}