diff options
Diffstat (limited to 'keduca/keducabuilder/kcontroladdedit.h')
-rw-r--r-- | keduca/keducabuilder/kcontroladdedit.h | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/keduca/keducabuilder/kcontroladdedit.h b/keduca/keducabuilder/kcontroladdedit.h new file mode 100644 index 00000000..d700ec43 --- /dev/null +++ b/keduca/keducabuilder/kcontroladdedit.h @@ -0,0 +1,93 @@ +/*************************************************************************** + kcontroladdedit.h - description + ------------------- + begin : Sun May 27 2001 + copyright : (C) 2001 by Javier Campos + email : javi@asyris.org +***************************************************************************/ + +/*************************************************************************** + * * + * 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 KCONTROLADDEDIT_H +#define KCONTROLADDEDIT_H + +#include "../libkeduca/fileread.h" +#include "kcontroladdeditbase.h" + +// Qt forward declarations +class QListViewItem; + +/**Add or edit questions + * This is the Wizard that allows adding and editing of + * Questions (and corresponding possible answers) to the + * KEduca Document. + * This will be called from the Editor (class KEducaBuilder) + *@author Javier Campos + * @author Klas Kalass (2003) + */ + +class KControlAddEdit : public KControlAddEditBase { + Q_OBJECT + +public: + KControlAddEdit(QWidget *parent = 0, const char *name = 0, bool modal = true, WFlags f = 0); + ~KControlAddEdit(); + /** Init keducaFile pointer and EditMode */ + void init(FileRead *keducaFile, bool editMode); + /** show current Page */ + void showPage(QWidget *page); + +private: + + // Private methods + + /** Init graphical interface */ +// void initGUI(); + /** Fill page of current record */ + void fillPage(); + /** Add question with form data */ + void addQuestion(); + /** Write config settings */ + void configWrite(); + /** Read config settings */ + void configRead(); + void setCurrentAnswerItem(QListViewItem *item); + void resetAnswerValues(); + + // Private attributes + /** Pointer to keduca of kcontrol page */ + FileRead *_keducaFile; + /** The currently selected answer item, important for editing of the answer*/ + QListViewItem *_currentAnswerItem; + /** Is a edit modify? */ + bool _editMode; + +private slots: + /** Accept changes */ + void accept(); + /** An Answer has been selected */ + void slotAnswerSelected(QListViewItem *item); + /** Remove answer */ + void slotRemoveAnswer(); + /** Button insert */ + void slotAddAnswer(); + /** Button Down */ + void slotMoveDownAnswer(); + /** Button Up */ + void slotMoveUpAnswer(); + /** Question or Answer data changed */ + void slotDataChanged(); + /** Preview image */ + void slotPreviewImage( const QString & ); + /** Change question type */ + void slotQuestionTypeChanged( int index ); +}; + +#endif |