You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
3.0 KiB
94 lines
3.0 KiB
15 years ago
|
/***************************************************************************
|
||
|
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
|