Exemplo n.º 1
0
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    instance = this;
    ui->setupUi(this);

    map = 0;

    //
    QFont statusFont = font();
    statusFont.setBold(true);
    QFontMetrics statusFontMetrics(statusFont);

    statusStatus = new QLabel(this);
    statusStatus->setContentsMargins(4, 2, 4, 2);
    statusStatus->setFont(statusFont);
    statusScale = new QLabel(this);
    statusScale->setContentsMargins(4, 2, 4, 2);
    statusScale->setAlignment(Qt::AlignCenter);
    statusScale->setFont(statusFont);
    statusScale->setFixedWidth(statusFontMetrics.width("9000%")+32);
    statusMouseXY = new QLabel(this);
    statusMouseXY->setContentsMargins(4, 2, 4, 2);
    statusMouseXY->setAlignment(Qt::AlignCenter);
    statusMouseXY->setFont(statusFont);
    statusMouseXY->setFixedWidth(statusFontMetrics.width("99999 , 99999")+64);
    statusBar()->addWidget(statusStatus, 1);
    statusBar()->addWidget(statusScale);
    statusBar()->addWidget(statusMouseXY);
    statusStatus->setText("Started.");
    resetScale();
    resetMouseXY();
}
Exemplo n.º 2
0
  /**
   * Set up the menus for the ScatterPlotWindow.
   * Called from the constructor.
   */
  void ScatterPlotWindow::setupMenus(){
    p_menubar = p_scatterPlotWindow->menuBar();
    p_toolBar = new QToolBar(p_scatterPlotWindow);

    p_scatterPlotWindow->addToolBar(Qt::TopToolBarArea,p_toolBar);

    QAction *fitLine = new QAction(p_plot);
    fitLine->setText("Line Fit");
    fitLine->setIcon(QPixmap("/usgs/cpkgs/isis3/data/base/icons/linefit.png"));
    QObject::connect(fitLine, SIGNAL(activated()), this, SLOT(showContour()));

    p_colorize = new QAction(p_plot);
    p_colorize->setText("Colorize");
    p_colorize->setIcon(QPixmap("/usgs/cpkgs/isis3/data/base/icons/rgb.png"));
    QString text  =
      "Colorize";
    p_colorize->setWhatsThis(text);
    QObject::connect(p_colorize,SIGNAL(activated()),this,SLOT(colorPlot()));

    QAction *save = new QAction(p_plot);
    save->setText("&Save Plot As");
    save->setIcon(QPixmap("/usgs/cpkgs/isis3/data/base/icons/filesaveas.png"));
    text  =
      "<b>Function:</b>  Save the plot as a png, jpg, or tif file.";
    save->setWhatsThis(text);
    QObject::connect(save,SIGNAL(activated()),this,SLOT(savePlot()));

    QAction *prt = new QAction(p_plot);
    prt->setText("&Print Plot");
    prt->setIcon(QPixmap("/usgs/cpkgs/isis3/data/base/icons/fileprint.png"));
    text  =
      "<b>Function:</b>  Sends the plot image to the printer";
    prt->setWhatsThis(text);
    QObject::connect(prt,SIGNAL(activated()),this,SLOT(printPlot()));

    QAction *track = new QAction(p_plot);
    track->setText("Show Mouse &Tracking");
    track->setIcon(QPixmap("/usgs/cpkgs/isis3/data/base/icons/goto.png"));
    track->setCheckable(true);
    text  =
      "<b>Function:</b>  Displays the x,y coordinates as the cursor moves \
      around on the plot.";
    track->setWhatsThis(text);
    QObject::connect(track,SIGNAL(activated()),this,SLOT(trackerEnabled()));

    QAction *changeLabels = new QAction(p_plot);
    changeLabels->setText("Rename Plot &Labels");
    changeLabels->setIcon(QPixmap("/usgs/cpkgs/isis3/data/base/icons/plot_renameLabels.png"));
    text  =
      "<b>Function:</b>  Edit the plot title, x and y axis labels.";
    changeLabels->setWhatsThis(text);
    QObject::connect(changeLabels,SIGNAL(activated()),this,SLOT(reLabel()));

    QAction *changeScale = new QAction(p_plot);
    changeScale->setText("Set &Display Range");
    changeScale->setIcon(QPixmap("/usgs/cpkgs/isis3/data/base/icons/plot_setScale.png"));
    text  =
      "<b>Function:</b>  Adjust the scale for the x and y axis on the plot.";
    changeScale->setWhatsThis(text);
    QObject::connect(changeScale,SIGNAL(activated()),this, SLOT(setDisplayRange()));

    QAction *resetScaleButton = new QAction(p_plot);
    resetScaleButton->setText("Reset Scale");
    resetScaleButton->setIcon(QPixmap("/usgs/cpkgs/isis3/data/base/icons/plot_resetscale.png"));
    text  =
      "<b>Function:</b>  Reset the plot's scale.";
    resetScaleButton->setWhatsThis(text);
    QObject::connect(resetScaleButton, SIGNAL(activated()),this, SLOT(resetScale()));

    QAction *close = new QAction(p_plot);
    close->setText("Close");
    QObject::connect(close,SIGNAL(activated()),p_scatterPlotWindow, SLOT(close()));

    /*setup menus*/
    QMenu *options = new QMenu("&Options");
    options->addAction(track);
    options->addAction(changeLabels);
    options->addAction(changeScale);

    QMenu *file = new QMenu("&File");
    file->addAction(save);
    file->addAction(prt);
    file->addAction(close);

     p_menubar->addMenu(file);
     p_menubar->addMenu(options);
     
     p_toolBar->addAction(track);
     p_toolBar->addAction(changeLabels);
     p_toolBar->addAction(changeScale);
     p_toolBar->addAction(p_colorize);
     p_toolBar->addAction(fitLine);
  }