You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

75 rivejä
1.4 KiB

  1. #include "ConnectorClickZoneWidget.h"
  2. #include <QPainter>
  3. #include <QColor>
  4. CConnectorClickZoneWidget::CConnectorClickZoneWidget(CConnectorDefs::eConnectorType ConType, QWidget *parent) :
  5. QWidget(parent),
  6. mConType(ConType)
  7. {
  8. mConSelected = false;
  9. mSelectionColor = Qt::red;
  10. }
  11. void CConnectorClickZoneWidget::paintEvent(QPaintEvent *event)
  12. {
  13. if(mConSelected == false)
  14. {
  15. return;
  16. }
  17. QPainter painter(this);
  18. QPen pen;
  19. pen.setStyle(Qt::SolidLine);
  20. pen.setWidth(10);
  21. pen.setBrush(mSelectionColor);
  22. painter.setPen(pen);
  23. painter.drawRect(QRect(0,0,geometry().width(),geometry().height()));
  24. }
  25. void CConnectorClickZoneWidget::mouseReleaseEvent(QMouseEvent *event)
  26. {
  27. // if(mConSelected == false)
  28. // {
  29. // mConSelected = true;
  30. // }
  31. // else if(mConSelected == true)
  32. // {
  33. // mConSelected = false;
  34. // }
  35. // repaint();
  36. emit ConnectorZoneClicked(this);
  37. }
  38. void CConnectorClickZoneWidget::resizeEvent(QResizeEvent *)
  39. {
  40. }
  41. void CConnectorClickZoneWidget::SelectConnector(bool Select, QColor color)
  42. {
  43. mConSelected = Select;
  44. mSelectionColor = color;
  45. repaint();
  46. }
  47. void CConnectorClickZoneWidget::ClearConnectorSelection()
  48. {
  49. SelectConnector(false);
  50. }
  51. CConnectorDefs::eConnectorType CConnectorClickZoneWidget::GetConnectorType()
  52. {
  53. return mConType;
  54. }
  55. bool CConnectorClickZoneWidget::IsConSelected()
  56. {
  57. return mConSelected;
  58. }