diff options
Diffstat (limited to 'src/importers/recipemlimporter.h')
| -rw-r--r-- | src/importers/recipemlimporter.h | 53 | 
1 files changed, 53 insertions, 0 deletions
diff --git a/src/importers/recipemlimporter.h b/src/importers/recipemlimporter.h new file mode 100644 index 0000000..51c6f42 --- /dev/null +++ b/src/importers/recipemlimporter.h @@ -0,0 +1,53 @@ +/*************************************************************************** +*   Copyright (C) 2003 by                                                 * +*   Richard Lärkäng                                                       * +*                                                                         * +*   Copyright (C) 2003-2005 by                                            * +*   Jason Kivlighn (jkivlighn@gmail.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.                                   * +***************************************************************************/ + + +#ifndef RECIPEMLIMPORTER_H +#define RECIPEMLIMPORTER_H + +#include "baseimporter.h" +#include "datablocks/ingredient.h" +#include "datablocks/recipe.h" + +#include <tqdom.h> + +/** Class to import the RecipeML, XML-based file format. +  * More info at http://www.formatdata.com/recipeml +  * +  * @author Jason Kivlighn +  */ +class RecipeMLImporter : public BaseImporter +{ +public: +	RecipeMLImporter(); +	virtual ~RecipeMLImporter(); + +protected: +	void parseFile( const TQString& filename ); + +private: +	void readRecipemlDirections( const TQDomElement& dirs ); +	void readRecipemlHead( const TQDomElement& head ); +	void readRecipemlIng( const TQDomElement& ing1, Ingredient *ing2 = 0, const TQString &header = TQString::null ); +	void readRecipemlIngs( const TQDomElement& ings ); +	void readRecipemlMenu( const TQDomElement& menu ); +	void readRecipemlSrcItems( const TQDomElement& sources ); +	void readRecipemlRecipe( const TQDomElement& recipe ); +	void readRecipemlPreptime( const TQDomElement &preptime ); +	void readRecipemlTQty( const TQDomElement &qty, Ingredient &ing ); +	void readRecipemlRange( const TQDomElement& range1, double &range2, double &range_offset ); + +	Recipe recipe; +}; + +#endif //RECIPEMLIMPORTER_H  | 
