blob: 18ea7a65bb219bf7fcc5cd4ca651ef564eda97d2 (
plain) (
tree)
|
|
/* -*- Mode: IDL; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
* Interfaces for the importer framework.
*
* Authors:
* Iain Holmes <iain@ximian.com>
*
* Copyright (C) 2000 Ximian, Inc.
*/
#include <Bonobo.idl>
module GNOME {
module Evolution {
interface ImporterListener : Bonobo::Unknown {
enum ImporterResult {
OK,
UNSUPPORTED_OPERATION,
NOT_READY,
BUSY,
UNKNOWN_DATA,
BAD_DATA,
BAD_FILE
};
/**
* notifyResult:
* @result: The result of the import.
* @more_items: Are there any more items to be processed?
*
* Notifies the listener of the result and whether there are
* any more items to be imported.
*/
oneway void notifyResult (in ImporterResult result,
in boolean more_items);
};
interface Importer : Bonobo::Unknown {
/**
* processItem:
* @listener: The ImporterListener that will be notified of the
* progress.
*
* Processes the next item.
*
*/
oneway void processItem (in ImporterListener listener);
/**
* getError:
*
* Retrieve a detailed explaination of the error.
*
* Returns: A string.
*/
string getError ();
/**
* supportFormat:
* @filename: The filename of the file.
*
* Checks if the importer created by this factory can
* import the file specified.
*
* Returns: A boolean, TRUE if it can import the file,
* FALSE otherwise.
*/
boolean supportFormat (in string filename);
/**
* loadFile:
* @filename: The filename of the file.
* @folderpath: The full pathname to the folder.
*
* Loads the file and prepares an Importer object that can
* process files of this type.
*
* Returns: An Importer object.
*/
boolean loadFile (in string filename,
in string folderpath);
};
interface IntelligentImporter : Bonobo::Unknown {
readonly attribute string importername;
readonly attribute string message;
boolean canImport ();
void importData ();
};
};
};
|