Esempio n. 1
0
NEURON::NEURON(QWidget *parent, Qt::WFlags flags)
	: QMainWindow(parent, flags)
{
	//setup ui
	ui.setupUi(this);
	ui.textEdit->setReadOnly(true);
	qout = new QDebugStream(std::cout,ui.textEdit);

	//create model
	cellModel = new CellModel();
	ui.viewer->load_cellModel(cellModel);

	//ui
        connect(ui.actionQuit,SIGNAL(triggered()),this,SLOT(quit()));
        //connect(ui.pushButton_snapshot,SIGNAL(clicked()),ui.viewer,SLOT(saveSnapshot()));
        connect(ui.actionSave_Status,SIGNAL(triggered()),ui.viewer,SLOT(saveStateToFile()));
        connect(ui.actionLoad_status,SIGNAL(triggered()),ui.viewer,SLOT(load_status()));

        //setup the connections
        connect(ui.actionLoad,SIGNAL(triggered()),this,SLOT(open())); //file load
        connect(ui.checkBox_AABB,SIGNAL(stateChanged(int)),ui.viewer,SLOT(aabbBoxState(int))); //aabb 
        connect(ui.checkBox_P, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_P(int))); // show P
        connect(ui.checkBox_N, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_N(int))); // show N
        connect(ui.checkBox_G, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_G(int))); // show G
        connect(ui.checkBox_B, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_B(int))); // show B
        connect(ui.checkBox_A, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_A(int))); // show A
        connect(ui.checkBox_S, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_S(int))); // show S
        connect(ui.checkBox_T, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_T(int))); // show T
        connect(ui.checkBox_I, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_I(int))); // show I
        connect(ui.checkBox_C, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_C(int))); // show C
        connect(ui.checkBox_M, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_M(int))); // show M
        connect(ui.checkBox_R, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_R(int))); // show R
        connect(ui.checkBox_D, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_D(int))); // show D
        connect(ui.checkBox_DEN, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_den(int))); //dendrites
        connect(ui.checkBox_AXON, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_axon(int))); //axons
        connect(ui.checkBox_axis, SIGNAL(clicked(bool)),ui.viewer,SLOT(show_axis(int))); //axis
        connect(ui.checkBox_VIA, SIGNAL(clicked(bool)),ui.viewer,SLOT(show_syn_via(bool))); //via point
        connect(ui.checkBox_IN, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_syn_in(int))); //synapse IN
        connect(ui.checkBox_OUT, SIGNAL(stateChanged(int)),ui.viewer,SLOT(show_syn_out(int))); //synapse OUT
        connect(ui.checkBox_ShowLetters,SIGNAL(clicked(bool)),ui.viewer,SLOT(setTextIsEnabled(bool))); //text
        connect(ui.checkBox_ortho,SIGNAL(clicked(bool)),ui.viewer,SLOT(show_ortho(bool))); //orthogonal viewerx
        connect(ui.groupBox_3, SIGNAL(toggled(bool)),ui.viewer,SLOT(enable_clip_plane(bool))); //enable clipping planes
        connect(ui.verticalSlider_x, SIGNAL(sliderMoved(int)), ui.viewer, SLOT(set_clip_x(int))); // clip X
        connect(ui.verticalSlider_y, SIGNAL(sliderMoved(int)), ui.viewer, SLOT(set_clip_y(int))); // clip X
        connect(ui.verticalSlider_z, SIGNAL(sliderMoved(int)), ui.viewer, SLOT(set_clip_z(int))); // clip X
        connect(ui.spinBox,SIGNAL(valueChanged(int)),ui.viewer,SLOT(set_clip_x(int))); //clip
        connect(ui.spinBox_2,SIGNAL(valueChanged(int)),ui.viewer,SLOT(set_clip_y(int)));
        connect(ui.spinBox_3,SIGNAL(valueChanged(int)),ui.viewer,SLOT(set_clip_z(int)));
        connect(ui.spinBox_4,SIGNAL(valueChanged(int)),ui.viewer,SLOT(set_rot_x(int))); //rotate scale
        connect(ui.spinBox_5,SIGNAL(valueChanged(int)),ui.viewer,SLOT(set_rot_y(int)));
        connect(ui.spinBox_6,SIGNAL(valueChanged(int)),ui.viewer,SLOT(set_rot_z(int)));
        connect(ui.pushButton_rot_x,SIGNAL(clicked()),ui.viewer,SLOT(rotate_according_x())); //rotate action
        connect(ui.pushButton_rot_y,SIGNAL(clicked()),ui.viewer,SLOT(rotate_according_y()));
        connect(ui.pushButton_rot_z,SIGNAL(clicked()),ui.viewer,SLOT(rotate_according_z()));
        connect(ui.checkBox_select,SIGNAL(clicked(bool)),ui.viewer, SLOT(show_selected(bool))); //selection option 
}
int QGLViewer::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QGLWidget::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: viewerInitialized(); break;
        case 1: drawNeeded(); break;
        case 2: drawFinished((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 3: animateNeeded(); break;
        case 4: helpRequired(); break;
        case 5: axisIsDrawnChanged((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 6: gridIsDrawnChanged((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 7: FPSIsDisplayedChanged((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 8: textIsEnabledChanged((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 9: cameraIsEditedChanged((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 10: stereoChanged((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 11: pointSelected((*reinterpret_cast< const QMouseEvent*(*)>(_a[1]))); break;
        case 12: mouseGrabberChanged((*reinterpret_cast< qglviewer::MouseGrabber*(*)>(_a[1]))); break;
        case 13: setAxisIsDrawn((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 14: setAxisIsDrawn(); break;
        case 15: setGridIsDrawn((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 16: setGridIsDrawn(); break;
        case 17: setFPSIsDisplayed((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 18: setFPSIsDisplayed(); break;
        case 19: setTextIsEnabled((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 20: setTextIsEnabled(); break;
        case 21: setCameraIsEdited((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 22: setCameraIsEdited(); break;
        case 23: toggleAxisIsDrawn(); break;
        case 24: toggleGridIsDrawn(); break;
        case 25: toggleFPSIsDisplayed(); break;
        case 26: toggleTextIsEnabled(); break;
        case 27: toggleCameraIsEdited(); break;
        case 28: setBackgroundColor((*reinterpret_cast< const QColor(*)>(_a[1]))); break;
        case 29: setForegroundColor((*reinterpret_cast< const QColor(*)>(_a[1]))); break;
        case 30: setSceneRadius((*reinterpret_cast< float(*)>(_a[1]))); break;
        case 31: setSceneCenter((*reinterpret_cast< const qglviewer::Vec(*)>(_a[1]))); break;
        case 32: setSceneBoundingBox((*reinterpret_cast< const qglviewer::Vec(*)>(_a[1])),(*reinterpret_cast< const qglviewer::Vec(*)>(_a[2]))); break;
        case 33: showEntireScene(); break;
        case 34: setCamera((*reinterpret_cast< qglviewer::Camera*const(*)>(_a[1]))); break;
        case 35: setManipulatedFrame((*reinterpret_cast< qglviewer::ManipulatedFrame*(*)>(_a[1]))); break;
        case 36: setMouseGrabber((*reinterpret_cast< qglviewer::MouseGrabber*(*)>(_a[1]))); break;
        case 37: setFullScreen((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 38: setFullScreen(); break;
        case 39: setStereoDisplay((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 40: setStereoDisplay(); break;
        case 41: toggleFullScreen(); break;
        case 42: toggleStereoDisplay(); break;
        case 43: toggleCameraMode(); break;
        case 44: saveSnapshot((*reinterpret_cast< bool(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
        case 45: saveSnapshot((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 46: saveSnapshot(); break;
        case 47: saveSnapshot((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
        case 48: saveSnapshot((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 49: setSnapshotFileName((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 50: setSnapshotFormat((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 51: setSnapshotCounter((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 52: setSnapshotQuality((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 53: { bool _r = openSnapshotFormatDialog();
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = _r; }  break;
        case 54: snapshotToClipboard(); break;
        case 55: copyBufferToTexture((*reinterpret_cast< GLint(*)>(_a[1])),(*reinterpret_cast< GLenum(*)>(_a[2]))); break;
        case 56: copyBufferToTexture((*reinterpret_cast< GLint(*)>(_a[1]))); break;
        case 57: setAnimationPeriod((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 58: startAnimation(); break;
        case 59: stopAnimation(); break;
        case 60: animate(); break;
        case 61: toggleAnimation(); break;
        case 62: help(); break;
        case 63: aboutQGLViewer(); break;
        case 64: select((*reinterpret_cast< const QMouseEvent*(*)>(_a[1]))); break;
        case 65: select((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 66: setSelectBufferSize((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 67: setSelectRegionWidth((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 68: setSelectRegionHeight((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 69: setSelectedName((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 70: setShortcut((*reinterpret_cast< KeyboardAction(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        case 71: setKeyboardAccelerator((*reinterpret_cast< KeyboardAction(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        case 72: setKeyDescription((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 73: setKeyFrameKey((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        case 74: setPlayKeyFramePathStateKey((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 75: setPlayPathStateKey((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 76: setAddKeyFrameStateKey((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 77: setPathKey((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        case 78: setPathKey((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 79: setPlayPathKeyboardModifiers((*reinterpret_cast< QtKeyboardModifiers(*)>(_a[1]))); break;
        case 80: setAddKeyFrameKeyboardModifiers((*reinterpret_cast< QtKeyboardModifiers(*)>(_a[1]))); break;
        case 81: setMouseBinding((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< MouseHandler(*)>(_a[2])),(*reinterpret_cast< MouseAction(*)>(_a[3])),(*reinterpret_cast< bool(*)>(_a[4]))); break;
        case 82: setMouseBinding((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< MouseHandler(*)>(_a[2])),(*reinterpret_cast< MouseAction(*)>(_a[3]))); break;
        case 83: setWheelBinding((*reinterpret_cast< QtKeyboardModifiers(*)>(_a[1])),(*reinterpret_cast< MouseHandler(*)>(_a[2])),(*reinterpret_cast< MouseAction(*)>(_a[3])),(*reinterpret_cast< bool(*)>(_a[4]))); break;
        case 84: setWheelBinding((*reinterpret_cast< QtKeyboardModifiers(*)>(_a[1])),(*reinterpret_cast< MouseHandler(*)>(_a[2])),(*reinterpret_cast< MouseAction(*)>(_a[3]))); break;
        case 85: setHandlerKeyboardModifiers((*reinterpret_cast< MouseHandler(*)>(_a[1])),(*reinterpret_cast< QtKeyboardModifiers(*)>(_a[2]))); break;
        case 86: setHandlerStateKey((*reinterpret_cast< MouseHandler(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        case 87: setMouseStateKey((*reinterpret_cast< MouseHandler(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        case 88: initFromDOMElement((*reinterpret_cast< const QDomElement(*)>(_a[1]))); break;
        case 89: saveStateToFile(); break;
        case 90: { bool _r = restoreStateFromFile();
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = _r; }  break;
        case 91: setStateFileName((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 92: saveToFile((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 93: saveToFile(); break;
        case 94: { bool _r = restoreFromFile((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = _r; }  break;
        case 95: { bool _r = restoreFromFile();
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = _r; }  break;
        case 96: resetVisualHints(); break;
        case 97: delayedFullScreen(); break;
        case 98: hideMessage(); break;
        default: ;
        }
        _id -= 99;
    }
    return _id;
}