settingsdialog.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /*****************************************************************************
  2. * settingsdialog.h - QStarDict, a StarDict clone written with using Qt *
  3. * Copyright (C) 2008 Alexander Rodin *
  4. * *
  5. * This program is free software; you can redistribute it and/or modify *
  6. * it under the terms of the GNU General Public License as published by *
  7. * the Free Software Foundation; either version 2 of the License, or *
  8. * (at your option) any later version. *
  9. * *
  10. * This program is distributed in the hope that it will be useful, *
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of *
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
  13. * GNU General Public License for more details. *
  14. * *
  15. * You should have received a copy of the GNU General Public License along *
  16. * with this program; if not, write to the Free Software Foundation, Inc., *
  17. * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. *
  18. *****************************************************************************/
  19. #ifndef SETTINGSDIALOG_H
  20. #define SETTINGSDIALOG_H
  21. #include <QDialog>
  22. #include "ui_settingsdialog.h"
  23. #include "web.h"
  24. class SettingsDialog: public QDialog, public Ui::SettingsDialog
  25. {
  26. Q_OBJECT
  27. public:
  28. SettingsDialog(Web *plugin, QWidget *parent = 0);
  29. void accept();
  30. private slots:
  31. void on_editDictButton_clicked();
  32. void on_addDictButton_clicked();
  33. void on_removeDictButton_clicked();
  34. private:
  35. void refresh();
  36. struct Dict
  37. {
  38. Dict(const QString &a = QString(),
  39. const QString &d = QString(),
  40. const QString &q = QString(),
  41. const QByteArray &c = QByteArray())
  42. : author(a),
  43. description(d),
  44. query(q),
  45. charset(c)
  46. { }
  47. QString author;
  48. QString description;
  49. QString query;
  50. QByteArray charset;
  51. };
  52. QHash<QString, Dict> m_oldDicts;
  53. QHash<QString, Dict> m_dicts;
  54. Web *m_plugin;
  55. };
  56. #endif // SETTINGSDIALOG_H
  57. // vim: tabstop=4 softtabstop=4 shiftwidth=4 expandtab cindent