Source Code (Use browser search to find items of interest.)

Class Index

kscd'ConfigDlg (./kdemultimedia/kscd/configdlg.h:50)

class ConfigDlg : public QDialog {

Q_OBJECT

public:

  ConfigDlg(QWidget *parent=0, struct configstruct * data=0,const char *name=0);
  ~ConfigDlg() {}


  struct configstruct * getData();

private slots:
  void cancelbutton();
  void okbutton();
  void set_led_color();
  void set_background_color();
  void help();
  void ttclicked();
  void dockclicked();
  void autoPlayClicked();
  void stopOnExitClicked();
  void ejectOnFinishClicked();
  void device_changed(const QString&);
  void randomOnceClicked();
  void mail_changed(const QString&);
  void custombutton_clicked();
  void kfmbutton_clicked();

signals:
  void color_change();

public:
  bool colors_changed;

private:

  struct configstruct configdata;
  QGroupBox *box;

  QPushButton *ok;
  QPushButton *cancel;

  QLabel *label1;
  QFrame *qframe1;
  QPushButton *button1;

  QLabel *label2;
  QFrame *qframe2;
  QPushButton *button2;

  QLabel *label3;
  QFrame *qframe3;
  QPushButton *button3;

  QLabel *label4;
  QFrame *qframe4;
  QPushButton *button4;

  QLabel *tooltipslabel;
  QCheckBox *ttcheckbox;
  QCheckBox *dockcheckbox;
  QCheckBox *cdAutoPlayCB;
  QCheckBox *stopOnExitCB;
  QCheckBox *ejectOnFinishCB;
  QCheckBox *randomOnceCB;

  QLabel *label5;
  QLineEdit *cd_device_edit;

  QLabel *label6;
  QLineEdit *mail_edit;

  QButtonGroup *browserbox;

  QRadioButton *kfmbutton;
  QRadioButton *custombutton;

  QLineEdit *custom_edit;

};

kscd'ConfigDlg::ConfigDlg() (./kdemultimedia/kscd/configdlg.cpp:37)

