Skip to content

Commit

Permalink
Added a utility file for the app, currently only has a display
Browse files Browse the repository at this point in the history
error function.

git-svn-id: https://subversion.cs.uiuc.edu/svn/bang/eoh2009@75 69d76c3e-0761-0410-948c-9895a8bb34fc
  • Loading branch information
nbysani2 committed Jan 28, 2009
1 parent 6db3502 commit 4b4685f
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 10 deletions.
4 changes: 3 additions & 1 deletion Makefile
Expand Up @@ -33,12 +33,14 @@ LSRC=src/base/bang-com$(SRCEXT) \
AOBJS=preferences$(OBJEXT) \
main$(OBJEXT) \
statusbar$(OBJEXT)\
server-menu$(OBJEXT)
server-menu$(OBJEXT) \
bang-machine-utils$(OBJEXT)

ASRC=src/app/preferences$(SRCEXT) \
src/app/main$(SRCEXT) \
src/app/statusbar$(SRCEXT) \
src/app/server-menu$(SRCEXT) \
src/app/bang-machine-utils$(SRCEXT)

LIBRARIES=libbang.so $(MODULES)
MODULES=test-module.so matrix-mult-module.so
Expand Down
21 changes: 21 additions & 0 deletions src/app/bang-machine-utils.c
@@ -0,0 +1,21 @@
#include"bang-machine-utils.h"
#include<gtk/gtk.h>


void BMACHINE_error_dialog(char *error) {

static GtkWidget *err_dialog = NULL;
if (err_dialog) {
gtk_message_dialog_set_markup(GTK_MESSAGE_DIALOG(err_dialog),error);
} else {
err_dialog = gtk_message_dialog_new(NULL,
GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_OK,
error);

}

gtk_dialog_run(GTK_DIALOG(err_dialog));
gtk_widget_hide(err_dialog);
}
4 changes: 4 additions & 0 deletions src/app/bang-machine-utils.h
@@ -0,0 +1,4 @@
#ifndef __BANG_MACHINE_UTILS
#define __BANG_MACHINE_UTILS
void BMACHINE_error_dialog(char *error);
#endif
23 changes: 14 additions & 9 deletions src/app/server-menu.c
@@ -1,11 +1,14 @@
#include"bang-machine-utils.h"
#include"../base/bang.h"
#include<gtk/gtk.h>
#include<stdlib.h>

/**
* Start Stop Server
*/
static GtkWidget *ssserver = NULL;


static void server_status(int signal, int num_args, void **args) {

gdk_threads_enter();
Expand All @@ -16,14 +19,15 @@ static void server_status(int signal, int num_args, void **args) {

switch (signal) {
case BANG_LISTEN_FAIL:
BMACHINE_error_dialog("The server could not listen to its port.");
break;
case BANG_BIND_FAIL:
BMACHINE_error_dialog("The server could not bind to its port.");
break;
case BANG_BIND_SUC:
break;
case BANG_GADDRINFO_FAIL:
break;
case BANG_BIND_SUC:
BMACHINE_error_dialog("The server could not fetch the address information.");
break;
case BANG_SERVER_STARTED:
break;
Expand All @@ -40,7 +44,7 @@ static void server_status(int signal, int num_args, void **args) {
free(args);
}

static void change_server_status(GtkWidget widget) {
static void change_server_status(GtkWidget *widget) {
if(BANG_is_server_running()) {
BANG_server_stop();
gtk_widget_set_sensitive(widget,FALSE);
Expand All @@ -60,12 +64,13 @@ GtkWidget* BMACHINE_setup_server_menu() {

gtk_menu_shell_append(GTK_MENU_SHELL(servermenu),ssserver);
gtk_menu_item_set_submenu(GTK_MENU_ITEM(server),servermenu);
BANG_install_sighandler(BANG_LISTEN_FAIL,&change_server_status);
BANG_install_sighandler(BANG_BIND_FAIL,&change_server_status);
BANG_install_sighandler(BANG_BIND_SUC,&change_server_status);
BANG_install_sighandler(BANG_GADDRINFO_FAIL,&change_server_status);
BANG_install_sighandler(BANG_BIND_SUC,&change_server_status);
BANG_install_sighandler(BANG_SERVER_STARTED,&change_server_status);

BANG_install_sighandler(BANG_LISTEN_FAIL,&server_status);
BANG_install_sighandler(BANG_BIND_FAIL,&server_status);
BANG_install_sighandler(BANG_BIND_SUC,&server_status);
BANG_install_sighandler(BANG_GADDRINFO_FAIL,&server_status);
BANG_install_sighandler(BANG_BIND_SUC,&server_status);
BANG_install_sighandler(BANG_SERVER_STARTED,&server_status);

return server;
}

0 comments on commit 4b4685f

Please sign in to comment.