File: pulsar.cpp

package info (click to toggle)
odin 2.0.5-9
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 9,224 kB
  • sloc: cpp: 62,639; sh: 4,541; makefile: 779
file content (88 lines) | stat: -rw-r--r-- 3,347 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#include "pulsar.h"

PulsarMain::PulsarMain() {
  Log<PulsarComp> odinlog("PulsarMain","PulsarMain(...)");

  view=new PulsarView(GuiMainWindow::get_widget());
  connect(view,SIGNAL(done()),this,SLOT(slotFileDone()));
  connect(view,SIGNAL(newCaption(const char*)),this,SLOT(changeCaption(const char*)));
  view->initPulsarView();
  ODINLOG(odinlog,normalDebug) << "initView() done" << STD_endl;

  initMenuBar();
  ODINLOG(odinlog,normalDebug) << "initMenuBar() done" << STD_endl;

  GuiMainWindow::show(view);
}

void PulsarMain::initMenuBar() {
  Log<PulsarComp> odinlog("PulsarMain","initMenuBar");

  fileMenu=new GuiPopupMenu(GuiMainWindow::get_widget());
  fileMenu->insert_item("&New", view, SLOT(slotFileNew()), Qt::CTRL+Qt::Key_N);
  fileMenu->insert_item("&Open...", view, SLOT(slotFileOpen()), Qt::CTRL+Qt::Key_O);
  fileMenu->insert_separator();
  fileMenu->insert_item("&Save", view, SLOT(slotFileSave()), Qt::CTRL+Qt::Key_S);
  fileMenu->insert_item("Save as...", view, SLOT(slotFileSaveAs()), 0);
  fileMenu->insert_separator();
  fileMenu->insert_item("&Quit", this, SLOT(slotFileQuit()), Qt::CTRL+Qt::Key_Q);

  exportMenu=new GuiPopupMenu(GuiMainWindow::get_widget());
  exportMenu->insert_item("Export Bruker RF-Pulse", view, SLOT(writeBrukerRf()));
  exportMenu->insert_separator();
  exportMenu->insert_item("Export ASCII RF-Amplitude", view, SLOT(exportRfampASCII()));
  exportMenu->insert_item("Export ASCII RF-Phase", view, SLOT(exportRfphaASCII()));
  exportMenu->insert_item("Export ASCII Gx", view, SLOT(exportGxASCII()));
  exportMenu->insert_item("Export ASCII Gy", view, SLOT(exportGyASCII()));
  exportMenu->insert_item("Export ASCII Gz", view, SLOT(exportGzASCII()));
  exportMenu->insert_separator();
  exportMenu->insert_item("Export ASCII Magnetization Amplitide", view, SLOT(exportMampASCII()));
  exportMenu->insert_item("Export ASCII Magnetization Phase", view, SLOT(exportMphaASCII()));
  exportMenu->insert_item("Export ASCII z-Magnetization", view, SLOT(exportMzASCII()));
  exportMenu->insert_separator();
  exportMenu->insert_item("Export JCAMP-DX Pulse", view, SLOT(exportPulseLDR()));
  exportMenu->insert_item("Export JCAMP-DX Magnetization", view, SLOT(exportMagLDR()));

  settingsMenu = new GuiPopupMenu(GuiMainWindow::get_widget());
  settingsMenu->insert_item("&System Configuration ...", view, SLOT(edit_systemInfo()),0);

  helpMenu=new GuiPopupMenu(GuiMainWindow::get_widget());
  helpMenu->insert_item("About...", this, SLOT(slotHelpAbout()), 0);


  GuiMainWindow::insert_menu("&File",     fileMenu);
  GuiMainWindow::insert_menu("Ex&port",   exportMenu);
  GuiMainWindow::insert_menu("&Settings", settingsMenu);
  GuiMainWindow::insert_menu_separator();
  GuiMainWindow::insert_menu("&Help",     helpMenu);
}

bool PulsarMain::queryExit() {
  return(message_question("Do your really want to quit?", "Quit...", GuiMainWindow::get_widget(), true));
}

void PulsarMain::slotFileDone() {
  view->slotFileSave();
  GuiApplication::quit();
}

void PulsarMain::slotFileQuit() {
  if(queryExit()) {
    GuiApplication::quit();
  }
}


void PulsarMain::slotHelpAbout() {
  message_question(IDS_PULSAR_ABOUT, "About...", GuiMainWindow::get_widget());
}


void PulsarMain::changeCaption(const char* text) {
  GuiMainWindow::set_caption((STD_string("Pulsar " VERSION) + " - " + text).c_str());
}