#include <algorithm>
#include <QMessageBox>
+ #include <QMimeData>
#include <QInputDialog>
#include <QTimer>
#include "QTreePushButton.h"
{
setupUi(this); // this sets up the GUI
+ setAcceptDrops(true); // enable to drop into the window
+
setDicomClient();
//Qt::WindowFlags flags = windowFlags();
LoadImages(images, vvImageReader::IMAGE);
}
//------------------------------------------------------------------------------
+ void vvMainWindow::dragEnterEvent(QDragEnterEvent *event)
+ {
+ if (event->mimeData()->hasUrls()) {
+ event->acceptProposedAction();
+ }
+ }
+ //------------------------------------------------------------------------------
+ void vvMainWindow::dropEvent(QDropEvent *event)
+ {
+ const QMimeData * mimeData = event->mimeData();
+ if (!mimeData->hasUrls())
+ return;
+ std::vector<std::string> images;
+ for (auto const & url : mimeData->urls()) {
+ images.push_back(url.toLocalFile().toStdString());
+ }
+ LoadImages(images, vvImageReader::IMAGE);
+ }
+ //------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
void vvMainWindow::SaveScreenshotAllSlices()
{
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
+ QVTKOpenGLNativeWidget *widget = NOViewWidget;
+#else
QVTKWidget *widget = NOViewWidget;
+#endif
int index = 0;// GetSlicerIndexFromItem(DataTree->selectedItems()[0]);
vvSlicerManager * SM = mSlicerManagers[index];
//------------------------------------------------------------------------------
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
+void vvMainWindow::SaveScreenshot(QVTKOpenGLNativeWidget *widget)
+#else
void vvMainWindow::SaveScreenshot(QVTKWidget *widget)
+#endif
{
QString Extensions = "Images( *.png);;";
Extensions += "Images( *.jpg);;";
#include <iostream>
#include <vector>
+ #include <QDropEvent>
+#include "vtkVersion.h"
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
#include "ui_vvMainWindow.h"
+#else
+#include "ui_vvMainWindowVTK7.h"
+#endif
#include "vvMainWindowBase.h"
#include "vvToolManager.h"
#include "vvImageReader.h"
void createRecentlyOpenedFilesMenu();
void updateRecentlyOpenedFilesMenu(const std::list<std::string> &files);
+ // Drag and drop event handlers
+ virtual void dragEnterEvent(QDragEnterEvent *event);
+ virtual void dropEvent(QDropEvent *event);
+
private:
//variables
QString GetVectorIntAsString(std::vector<int> vectorInt);
int GetSlicerIndexFromItem(QTreeWidgetItem* item); //this actually returns the SlicerManager index TODO: rename it to GetSlicerManagerIndexFromItem
QTreeWidgetItem* GetItemFromSlicerManager(vvSlicerManager* sm);
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
+ void SaveScreenshot(QVTKOpenGLNativeWidget *widget);
+#else
void SaveScreenshot(QVTKWidget *widget);
+#endif
int GetImageDuplicateFilenameNumber(std::string filename);
QMenu contextMenu;