mainwindow.cpp 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #include "mainwindow.h"
  2. #include <QPainter>
  3. #include <QPainter>
  4. #include <QPropertyAnimation>
  5. #include <QDebug>
  6. #include "BusinessLogic/carback.h"
  7. #include <QResource>
  8. #include <unistd.h>
  9. #include <linux/reboot.h>
  10. #include <sys/reboot.h>
  11. MainWindow::MainWindow(QWidget *parent) :
  12. QMainWindow(parent)
  13. {
  14. #ifdef __ARM__
  15. QResource::registerResource("/usr/share/images.rcc");
  16. this->setWindowFlag(Qt::FramelessWindowHint);
  17. #endif
  18. QPalette pal = palette();
  19. pal.setColor(QPalette::Background, QColor(0x00,0x00,0x00,0x00));
  20. setPalette(pal);
  21. pixBackground = QPixmap(":/images/HomeBackground.png");
  22. m_Background = new QLabel(this);
  23. m_Background->setPixmap(pixBackground);
  24. m_Background->setGeometry(0, 0, 1920, 720);
  25. m_Background->setVisible(true);
  26. logoPainter = new LogoPainter(this);
  27. logoPainter->setGeometry(0,18,652,684);
  28. logoPainter->show();
  29. speedPainter = new SpeedPainter(this);
  30. speedPainter->setGeometry(1268, 18, 652,686);
  31. speedPainter->show();
  32. m_CornerLampWidget = new CornerLampWidget(this);
  33. //m_CornerLampWidget->setGeometry(764, 154, 372, 52);
  34. m_CornerLampWidget->setGeometry(764, 154, 390, 52);
  35. m_CornerLampWidget->show();
  36. g_Carback->initialize();
  37. m_LinkWidget = new LinkWidget(this);
  38. m_LinkWidget->setGeometry(654, 214, 616, 436);
  39. m_LinkWidget->show();
  40. }
  41. MainWindow::~MainWindow()
  42. {
  43. delete logoPainter;
  44. delete speedPainter;
  45. delete m_Background;
  46. delete m_LinkWidget;
  47. }
  48. void MainWindow::resizeEvent(QResizeEvent *event)
  49. {
  50. resize(1920,720);
  51. }
  52. void MainWindow::paintEvent(QPaintEvent *event)
  53. {
  54. qDebug() << "MainWindow::paintEvent";
  55. }
  56. void MainWindow::mouseReleaseEvent(QMouseEvent *event){
  57. if((event->x() >= 960 && event->x() <= 1010) &&
  58. (event->y() >= 660 && event->y() <= 710))
  59. {
  60. qDebug()<<"++++++++mouseReleaseEvent+++++++++";
  61. system("echo b > /data/processType");
  62. system("sync");
  63. reboot(LINUX_REBOOT_CMD_RESTART);
  64. }
  65. }