* src/mimeview.[ch]
[claws.git] / src / mimeview.h
index a8bea564e55650c68d1fb6abf5f106f7378b51b7..ec646f85bdcd4f51a6c630f8a57263a2ba3a4dc8 100644 (file)
@@ -28,6 +28,7 @@ extern "C" {
 #include <gdk/gdk.h>
 #include <gtk/gtkwidget.h>
 #include <gtk/gtkctree.h>
+#include <gtk/gtktooltips.h>
 
 typedef struct _MimeView               MimeView;
 typedef struct _MimeViewerFactory      MimeViewerFactory;
@@ -45,13 +46,17 @@ typedef enum
 
 struct _MimeView
 {
+       GtkWidget *paned;
        GtkWidget *notebook;
        GtkWidget *vbox;
-
-       GtkWidget *paned;
        GtkWidget *scrolledwin;
        GtkWidget *ctree;
-       GtkWidget *mime_vbox;
+       GtkWidget *mime_notebook;
+       GtkWidget *ctree_mainbox;
+       GtkWidget *icon_scroll;
+       GtkWidget *icon_vbox;
+       GtkWidget *icon_mainbox;
+       GtkWidget *mime_toggle;
 
        MimeViewType type;
 
@@ -70,10 +75,21 @@ struct _MimeView
        gchar *file;
 
        GSList *viewers;
+
+       GtkTargetList *target_list; /* DnD */
+
+       gint icon_count;
+       MainWindow *mainwin;
+       GtkTooltips *tooltips;
+       gint oldsize;
 };
 
 struct _MimeViewerFactory
 {
+       /**
+         * Array of supported content types.
+        * Must be NULL terminated and lower case
+        */
        gchar **content_types;
        gint priority;
        
@@ -90,12 +106,13 @@ struct _MimeViewer
        void            (*destroy_viewer)       (MimeViewer *);
 };
 
-MimeView *mimeview_create      (void);
+MimeView *mimeview_create      (MainWindow     *mainwin);
 void mimeview_init             (MimeView       *mimeview);
 void mimeview_show_message     (MimeView       *mimeview,
                                 MimeInfo       *mimeinfo,
                                 const gchar    *file);
 void mimeview_destroy          (MimeView       *mimeview);
+void mimeview_update           (MimeView       *mimeview);
 
 MimeInfo *mimeview_get_selected_part   (MimeView       *mimeview);
 
@@ -108,6 +125,7 @@ void mimeview_pass_key_press_event  (MimeView       *mimeview,
 void mimeview_register_viewer_factory  (MimeViewerFactory *factory);
 void mimeview_unregister_viewer_factory        (MimeViewerFactory *factory);
 
+
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */