1 
2 
3 #ifndef OPTIONS_H
4 #define OPTIONS_H
5 
6 #include <QWidget>
7 
8 class OptionsSimple;
9 class OptionsDetailed;
10 class Config;
11 class ConversionOptions;
12 
13 class KTabWidget;
14 
15 
16 /**
17  * @short The widget, where we can set our output options
18  * @author Daniel Faust <hessijames@gmail.com>
19  * @version 0.3
20  */
21 class Options : public QWidget
22 {
23     Q_OBJECT
24 public:
25     /** Constructor */
26     Options( Config *_config, const QString& text, QWidget *parent );
27 
28     /** Destructor */
29     ~Options();
30 
31     /** Return the current options */
32     ConversionOptions *currentConversionOptions();
33 
34     /** Set the current options */
35     bool setCurrentConversionOptions( const ConversionOptions* optionsptions );
36 
37 public slots:
38     /** Set the current profile */
39     void setProfile( const QString& profile );
40 
41     /** Set the current format */
42     void setFormat( const QString& format );
43 
44     /** Set the current output directory mode */
45     void setOutputDirectoryMode( int mode );
46 
47     /** Set the current output directory */
48     void setOutputDirectory( const QString& directory );
49 
50     /** Should be called if the conversion options have been accepted by the user */
51     void accepted();
52 
53 private:
54     Config *config;
55 
56     KTabWidget *tab;
57 
58     OptionsSimple *optionsSimple;
59     OptionsDetailed *optionsDetailed;
60 
61 
62 private slots:
63     void tabChanged( const int pageIndex );
64     void simpleOutputDirectoryModeChanged(const int mode);
65     void simpleOutputDirectoryChanged(const QString&);
66     void simpleOptionsChanged();
67     void detailedOutputDirectoryModeChanged(const int mode);
68 
69 };
70 
71 #endif // OPTIONS_H
72