Salome HOME
Remove unnecessary widget
authorgdd <gdd>
Mon, 26 Apr 2010 12:00:32 +0000 (12:00 +0000)
committergdd <gdd>
Mon, 26 Apr 2010 12:00:32 +0000 (12:00 +0000)
Picture aspect ratio is preserved

src/AdvancedGUI/AdvancedGUI_PipeTShapeDlg.cxx
src/AdvancedGUI/AdvancedGUI_PipeTShapeDlg.h

index 846a34a28ac0872cd7a0b1a055b406882408c3b8..ba3daed376f63829ca80c3cccfccc5fb949efaee 100644 (file)
@@ -65,10 +65,11 @@ AdvancedGUI_PipeTShapeDlg::AdvancedGUI_PipeTShapeDlg(GeometryGUI* theGeometryGUI
        myMainLayout->setMargin(0);
        myMainLayout->setSpacing(6);
 
-       PictureView = new DlgRef_PipeTShape_ScrollArea();
-       PictureView->PipeTShape->setBackgroundRole(QPalette::Base);
-       PictureView->PipeTShape->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored);
-       PictureView->PipeTShape->setScaledContents(true);
+    tshapeScreenShotLabel = new QLabel();
+    tshapeScreenShotLabel->setSizePolicy(QSizePolicy::Expanding,
+                                         QSizePolicy::Expanding);
+    tshapeScreenShotLabel->setAlignment(Qt::AlignCenter);
+    tshapeScreenShotLabel->setMinimumSize(240, 304);
 
        MainTubeGroupParams = new DlgRef_3Spin();
        MainTubeGroupParams->GroupBox1->setTitle(tr("GEOM_PIPE_TSHAPE_MPIPE"));
@@ -147,7 +148,7 @@ AdvancedGUI_PipeTShapeDlg::AdvancedGUI_PipeTShapeDlg(GeometryGUI* theGeometryGUI
        // 2nd row, height = 4, col 3
        int rowNewPosVal = rowspanPict,                      colNewPosVal = 2, rowspanNewPosVal = 4, colspanNewPosVal = 1;
 
-       myMainLayout->addWidget(PictureView, rowPict, colPict, rowspanPict, colspanPict);
+    myMainLayout->addWidget(tshapeScreenShotLabel, rowPict, colPict, rowspanPict, colspanPict);
 
        myMainLayout->addWidget(MainTubeGroupParams, rowMain, colMain, rowspanMain, colspanMain);
        myMainLayout->addWidget(FilletGroupParams, rowFill, colFill, rowspanFill, colspanFill);
@@ -180,9 +181,6 @@ void AdvancedGUI_PipeTShapeDlg::Init() {
        SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr();
        double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100);
 
-       PictureView->PipeTShape->setPixmap(imagePipeTShape);
-       PictureView->PipeTShape->adjustSize();
-
        myPoint1 = myPoint2 = myPoint3 = GEOM::GEOM_Object::_nil();
        myOkPoint1 = myOkPoint2 = myOkPoint3 = false;
 
@@ -250,6 +248,7 @@ void AdvancedGUI_PipeTShapeDlg::Init() {
        //@@ put additional signal/slot connections here @@//
 
        initName(tr("GEOM_PIPE_TSHAPE"));
+    updateTshapeScreenshotLabel();
        DisplayPreview();
 }
 
@@ -350,8 +349,7 @@ void AdvancedGUI_PipeTShapeDlg::UpdatePicture(QWidget* old, QWidget* now) {
                else
                        imagePipeTShape = SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("DLG_PIPETSHAPE"));
 
-       PictureView->PipeTShape->setPixmap(imagePipeTShape);
-       PictureView->PipeTShape->adjustSize();
+    updateTshapeScreenshotLabel();
 }
 
 //=================================================================================
@@ -612,6 +610,28 @@ void AdvancedGUI_PipeTShapeDlg::enterEvent(QEvent*) {
                ActivateThisDialog();
 }
 
