[kde-doc-english] [labplot/frameworks] /: Merge branch 'master' into frameworks
Garvit Khatri
garvitdelhi at gmail.com
Mon Jan 4 12:34:24 UTC 2016
Git commit ace936ed5e3cad7050216a50b3117e5cb343e9dd by Garvit Khatri.
Committed on 04/01/2016 at 12:33.
Pushed by garvitkhatri into branch 'frameworks'.
Merge branch 'master' into frameworks
M +23 -23 doc/index.docbook
R +1 -1 org.kde.labplot.appdata.xml
M +12 -6 src/backend/core/AspectTreeModel.cpp
M +9 -3 src/backend/matrix/Matrix.cpp
M +10 -18 src/backend/spreadsheet/SpreadsheetModel.cpp
M +8 -0 src/backend/worksheet/plots/cartesian/CartesianPlot.cpp
M +31 -24 src/commonfrontend/datapicker/DatapickerImageView.cpp
M +9 -1 src/commonfrontend/spreadsheet/SpreadsheetView.cpp
M +9 -11 src/commonfrontend/worksheet/WorksheetView.cpp
M +4 -1 src/kdefrontend/MainWin.cpp
M +5 -4 src/kdefrontend/widgets/ImageWidget.cpp
http://commits.kde.org/labplot/ace936ed5e3cad7050216a50b3117e5cb343e9dd
diff --cc src/commonfrontend/datapicker/DatapickerImageView.cpp
index d24210e,c70389f..05757bb
--- a/src/commonfrontend/datapicker/DatapickerImageView.cpp
+++ b/src/commonfrontend/datapicker/DatapickerImageView.cpp
@@@ -457,25 -461,34 +461,36 @@@ void DatapickerImageView::mouseMoveEven
if ( magnificationFactor && m_mouseMode == SelectAndEditMode && m_image->isLoaded && sceneRect().contains(pos)
&& m_image->plotPointsType() != DatapickerImage::SegmentPoints ) {
- if (!m_image->m_magnificationWindow) {
- m_image->m_magnificationWindow = new QGraphicsPixmapItem(0, scene());
+ if (!m_image->m_magnificationWindow) {
+// m_image->m_magnificationWindow = new QGraphicsPixmapItem(0, scene());
+ m_image->m_magnificationWindow = new QGraphicsPixmapItem;
+ scene()->addItem(m_image->m_magnificationWindow);
- m_image->m_magnificationWindow->setZValue(-1);
+ m_image->m_magnificationWindow->setZValue(std::numeric_limits<int>::max());
}
- int size = 200/transform().m11();
- QImage imageSection = m_image->originalPlotImage.scaled(scene()->width(), scene()->height(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
- imageSection = imageSection.copy(pos.x() - size/2, pos.y() - size/2, size, size);
- imageSection = imageSection.scaled(size*magnificationFactor, size*magnificationFactor, Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
- imageSection = imageSection.copy(imageSection.width()/2 - size/2, imageSection.height()/2 - size/2, size, size);
- QPainter painter(&imageSection);
- painter.setPen(QPen(Qt::lightGray, 2/transform().m11()));
- painter.drawRect(imageSection.rect());
+ m_image->m_magnificationWindow->setVisible(false);
+
+ //copy the part of the view to be shown magnified
+ int size = Worksheet::convertToSceneUnits(2.0, Worksheet::Centimeter)/transform().m11();
+ QRectF copyRect(pos.x() - size/2, pos.y() - size/2, size, size);
+ QPixmap px = QPixmap::grabWidget(this, mapFromScene(copyRect).boundingRect());
+ px = px.scaled(size*magnificationFactor, size*magnificationFactor, Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
+ px = px.copy(px.width()/2 - size/2, px.height()/2 - size/2, size, size);
+
+ //draw the bounding rect
+ QPainter painter(&px);
+ QPen pen = QPen(Qt::lightGray, 2/transform().m11());
+ painter.setPen(pen);
+ QRect rect = px.rect();
+ rect.setWidth(rect.width()-pen.widthF()/2);
+ rect.setHeight(rect.height()-pen.widthF()/2);
+ painter.drawRect(rect);
+
+ //set the pixmap
+ m_image->m_magnificationWindow->setPixmap(px);
+ m_image->m_magnificationWindow->setPos(pos.x()- px.width()/2, pos.y()- px.height()/2);
m_image->m_magnificationWindow->setVisible(true);
- m_image->m_magnificationWindow->setPixmap(QPixmap::fromImage(imageSection));
- m_image->m_magnificationWindow->setPos(pos.x()- imageSection.width()/2, pos.y()- imageSection.height()/2);
} else if (m_image->m_magnificationWindow) {
m_image->m_magnificationWindow->setVisible(false);
}
diff --cc src/commonfrontend/worksheet/WorksheetView.cpp
index d2c7086,24f44a0..7f9015a
--- a/src/commonfrontend/worksheet/WorksheetView.cpp
+++ b/src/commonfrontend/worksheet/WorksheetView.cpp
@@@ -59,58 -59,56 +59,56 @@@
Creates a view for the Worksheet \c worksheet and initializes the internal model.
*/
WorksheetView::WorksheetView(Worksheet* worksheet) : QGraphicsView(),
- m_worksheet(worksheet),
- m_mouseMode(SelectionMode),
- m_cartesianPlotActionMode(ApplyActionToSelection),
- m_cartesianPlotMouseMode(CartesianPlot::SelectionMode),
- m_selectionBandIsShown(false),
- m_suppressSelectionChangedEvent(false),
- lastAddedWorksheetElement(0),
- m_fadeInTimeLine(0),
- m_fadeOutTimeLine(0),
- tbNewCartesianPlot(0),
- tbZoom(0) {
-
- setScene(m_worksheet->scene());
-
- setRenderHint(QPainter::Antialiasing);
- setRubberBandSelectionMode(Qt::ContainsItemBoundingRect);
- setTransformationAnchor(QGraphicsView::AnchorUnderMouse);
- setResizeAnchor(QGraphicsView::AnchorViewCenter);
- setMinimumSize(16, 16);
- setFocusPolicy(Qt::StrongFocus);
-
- if (m_worksheet->useViewSize()) {
- setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
- setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
- }
+ m_worksheet(worksheet),
+ m_mouseMode(SelectionMode),
+ m_cartesianPlotActionMode(ApplyActionToSelection),
+ m_cartesianPlotMouseMode(CartesianPlot::SelectionMode),
+ m_selectionBandIsShown(false),
+ m_suppressSelectionChangedEvent(false),
+ lastAddedWorksheetElement(0),
+ m_fadeInTimeLine(0),
+ m_fadeOutTimeLine(0),
+ tbNewCartesianPlot(0),
+ tbZoom(0) {
+
+ setScene(m_worksheet->scene());
+
+ setRenderHint(QPainter::Antialiasing);
+ setRubberBandSelectionMode(Qt::ContainsItemBoundingRect);
+ setTransformationAnchor(QGraphicsView::AnchorUnderMouse);
+ setResizeAnchor(QGraphicsView::AnchorViewCenter);
+ setMinimumSize(16, 16);
+ setFocusPolicy(Qt::StrongFocus);
+
+ if (m_worksheet->useViewSize()) {
+ setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ }
- viewport()->setAttribute( Qt::WA_OpaquePaintEvent );
- viewport()->setAttribute( Qt::WA_NoSystemBackground );
+ viewport()->setAttribute( Qt::WA_OpaquePaintEvent );
+ viewport()->setAttribute( Qt::WA_NoSystemBackground );
// setAcceptDrops( true );
- setCacheMode(QGraphicsView::CacheBackground);
+ setCacheMode(QGraphicsView::CacheBackground);
- m_gridSettings.style = WorksheetView::NoGrid;
+ m_gridSettings.style = WorksheetView::NoGrid;
- initActions();
- initMenus();
- selectionModeAction->setChecked(true);
- handleCartesianPlotActions();
+ initActions();
+ initMenus();
+ selectionModeAction->setChecked(true);
+ handleCartesianPlotActions();
- changeZoom(zoomOriginAction);
- currentZoomAction=zoomInViewAction;
+ changeZoom(zoomOriginAction);
+ currentZoomAction=zoomInViewAction;
- //signal/slot connections
- connect(m_worksheet, SIGNAL(requestProjectContextMenu(QMenu*)), this, SLOT(createContextMenu(QMenu*)));
- connect(m_worksheet, SIGNAL(itemSelected(QGraphicsItem*)), this, SLOT(selectItem(QGraphicsItem*)) );
- connect(m_worksheet, SIGNAL(itemDeselected(QGraphicsItem*)), this, SLOT(deselectItem(QGraphicsItem*)) );
- connect(m_worksheet, SIGNAL(itemSelected(QGraphicsItem*)), this, SLOT(selectItem(QGraphicsItem*)) );
- connect(m_worksheet, SIGNAL(itemDeselected(QGraphicsItem*)), this, SLOT(deselectItem(QGraphicsItem*)) );
- connect(m_worksheet, SIGNAL(requestUpdate()), this, SLOT(updateBackground()) );
- connect(m_worksheet, SIGNAL(aspectAboutToBeRemoved(const AbstractAspect*)), this, SLOT(aspectAboutToBeRemoved(const AbstractAspect*)));
- connect(m_worksheet, SIGNAL(useViewSizeRequested()), this, SLOT(useViewSizeRequested()) );
- connect(m_worksheet, SIGNAL(layoutChanged(Worksheet::Layout)), this, SLOT(layoutChanged(Worksheet::Layout)) );
- connect(scene(), SIGNAL(selectionChanged()), this, SLOT(selectionChanged()) );
+ //signal/slot connections
+ connect(m_worksheet, SIGNAL(requestProjectContextMenu(QMenu*)), this, SLOT(createContextMenu(QMenu*)));
+ connect(m_worksheet, SIGNAL(itemSelected(QGraphicsItem*)), this, SLOT(selectItem(QGraphicsItem*)) );
+ connect(m_worksheet, SIGNAL(itemDeselected(QGraphicsItem*)), this, SLOT(deselectItem(QGraphicsItem*)) );
+ connect(m_worksheet, SIGNAL(requestUpdate()), this, SLOT(updateBackground()) );
+ connect(m_worksheet, SIGNAL(aspectAboutToBeRemoved(const AbstractAspect*)), this, SLOT(aspectAboutToBeRemoved(const AbstractAspect*)));
+ connect(m_worksheet, SIGNAL(useViewSizeRequested()), this, SLOT(useViewSizeRequested()) );
+ connect(m_worksheet, SIGNAL(layoutChanged(Worksheet::Layout)), this, SLOT(layoutChanged(Worksheet::Layout)) );
+ connect(scene(), SIGNAL(selectionChanged()), this, SLOT(selectionChanged()) );
}
void WorksheetView::initActions(){
diff --cc src/kdefrontend/MainWin.cpp
index 695cbce,68c4f84..984e625
--- a/src/kdefrontend/MainWin.cpp
+++ b/src/kdefrontend/MainWin.cpp
@@@ -153,13 -153,16 +153,16 @@@ void MainWin::initGUI(const QString& fi
setAttribute( Qt::WA_DeleteOnClose );
//make the status bar of a fixed size in order to avoid height changes when placing a ProgressBar there.
- statusBar()->setFixedHeight(statusBar()->height());
+ QFont font;
+ font.setFamily(font.defaultFamily());
+ QFontMetrics fm(font);
+ statusBar()->setFixedHeight(fm.height());
//load recently used projects
- m_recentProjectsAction->loadEntries( KGlobal::config()->group("Recent Files") );
+ m_recentProjectsAction->loadEntries( KSharedConfig::openConfig()->group("Recent Files") );
//set the view mode of the mdi area
- KConfigGroup group = KGlobal::config()->group("General");
+ KConfigGroup group = KSharedConfig::openConfig()->group("General");
int viewMode = group.readEntry("ViewMode", 0);
if (viewMode == 1) {
m_mdiArea->setViewMode(QMdiArea::TabbedView);
More information about the kde-doc-english
mailing list