blob: 51c6f427ce5cbc7ea10cea3e6585c82c959c8835 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
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
|