Canorus  0.0
import.h
Go to the documentation of this file.
1 
8 #ifndef IMPORT_H_
9 #define IMPORT_H_
10 
11 #include "core/file.h"
12 
13 class CADocument;
14 class CASheet;
15 class CAStaff;
16 class CAVoice;
17 class CALyricsContext;
19 
20 class CAImport : public CAFile {
21 #ifndef SWIG
22  Q_OBJECT
23 #endif
24 public:
25  CAImport( QTextStream *stream=0 );
26  CAImport( const QString stream );
27  virtual ~CAImport();
28 
29  void setStreamFromFile( const QString filename );
30  QString fileName();
31 
32  virtual const QString readableStatus();
33  void importDocument();
34  void importSheet();
35  void importStaff();
36  void importVoice();
37  void importLyricsContext();
39 
41  inline CASheet *importedSheet() { return _importedSheet; }
42  inline CAStaff *importedStaff() { return _importedStaff; }
43  inline CAVoice *importedVoice() { return _importedVoice; }
46 
47 #ifndef SWIG
48 signals:
50  void sheetImported( CASheet* );
51  void staffImported( CAStaff* );
52  void voiceImported( CAVoice* );
55 
56  void importDone( int status );
57 #endif
58 
59 protected:
60  virtual CADocument *importDocumentImpl() { setStatus(0); return 0; }
61  virtual CASheet *importSheetImpl() { setStatus(0); return 0; }
62  virtual CAStaff *importStaffImpl() { setStatus(0); return 0; }
63  virtual CAVoice *importVoiceImpl() { setStatus(0); return 0; }
64  virtual CALyricsContext *importLyricsContextImpl() { setStatus(0); return 0; }
66 #ifndef SWIG
67  QTextStream& in() { return *stream(); }
68 #else
69  QTextStream& _in() { return *stream(); }
70 #endif
71 
72 protected:
73  QString _fileName;
74 
75 private:
76  inline void setImportedDocument( CADocument *doc ) { _importedDocument = doc; }
77  inline void setImportedSheet( CASheet *sheet ) { _importedSheet = sheet; }
78  inline void setImportedStaff( CAStaff *staff ) { _importedStaff = staff; }
79  inline void setImportedVoice( CAVoice *voice ) { _importedVoice = voice; }
82 
89 
90  enum CAImportPart {
98  };
99 
100  void run();
101  inline void setImportPart( CAImportPart part ) { _importPart = part; }
102  inline CAImportPart importPart() { return _importPart; }
103 
105 };
106 
107 #endif /* IMPORT_H_ */
Represents a single sheet of paper in the document.
Definition: sheet.h:22
void voiceImported(CAVoice *)
CAFunctionMarkContext * importedFunctionMarkContext()
Definition: import.h:45
void setImportedFunctionMarkContext(CAFunctionMarkContext *fmc)
Definition: import.h:81
void functionMarkContextImported(CAFunctionMarkContext *)
void importSheet()
Definition: import.cpp:166
QString fileName()
Definition: import.cpp:96
virtual CALyricsContext * importLyricsContextImpl()
Definition: import.h:64
void importDocument()
Definition: import.cpp:160
virtual ~CAImport()
Definition: import.cpp:80
CAStaff * _importedStaff
Definition: import.h:85
virtual CASheet * importSheetImpl()
Definition: import.h:61
CAFunctionMarkContext * _importedFunctionMarkContext
Definition: import.h:88
QTextStream & in()
Definition: import.h:67
void setImportedStaff(CAStaff *staff)
Definition: import.h:78
QTextStream * stream()
Definition: file.h:36
void lyricsContextImported(CALyricsContext *)
virtual const QString readableStatus()
Definition: import.cpp:196
Class which represents a voice in the staff.
Definition: voice.h:23
void setImportPart(CAImportPart part)
Definition: import.h:101
QString _fileName
Definition: import.h:73
virtual CAStaff * importStaffImpl()
Definition: import.h:62
Class which represents the current document.
Definition: document.h:19
void setImportedSheet(CASheet *sheet)
Definition: import.h:77
void importVoice()
Definition: import.cpp:178
CAImport(QTextStream *stream=0)
Definition: import.cpp:53
CADocument * _importedDocument
Definition: import.h:83
Base class for import filters.
Definition: import.h:20
Definition: import.h:96
void setImportedDocument(CADocument *doc)
Definition: import.h:76
Definition: import.h:92
Definition: import.h:95
void importDone(int status)
void sheetImported(CASheet *)
Context for function marks.
Definition: functionmarkcontext.h:19
void setStatus(const int status)
Definition: file.h:33
CASheet * _importedSheet
Definition: import.h:84
Definition: import.h:94
CALyricsContext * importedLyricsContext()
Definition: import.h:44
virtual CADocument * importDocumentImpl()
Definition: import.h:60
CAImportPart importPart()
Definition: import.h:102
void setStreamFromFile(const QString filename)
Definition: import.cpp:91
Definition: import.h:97
CAVoice * importedVoice()
Definition: import.h:43
void documentImported(CADocument *)
CADocument * importedDocument()
Definition: import.h:40
One stanza line of lyrics.
Definition: lyricscontext.h:19
virtual CAFunctionMarkContext * importFunctionMarkContextImpl()
Definition: import.h:65
CALyricsContext * _importedLyricsContext
Definition: import.h:87
const int status()
Definition: file.h:21
File import/export base class.
Definition: file.h:16
Represents a staff in the sheet.
Definition: staff.h:25
CAVoice * _importedVoice
Definition: import.h:86
void setImportedVoice(CAVoice *voice)
Definition: import.h:79
void staffImported(CAStaff *)
void importFunctionMarkContext()
Definition: import.cpp:190
void setImportedLyricsContext(CALyricsContext *lc)
Definition: import.h:80
Definition: import.h:91
void importStaff()
Definition: import.cpp:172
virtual CAVoice * importVoiceImpl()
Definition: import.h:63
void importLyricsContext()
Definition: import.cpp:184
CAImportPart _importPart
Definition: import.h:104
CASheet * importedSheet()
Definition: import.h:41
CAStaff * importedStaff()
Definition: import.h:42
void run()
Definition: import.cpp:106
CAImportPart
Definition: import.h:90
Definition: import.h:93