X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=main.cpp;h=fae6d5f20927149d4996aa0a161f07db8628580e;hb=e82fd481f744e0cccdad1d3552118280735ca8e5;hp=a7ab89fbf7422ada41d7050ac57715ce33f7f05d;hpb=31e6731d976cb2b398c92763a9d3507437b8a826;p=pulseview.git diff --git a/main.cpp b/main.cpp index a7ab89f..fae6d5f 100644 --- a/main.cpp +++ b/main.cpp @@ -18,12 +18,10 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -extern "C" { #include /* First, so we avoid a _POSIX_C_SOURCE warning. */ #include #include #include -} #include @@ -34,9 +32,12 @@ extern "C" { #include "config.h" +// Global pointer to our QApplication +QApplication *g_app = NULL; + void usage() { - fprintf(stderr, + fprintf(stdout, "Usage:\n" " %s — %s\n" "\n" @@ -47,15 +48,16 @@ void usage() } /* - * SIGINT handler (likely recieved Ctrl-C from terminal) + * SIGINT handler (likely received Ctrl-C from terminal) */ -void sigint(int param) +void sigint_handler(int param) { - (void) param; - - qDebug("pv: Recieved SIGINT"); - - /* TODO: Handle SIGINT */ + (void)param; + + qDebug("Received SIGINT."); + + if (g_app) + g_app->quit(); } int main(int argc, char *argv[]) @@ -64,9 +66,11 @@ int main(int argc, char *argv[]) struct sr_context *sr_ctx = NULL; // Register a SIGINT handler - signal (SIGINT, sigint); + signal(SIGINT, sigint_handler); QApplication a(argc, argv); + // Now we have an application to populate our global pointer + g_app = &a; // Set some application metadata QApplication::setApplicationVersion(PV_VERSION_STRING); @@ -89,7 +93,7 @@ int main(int argc, char *argv[]) switch (c) { case 'V': // Print version info - fprintf(stderr, "%s %s\n", PV_TITLE, PV_VERSION_STRING); + fprintf(stdout, "%s %s\n", PV_TITLE, PV_VERSION_STRING); return 0; case 'h':