From 0cd1c1934c5a366a8d506c177c859d65075fb942 Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Thu, 18 May 2000 01:00:25 +0000 Subject: remove get/set_output_stream operations. They're redundant with * camel-data-wrapper.c: remove get/set_output_stream operations. They're redundant with write_to_stream, and CamelMimePart and CamelMimeMessage only implement the latter, meaning that trying to get_output_stream on a CamelMimeMessage that was built from pieces rather than being parsed from a stream doesn't work. Anything that uses get_output_stream can be rewritten to use write_to_stream, so we'll standardize on that. (camel_data_wrapper_new): remove this: CamelDataWrapper is supposed to be an abstract class. (write_to_stream): remove default implementation. (Moved to CamelSimpleDataWrapper) * camel-simple-data-wrapper.c: resurrect, although it's not really the same thing it was before. A simple data wrapper, which is backed by a CamelStream. * camel-mime-part-utils.c (simple_data_wrapper_construct_from_parser): Use construct_from_stream rather than set_output_stream. (camel_mime_part_construct_content_from_parser): Change camel_data_wrapper_new to camel_simple_data_wrapper_new. * camel-mime-part.c (camel_mime_part_set_content): Change camel_data_wrapper_new to camel_simple_data_wrapper_new. svn path=/trunk/; revision=3112 --- camel/camel-simple-data-wrapper.h | 71 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 camel/camel-simple-data-wrapper.h (limited to 'camel/camel-simple-data-wrapper.h') diff --git a/camel/camel-simple-data-wrapper.h b/camel/camel-simple-data-wrapper.h new file mode 100644 index 0000000000..5346cd969d --- /dev/null +++ b/camel/camel-simple-data-wrapper.h @@ -0,0 +1,71 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* camel-simple-data-wrapper.h: a simple stream-backed data wrapper */ + +/* + * Author: + * Dan Winship + * + * Copyright 2000 Helix Code, Inc. (http://www.helixcode.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifndef CAMEL_SIMPLE_DATA_WRAPPER_H +#define CAMEL_SIMPLE_DATA_WRAPPER_H 1 + + +#ifdef __cplusplus +extern "C" { +#pragma } +#endif /* __cplusplus }*/ + +#include + +#define CAMEL_SIMPLE_DATA_WRAPPER_TYPE (camel_data_wrapper_get_type ()) +#define CAMEL_SIMPLE_DATA_WRAPPER(obj) (GTK_CHECK_CAST((obj), CAMEL_SIMPLE_DATA_WRAPPER_TYPE, CamelSimpleDataWrapper)) +#define CAMEL_SIMPLE_DATA_WRAPPER_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), CAMEL_SIMPLE_DATA_WRAPPER_TYPE, CamelSimpleDataWrapperClass)) +#define CAMEL_IS_SIMPLE_DATA_WRAPPER(o) (GTK_CHECK_TYPE((o), CAMEL_SIMPLE_DATA_WRAPPER_TYPE)) + + +struct _CamelSimpleDataWrapper +{ + CamelDataWrapper parent_object; + + CamelStream *content; +}; + + +typedef struct { + CamelDataWrapperClass parent_class; + +} CamelSimpleDataWrapperClass; + + + +/* Standard Gtk function */ +GtkType camel_simple_data_wrapper_get_type (void); + + +/* convenience functions */ +CamelDataWrapper *camel_simple_data_wrapper_new (void); + + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* CAMEL_SIMPLE_DATA_WRAPPER_H */ -- cgit v1.2.3