/****************************************************************************
** Form interface generated from reading ui file 'genericmediadeviceconfigdialog.ui'
**
** Created by: The TQt user interface compiler (TQt 3.5.0)
**
** WARNING! All changes made in this file will be lost!
****************************************************************************/

#ifndef UI_GENERICMEDIADEVICECONFIGDIALOG_H
#define UI_GENERICMEDIADEVICECONFIGDIALOG_H

#include <ntqvariant.h>
#include <ntqwidget.h>
#include <tqpopupmenu.h>
#include "genericmediadevice.h"

class TQVBoxLayout;
class TQHBoxLayout;
class TQGridLayout;
class TQSpacerItem;
class TQGroupBox;
class TQLabel;
class TQListBox;
class TQListBoxItem;
class TQPushButton;
class TQComboBox;
class TQCheckBox;
class TQLineEdit;
class KActiveLabel;

class GenericMediaDeviceConfigDialog : public TQWidget
{
    TQ_OBJECT

public:
    GenericMediaDeviceConfigDialog( TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
    ~GenericMediaDeviceConfigDialog();

    TQGroupBox* groupBox1;
    TQLabel* textLabel2;
    TQListBox* m_supportedListBox;
    TQLabel* textLabel1;
    TQPushButton* m_addSupportedButton;
    TQPushButton* m_removeSupportedButton;
    TQComboBox* m_convertComboBox;
    TQGroupBox* groupBox2;
    TQCheckBox* m_ignoreTheCheck;
    TQCheckBox* m_spaceCheck;
    TQCheckBox* m_asciiCheck;
    TQCheckBox* m_vfatCheck;
    TQLabel* textLabel1_2_2;
    TQLineEdit* m_songLocationBox;
    KActiveLabel* m_formatHelp;
    TQLabel* textLabel2_2;
    TQLabel* m_previewLabel;
    TQLabel* textLabel2_2_2;
    TQLineEdit* m_podcastLocationBox;

    void setDevice( GenericMediaDevice * device );

public slots:
    virtual void addSupportedButtonClicked( int id );
    void removeSupportedButtonClicked();
    void supportedListBoxDoubleClicked( TQListBoxItem * item );
    virtual void updatePreviewLabel();
    virtual void updatePreviewLabel( const TQString & format );

protected:
    TQGridLayout* GenericMediaDeviceConfigDialogLayout;
    TQVBoxLayout* layout88;
    TQGridLayout* groupBox1Layout;
    TQHBoxLayout* layout24;
    TQVBoxLayout* layout23;
    TQVBoxLayout* layout19;
    TQSpacerItem* spacer1;
    TQGridLayout* groupBox2Layout;
    TQVBoxLayout* layout120;
    TQGridLayout* layout119;
    TQVBoxLayout* layout96;
    TQHBoxLayout* layout86;

protected slots:
    virtual void languageChange();

private:
    TQPopupMenu *m_unsupportedMenu;
    MetaBundle *m_previewBundle;
    GenericMediaDevice *m_device;

    void updateConfigDialogLists( const TQStringList & supportedFileTypes );
    TQString buildDestination( const TQString & format, const MetaBundle & mb );
    TQString cleanPath( const TQString & component );
    TQString buildFormatTip();
    void init();
    void destroy();

};

#endif // GENERICMEDIADEVICECONFIGDIALOG_H
