RtclSignalAction::~RtclSignalAction() { for (size_t i=0; i<32; i++) { RerrMsg emsg; if (fActionSet[i]) ClearAction(i, emsg); } }
bool RtclSignalAction::SetAction(int signum, Tcl_Obj* pobj, RerrMsg& emsg) { if (!ValidSignal(signum, emsg)) return false; if (fActionSet[signum] && !ClearAction(signum, emsg)) return false; struct sigaction sigact; ::memset(&sigact, 0, sizeof(sigact)); sigact.sa_handler = SignalHandler; if (::sigaction(signum, &sigact, &fOldAction[signum]) != 0) { emsg.InitErrno("RtclSignalAction::SetAction", "sigaction() failed: ", errno); return false; } fpScript[signum] = pobj; fActionSet[signum] = true; return true; }
void MainWindow::createMyMenu() { menu_ClearAction = new QAction("Show a SVG(B)", this); menuBar()->addAction(menu_ClearAction); connect(menu_ClearAction, SIGNAL(triggered()), this, SLOT(OpenNewWindow())); menu_ClearAction = new QAction("Clear", this); menuBar()->addAction(menu_ClearAction); connect(menu_ClearAction, SIGNAL(triggered()), this, SLOT(ClearAction())); menu_VersionAction = new QAction("About", this); menuBar()->addAction(menu_VersionAction); connect(menu_VersionAction, SIGNAL(triggered()), this, SLOT(VersionAction())); menu_exitAction = new QAction("Exit", this); menuBar()->addAction(menu_exitAction); connect(menu_exitAction, SIGNAL(triggered()), this, SLOT(close())); }