PageRenderTime 60ms CodeModel.GetById 33ms RepoModel.GetById 0ms app.codeStats 0ms

/ui/sbitmainwindow.cpp

https://bitbucket.org/dbezrukov/sbit
C++ | 120 lines | 94 code | 21 blank | 5 comment | 0 complexity | 7914ac6714fd735a079b577b2ca0cf59 MD5 | raw file
  1. #include "sbitmainwindow.h"
  2. #include "ui_sbitmainwindow.h"
  3. #include "tabmain.h"
  4. #include "tabchart.h"
  5. #include "tabhistory.h"
  6. #include "taborders.h"
  7. #include "api/sbitapi.h"
  8. #include <QDesktopServices>
  9. #include <QPushButton>
  10. #include <QMenu>
  11. #include <QUrl>
  12. #include <QAction>
  13. SBitMainWindow::SBitMainWindow(QWidget *parent)
  14. : QMainWindow(parent)
  15. , ui(new Ui::SBitMainWindow)
  16. {
  17. SBitApi::instance()->setParent(this);
  18. ui->setupUi(this);
  19. // clear form-generated tabs
  20. ui->tabWidgetTop->clear();
  21. ui->tabWidgetBottom->clear();
  22. // add tabs
  23. ui->tabWidgetTop->addTab(createTabMain(), trUtf8("Главная"));
  24. //ui->tabWidgetBottom->addTab(createTabChart(), trUtf8("Графики"));
  25. ui->tabWidgetBottom->addTab(createTabOrders(), trUtf8(" Активные сделки "));
  26. ui->tabWidgetBottom->addTab(createTabHistory(), trUtf8(" История сделок "));
  27. // add file button
  28. QPushButton* buttonFile = new QPushButton(trUtf8("Файл"), ui->tabWidgetTop);
  29. buttonFile->move(7, 10);
  30. buttonFile->setObjectName("buttonFile");
  31. buttonFile->setStyleSheet("#buttonFile{"
  32. "border: 1px solid #8f8f91;"
  33. "color: rgba(248, 255, 214, 255);"
  34. "border-radius: 6px;"
  35. "background-color: rgba(248, 141, 13, 255, 255);"
  36. "min-width: 80px;"
  37. "min-height: 21px;"
  38. "}"
  39. "#buttonFile:hover{"
  40. "border: 1px solid rgba(216, 107, 13, 255);"
  41. "}"
  42. "#buttonFile:pressed{"
  43. "background-color: rgba(216, 107, 13, 255)"
  44. "}");
  45. // add file menu
  46. QMenu* menu = new QMenu();
  47. QAction* actionAccountConfig = new QAction(trUtf8("Управление счётом"), menu);
  48. QAction* actionSignout = new QAction(trUtf8("Завершение сеанса"), menu);
  49. QAction* actionExit = new QAction(trUtf8("Выход"), menu);
  50. menu->addAction(actionAccountConfig);
  51. menu->addSeparator();
  52. menu->addAction(actionSignout);
  53. menu->addAction(actionExit);
  54. buttonFile->setMenu(menu);
  55. connect(actionAccountConfig, SIGNAL(triggered()), this, SLOT(actionAccountConfig()));
  56. connect(actionSignout, SIGNAL(triggered()), this, SLOT(actionSignout()));
  57. connect(actionExit, SIGNAL(triggered()), this, SLOT(actionExit()));
  58. }
  59. SBitMainWindow::~SBitMainWindow()
  60. {
  61. delete ui;
  62. }
  63. QWidget *SBitMainWindow::createTabMain()
  64. {
  65. QWidget* tabMain = new TabMain();
  66. return tabMain;
  67. }
  68. QWidget *SBitMainWindow::createTabOrders()
  69. {
  70. QWidget* tabOrders= new TabOrders();
  71. return tabOrders;
  72. }
  73. QWidget *SBitMainWindow::createTabChart()
  74. {
  75. QWidget* tabChart = new TabChart();
  76. return tabChart;
  77. }
  78. QWidget *SBitMainWindow::createTabHistory()
  79. {
  80. QWidget* tabHistory = new TabHistory();
  81. return tabHistory;
  82. }
  83. void SBitMainWindow::showWindow(QString key, QString secret)
  84. {
  85. SBitApi::instance()->setCredentials(key, secret);
  86. showMaximized();
  87. }
  88. void SBitMainWindow::actionAccountConfig()
  89. {
  90. QDesktopServices::openUrl(QUrl("http://upbit.org"));
  91. }
  92. void SBitMainWindow::actionSignout()
  93. {
  94. close();
  95. }
  96. void SBitMainWindow::actionExit()
  97. {
  98. close();
  99. }