ConfigDlg::ConfigDlg(QWidget *parent, struct configstruct *data,const char *name)
  : QDialog(parent, name)
{

  configdata.background_color = black;
  configdata.led_color = green;
  configdata.tooltips = true;
  configdata.cd_device ="/dev/cdrom";
  configdata.mailcmd = "mail -s \"%s\" ";
  configdata.docking = true;
  configdata.autoplay = false;
  configdata.stopexit = true;
  configdata.ejectonfinish = false;

  if(data){
    configdata.background_color = data->background_color;
    configdata.randomonce = true;
    configdata.led_color = data->led_color;
    configdata.tooltips = data->tooltips;
    configdata.cd_device = data->cd_device;
    configdata.mailcmd = data->mailcmd;
    configdata.browsercmd = data->browsercmd;
    configdata.use_kfm = data->use_kfm;
    configdata.docking = data->docking;
    configdata.autoplay = data->autoplay;
    configdata.stopexit = data->stopexit;
    configdata.ejectonfinish = data->ejectonfinish;
  }

  colors_changed = false;

  configdata.randomonce = data->randomonce;
  setCaption(i18n("Configure kscd"));

  box = new QGroupBox(this, "box");
  box->setGeometry(10,10,520,420);

  label1 = new QLabel(this);
  label1->setGeometry(20+XOFF,25+YOFF,135,25);
  label1->setText(i18n("LED Color:"));
  label1->setFixedSize( label1->sizeHint() );

  qframe1 = new QFrame(this);
  qframe1->setGeometry(155+XOFF,25+YOFF,30,25);
  qframe1->setFrameStyle(QFrame::WinPanel | QFrame::Sunken);
  qframe1->setBackgroundColor(configdata.led_color);

  button1 = new QPushButton(this);
  button1->setGeometry(255+XOFF,25+YOFF,100,25);
  button1->setText(i18n("Change"));
  connect(button1,SIGNAL(clicked()),this,SLOT(set_led_color()));

  label2 = new QLabel(this);
  label2->setGeometry(20+XOFF,55+YOFF,135,25);
  label2->setText(i18n("Background Color:"));

  qframe2 = new QFrame(this);
  qframe2->setGeometry(155+XOFF,55+YOFF,30,25);
  qframe2->setFrameStyle(QFrame::WinPanel | QFrame::Sunken);
  qframe2->setBackgroundColor(configdata.background_color);

  button2 = new QPushButton(this);
  button2->setGeometry(255+XOFF,55+YOFF,100,25);
  button2->setText(i18n("Change"));
  connect(button2,SIGNAL(clicked()),this,SLOT(set_background_color()));

  label5 = new QLabel(this);
  label5->setGeometry(20+XOFF,85+YOFF,135,25);
  label5->setText(i18n("CDROM Device:"));

  cd_device_edit = new QLineEdit(this);
  cd_device_edit->setGeometry(155+XOFF,85+YOFF,200,25);
  cd_device_edit->setText(configdata.cd_device);
  connect(cd_device_edit,SIGNAL(textChanged(const QString &)),
	  this,SLOT(device_changed(const QString &)));

#if defined(sun) || defined(__sun__) || defined(__osf__) || defined(ultrix) || defined(__ultrix)

  label5->hide();
  cd_device_edit->hide();

#endif

  label6 = new QLabel(this);
  label6->setGeometry(20+XOFF,115+YOFF,135,25);
  label6->setText(i18n("Unix mail command:"));

  mail_edit = new QLineEdit(this);
  mail_edit->setGeometry(155+XOFF,115+YOFF,200,25);
  mail_edit->setText(configdata.mailcmd);
  connect(mail_edit,SIGNAL(textChanged(const QString &)),
	  this,SLOT(mail_changed(const QString &)));

  browserbox = new  QButtonGroup(i18n("WWW-Browser"),this,"wwwbox");
//  browserbox->setGeometry(20+XOFF,145+YOFF,338,130);
  browserbox->setGeometry(20+XOFF,145+YOFF,338, 95);
  kfmbutton = new QRadioButton(i18n("Use Konqueror as Browser"),
			       browserbox,"kfmbutton");
  kfmbutton->move(10,20);
  kfmbutton->adjustSize();
  kfmbutton->setChecked(configdata.use_kfm);
  connect(kfmbutton,SIGNAL(clicked()),this,SLOT(kfmbutton_clicked()));

  custombutton = new QRadioButton(i18n("Use Custom Browser:"),
				  browserbox,"custombutton");
  custombutton->move(10,40);
  custombutton->adjustSize();
  custombutton->setChecked(!configdata.use_kfm);
  connect(custombutton,SIGNAL(clicked()),this,SLOT(custombutton_clicked()));

  custom_edit = new QLineEdit(browserbox,"customedit");
  custom_edit->setText(data->browsercmd);
  custom_edit->setEnabled(!configdata.use_kfm);
  custom_edit->setGeometry(30,60,198+70,25);

  ttcheckbox = new QCheckBox(i18n("Show Tool Tips"),
			     this, "tooltipscheckbox");
  ttcheckbox->setGeometry(30+XOFF,245+YOFF,135, 15);
  ttcheckbox->setFixedSize( ttcheckbox->sizeHint() );
  ttcheckbox->setChecked(configdata.tooltips);
  connect(ttcheckbox,SIGNAL(clicked()),this,SLOT(ttclicked()));

  dockcheckbox = new QCheckBox(i18n("Enable KPanel Docking"),
			       this, "dockcheckbox");
  dockcheckbox->setGeometry(30+XOFF,265+YOFF,200, 15);
  dockcheckbox->setFixedSize( dockcheckbox->sizeHint() );
  dockcheckbox->setChecked(configdata.docking);
  connect(dockcheckbox,SIGNAL(clicked()),this,SLOT(dockclicked()));

  cdAutoPlayCB = new QCheckBox(i18n("Play on Tray Close"),
                               this, "cdAutoPlayCB");
  cdAutoPlayCB->setGeometry(30+XOFF, 285+YOFF, 200, 15);
  cdAutoPlayCB->setFixedSize( cdAutoPlayCB->sizeHint() );
  cdAutoPlayCB->setChecked(configdata.autoplay);
  connect(cdAutoPlayCB, SIGNAL(clicked()), this, SLOT(autoPlayClicked()));

  stopOnExitCB = new QCheckBox(i18n("Stop Playing on Exit"),
                               this, "stopOnExitCB");
  stopOnExitCB->setGeometry(30+XOFF, 325+YOFF, 200, 15);
  stopOnExitCB->setFixedSize( stopOnExitCB->sizeHint() );
  stopOnExitCB->setChecked(configdata.stopexit);
  connect(stopOnExitCB, SIGNAL(clicked()), this, SLOT(stopOnExitClicked()));

  ejectOnFinishCB = new QCheckBox(i18n("Eject on Finish"),
                                  this, "ejectOnFinishCB");
  ejectOnFinishCB->setGeometry(30+XOFF, 345+YOFF, 200, 15);
  ejectOnFinishCB->setFixedSize( ejectOnFinishCB->sizeHint() );
  ejectOnFinishCB->setChecked(configdata.ejectonfinish);
  connect(ejectOnFinishCB, SIGNAL(clicked()), this, SLOT(ejectOnFinishClicked()));


  /* koz: Added a configure option to select the unique random play mode, */
  /* or the traditional random mode */
  randomOnceCB = new QCheckBox(i18n("Random is Shuffle"),
			     this, "randomOnceCB");
  randomOnceCB->setGeometry(30+XOFF,365+YOFF,200,15);
  randomOnceCB->setFixedSize(randomOnceCB->sizeHint());
  randomOnceCB->setChecked(configdata.randomonce);
  connect(randomOnceCB,SIGNAL(clicked()),this,SLOT(randomOnceClicked()));

  button3 = new QPushButton(this);
  button3->setGeometry( 420, 400, 90, 25 );
  //button3->setGeometry(255+XOFF,340+YOFF,100,25);
  button3->setText(i18n("Help"));
  connect(button3,SIGNAL(clicked()),this,SLOT(help()));
}


