1 2 #ifndef LAMECODECWIDGET_H 3 #define LAMECODECWIDGET_H 4 5 #include "../../core/codecwidget.h" 6 7 #include <QGroupBox> 8 9 class KComboBox; 10 class QSpinBox; 11 class QCheckBox; 12 class QLabel; 13 class QSlider; 14 class KLineEdit; 15 16 class LameCodecWidget : public CodecWidget 17 { 18 Q_OBJECT 19 public: 20 LameCodecWidget(); 21 ~LameCodecWidget(); 22 23 ConversionOptions *currentConversionOptions(); 24 bool setCurrentConversionOptions( const ConversionOptions *_options ); 25 void setCurrentFormat( const QString& format ); 26 QString currentProfile(); 27 bool setCurrentProfile( const QString& profile ); 28 int currentDataRate(); 29 30 private: 31 // preset selection 32 KComboBox *cPreset; 33 QSpinBox *iPresetBitrate; 34 QCheckBox *cPresetBitrateCbr; 35 QCheckBox *cPresetFast; 36 // user defined options 37 QGroupBox *userdefinedBox; 38 KComboBox *cMode; 39 QSpinBox *iQuality; 40 QSlider *sQuality; 41 KComboBox *cBitrateMode; 42 QSlider *sCompressionLevel; 43 QSpinBox *iCompressionLevel; 44 QCheckBox *cCmdArguments; 45 KLineEdit *lCmdArguments; 46 47 QString currentFormat; // holds the current output file format 48 49 int bitrateForQuality( int quality ); 50 int qualityForBitrate( int bitrate ); 51 52 private slots: 53 // presets 54 void presetChanged( const QString& preset ); 55 void presetBitrateChanged( int bitrate ); 56 // user defined options 57 void modeChanged( int mode ); 58 void qualitySliderChanged( int quality ); 59 void qualitySpinBoxChanged( int quality ); 60 void compressionLevelSliderChanged( int quality ); 61 void compressionLevelSpinBoxChanged( int quality ); 62 }; 63 64 #endif // LAMECODECWIDGET_H