/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- * * The contents of this file are subject to the Netscape Public License * Version 1.0 (the "NPL"); you may not use this file except in * compliance with the NPL. You may obtain a copy of the NPL at * http://www.mozilla.org/NPL/ * * Software distributed under the NPL is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL * for the specific language governing rights and limitations under the * NPL. * * The Initial Developer of this code under the NPL is Netscape * Communications Corporation. Portions created by Netscape are * Copyright (C) 1998 Netscape Communications Corporation. All Rights * Reserved. */ #ifndef __xfe_pref_helpers_h #define __xfe_pref_helpers_h #include #include "net.h" struct fe_prefs_helpers_data { MWContext *context; /* Helpers page */ Widget helpers_selector, helpers_page; Widget helpers_list; /* New Helper and Plugin stuff */ Widget mime_types_desc_text; Widget mime_types_text; Widget mime_types_suffix_text; /* Editor */ Widget navigator_b; Widget plugin_b; Widget plugin_option; Widget plugin_pulldown; Widget app_b; Widget app_text; Widget app_browse; Widget save_b; Widget unknown_b; Widget editor; Widget edit_b; Widget new_b; Widget delete_b; /* Data Stuff */ int pos; NET_cdataStruct *cd; char **plugins; }; #ifdef __cplusplus #define EXTERN extern "C" #else #define EXTERN extern #endif EXTERN void fe_helpers_build_mime_list(struct fe_prefs_helpers_data *fep); EXTERN struct fe_prefs_helpers_data * fe_helpers_make_helpers_page (MWContext *context, Widget parent); EXTERN void fe_helpers_prepareForDestroy(struct fe_prefs_helpers_data *fep); /* Given a mimetype string, will return the mailcap entry (md_list) * associated with this mimetype. If the mimetype has no mailcap entry * associated with this, returns NULL. */ EXTERN NET_mdataStruct * fe_helpers_get_mailcap_from_type(char *type); /* Adds a new entry into the mailcap list (md_list) */ EXTERN void fe_helpers_add_new_mailcap_data(char *contenttype, char* src_str, char *command, char *xmode, Boolean isLocal); /* Update the xmode of a mailcap entry. Also the src_string is updated. * If the mailcap entry is NULL, this will create a new one. */ EXTERN void fe_helpers_update_mailcap_entry(char *contenttype, NET_mdataStruct *md, char *xmode); /* From plugins.c */ EXTERN XP_Bool fe_IsMailcapEntryPlugin(NET_mdataStruct *md_item); EXTERN char *fe_GetPluginNameFromMailcapEntry(NET_mdataStruct *md_item); EXTERN int fe_GetMimetypeInfoFromPlugin(char *pluginName, char *mimetype, char **r_desc, char **r_ext); #endif