void 

kscd'ConfigDlg::custombutton_clicked() (./kdemultimedia/kscd/configdlg.cpp:206)

ConfigDlg::custombutton_clicked()
{
    configdata.use_kfm = false;
    custom_edit->setEnabled(!configdata.use_kfm);
} // custombutton_clicked


void 

kscd'ConfigDlg::kfmbutton_clicked() (./kdemultimedia/kscd/configdlg.cpp:214)

ConfigDlg::kfmbutton_clicked()
{
    configdata.use_kfm = true;
    custom_edit->setEnabled(!configdata.use_kfm);
} // kfmbutton_clicked


void 

kscd'ConfigDlg::okbutton() (./kdemultimedia/kscd/configdlg.cpp:222)

ConfigDlg::okbutton() 
{
} // okbutton

void 

kscd'ConfigDlg::device_changed() (./kdemultimedia/kscd/configdlg.cpp:227)

ConfigDlg::device_changed(const QString &dev) {

  configdata.cd_device = dev;
} // device_changed

void 

kscd'ConfigDlg::mail_changed() (./kdemultimedia/kscd/configdlg.cpp:233)

ConfigDlg::mail_changed(const QString &dev) {

  configdata.mailcmd = dev;
} // mail_changed

void 

kscd'ConfigDlg::ttclicked() (./kdemultimedia/kscd/configdlg.cpp:239)

ConfigDlg::ttclicked(){

  if(ttcheckbox->isChecked())
    configdata.tooltips = TRUE;
  else
    configdata.tooltips = FALSE;
} // ttclicked

void 

kscd'ConfigDlg::dockclicked() (./kdemultimedia/kscd/configdlg.cpp:248)

ConfigDlg::dockclicked(){

    if(dockcheckbox->isChecked()){
        configdata.docking = TRUE;
    }else{
        configdata.docking = FALSE;
    }
} // dockclicked

void 

kscd'ConfigDlg::autoPlayClicked() (./kdemultimedia/kscd/configdlg.cpp:258)

ConfigDlg::autoPlayClicked(){
    if(cdAutoPlayCB->isChecked())
        configdata.autoplay = TRUE;
    else
        configdata.autoplay = FALSE;
} // autoPlayClicked


void 

kscd'ConfigDlg::stopOnExitClicked() (./kdemultimedia/kscd/configdlg.cpp:267)

ConfigDlg::stopOnExitClicked()
{
    if(stopOnExitCB->isChecked())
        configdata.stopexit = TRUE;
    else
        configdata.stopexit = FALSE;
} // stopOnExitClicked

void 

kscd'ConfigDlg::ejectOnFinishClicked() (./kdemultimedia/kscd/configdlg.cpp:276)

ConfigDlg::ejectOnFinishClicked()
{
    if(ejectOnFinishCB->isChecked())
        configdata.ejectonfinish = TRUE;
    else
        configdata.ejectonfinish = FALSE;
} // ejectOnFinishClicked

void 

kscd'ConfigDlg::help() (./kdemultimedia/kscd/configdlg.cpp:285)

ConfigDlg::help()
{
    kapp->invokeHTMLHelp("kscd/kscd.html","");
} // help

void 

kscd'ConfigDlg::cancelbutton() (./kdemultimedia/kscd/configdlg.cpp:291)

ConfigDlg::cancelbutton() 
{
  reject();
} // cancelbutton

void 

kscd'ConfigDlg::set_led_color() (./kdemultimedia/kscd/configdlg.cpp:297)

ConfigDlg::set_led_color()
{
  KColorDialog::getColor(configdata.led_color);
  qframe1->setBackgroundColor(configdata.led_color);
} // set_led_color

void 

kscd'ConfigDlg::set_background_color() (./kdemultimedia/kscd/configdlg.cpp:304)

ConfigDlg::set_background_color()
{

  KColorDialog::getColor(configdata.background_color);
  qframe2->setBackgroundColor(configdata.background_color);
} // set_background_color

void 

kscd'ConfigDlg::randomOnceClicked() (./kdemultimedia/kscd/configdlg.cpp:312)

ConfigDlg::randomOnceClicked()
{
  if(randomOnceCB->isChecked())
    configdata.randomonce = TRUE;
  else
    configdata.randomonce = FALSE;
} // randomOnceClicked

struct configstruct * 
ConfigDlg::getData()
{
  configdata.browsercmd = custom_edit->text();
  return &configdata;
} // getData