+//=================================================================================
+// function : resizeEvent [REDEFINED]
+// purpose  :
+//=================================================================================
+void AdvancedGUI_PipeTShapeDlg::resizeEvent(QResizeEvent */*event*/) {
+    QSize scaledSize = imagePipeTShape.size();
+    scaledSize.scale(tshapeScreenShotLabel->size(), Qt::KeepAspectRatio);
+    if (!tshapeScreenShotLabel->pixmap()
+      || scaledSize != tshapeScreenShotLabel->pixmap()->size())
+        updateTshapeScreenshotLabel();
+}
+
+//=================================================================================
+// function : updateTshapeScreenshotLabel
+// purpose  :
+//=================================================================================
+void AdvancedGUI_PipeTShapeDlg::updateTshapeScreenshotLabel() {
+    tshapeScreenShotLabel->setPixmap(imagePipeTShape.scaled(tshapeScreenShotLabel->size(),
+                                                      Qt::KeepAspectRatio,
+                                                      Qt::SmoothTransformation));
+}
+
 //=================================================================================
 // function : ChamferOrFillet()
 // purpose  :
@@ -628,7 +648,7 @@ void AdvancedGUI_PipeTShapeDlg::ChamferOrFillet(bool) {
                }
                else
                        imagePipeTShape = SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("DLG_PIPETSHAPE"));
-               PictureView->PipeTShape->setPixmap(imagePipeTShape);
+        updateTshapeScreenshotLabel();
         if (myOkPoint1 && myOkPoint2 && myOkPoint3)
             CheckCompatiblePosition(myPoint1, myPoint2, myPoint3, 0.01);
                DisplayPreview();
@@ -641,7 +661,7 @@ void AdvancedGUI_PipeTShapeDlg::ChamferOrFillet(bool) {
                }
                else
                        imagePipeTShape = SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("DLG_PIPETSHAPE"));
-               PictureView->PipeTShape->setPixmap(imagePipeTShape);
+        updateTshapeScreenshotLabel();
         if (myOkPoint1 && myOkPoint2 && myOkPoint3)
             CheckCompatiblePosition(myPoint1, myPoint2, myPoint3, 0.01);
                DisplayPreview();
index 5f8b93620888f7a4deb176265c980d7ac73a2bc3..e4fece9b9ac56661843aa1ab566ae2bf53a1c901 100644 (file)
@@ -27,9 +27,9 @@ class DlgRef_2Spin;
 class DlgRef_3Spin;
 class DlgRef_3Sel;
 class DlgRef_6Sel;
-class DlgRef_PipeTShape_ScrollArea;
 class QCheckBox;
 class QLineEdit;
+class QLabel;
 
 //=================================================================================
 // class    : AdvancedGUI_PipeTShapeDlg
@@ -52,13 +52,15 @@ protected:
 private:
        void Init();
        void enterEvent(QEvent*);
+    void resizeEvent(QResizeEvent *event);
+    void updateTshapeScreenshotLabel();
        bool CheckCompatiblePosition(GEOM::GEOM_Object_var theP1, 
                                  GEOM::GEOM_Object_var theP2,
                                  GEOM::GEOM_Object_var theP3, double theTolerance);
 
 private:
        QPixmap imagePipeTShape;
-       DlgRef_PipeTShape_ScrollArea* PictureView;
+    QLabel* tshapeScreenShotLabel;
        DlgRef_3Spin* MainTubeGroupParams;
        DlgRef_3Spin* IncidentTubeGroupParams;
        DlgRef_2Spin* ChamferGroupParams;
@@ -66,10 +68,6 @@ private:
        DlgRef_6Sel*  JunctionPointsSel;
     QPixmap imageImp;
     QString CssNormal, CssAcceptable, CssRefused;
-//     QLineEdit* NewPosValL1;
-//     QLineEdit* NewPosValL2;
-//     QPushButton* ApplyNewL1;
-//     QPushButton* ApplyNewL2;
        QCheckBox* HexMeshCheckBox;
        GEOM::GEOM_Object_var myPoint1, myPoint2, myPoint3;
        bool myOkPoint1, myOkPoint2, myOkPoint3;