コード例 #1
0
EK_EVENTHANDLER(eventhandler, ev, data)
{
  switch(ev) {
  case EK_EVENT_INIT:
  case EK_EVENT_REPLACE:
    ctk_window_new(&window, DUMP_WIDTH, DUMP_HEIGHT, "TFE dump");
    CTK_WIDGET_ADD(&window, &dumplabel);
    ctk_window_open(&window);
    uip_setethaddr(addr);
    lan91c96_init();
    break;
  case EK_EVENT_REQUEST_REPLACE:
    ctk_window_close(&window);
    ek_replace((struct ek_proc *)data, NULL);
    LOADER_UNLOAD();
    break;
  case EK_EVENT_REQUEST_EXIT:
    ctk_window_close(&window);
    ek_exit();
    LOADER_UNLOAD();
    break;
  default:
    break;
  }
}
コード例 #2
0
ファイル: www.c プロジェクト: 21moons/contiki
/*-----------------------------------------------------------------------------------*/
static void
quit(void)
{
    ctk_window_close(&mainwindow);
    process_exit(&www_process);
    LOADER_UNLOAD();
}
コード例 #3
0
ファイル: webserver.c プロジェクト: 13416795/contiki
/*-----------------------------------------------------------------------------------*/
PROCESS_THREAD(webserver_process, ev, data)
{
  PROCESS_BEGIN();
  
  ctk_window_new(&mainwindow, LOG_WIDTH, LOG_HEIGHT+1, "Web server");
  
  CTK_WIDGET_ADD(&mainwindow, &message);
  CTK_WIDGET_ADD(&mainwindow, &loglabel);
  
  httpd_init();
  
  ctk_window_open(&mainwindow);

  while(1) {
    PROCESS_WAIT_EVENT();

    if(ev == ctk_signal_window_close ||
       ev == PROCESS_EVENT_EXIT) {
      ctk_window_close(&mainwindow);
      process_exit(&webserver_process);
      LOADER_UNLOAD();    
    } else if(ev == tcpip_event) {
      httpd_appcall(data);
    }
  }

  PROCESS_END();
}
コード例 #4
0
ファイル: configedit.c プロジェクト: pulkomandy/contiki-1.x
/*-----------------------------------------------------------------------------------*/
static void
configedit_quit(void)
{
  ek_exit();
  id = EK_ID_NONE;
  LOADER_UNLOAD();
}
コード例 #5
0
ファイル: about.c プロジェクト: EDAyele/ptunes
/*-----------------------------------------------------------------------------------*/
static void
about_quit(void)
{
    ctk_dialog_close();
    process_exit(&about_process);
    LOADER_UNLOAD();
}
コード例 #6
0
ファイル: config.c プロジェクト: ZhepingYang/contiki-1.x
/*-----------------------------------------------------------------------------------*/
LOADER_INIT_FUNC(config_init, arg)
{
  arg_free(arg);
  config_load();
  config_apply();
  LOADER_UNLOAD();
}
コード例 #7
0
ファイル: dhcp-client.c プロジェクト: AWRyder/contiki
/*-----------------------------------------------------------------------------------*/
static void
app_quit(void)
{
  ctk_window_close(&window);
  process_exit(&dhcp_process);
  LOADER_UNLOAD();
}
コード例 #8
0
ファイル: ssfire.c プロジェクト: ZhepingYang/contiki-1.x
/*-----------------------------------------------------------------------------------*/
static void
fire_quit(void)
{
  ek_exit();
  id = EK_ID_NONE;
  LOADER_UNLOAD();
}
コード例 #9
0
ファイル: about.c プロジェクト: ZhepingYang/contiki-1.x
/*-----------------------------------------------------------------------------------*/
static void
about_quit(void)
{
  ctk_dialog_close();
  ek_exit();
  id = EK_ID_NONE;
  LOADER_UNLOAD();
}
コード例 #10
0
ファイル: weblinks.c プロジェクト: ZhepingYang/contiki-1.x
/*-----------------------------------------------------------------------------------*/
static void
quit(void)
{
  ctk_window_close(&window);
  ek_exit();
  id = EK_ID_NONE;
  LOADER_UNLOAD();
}
コード例 #11
0
ファイル: ftp.c プロジェクト: 1uk3/contiki
/*---------------------------------------------------------------------------*/
static void
quit(void)
{
  close_file();
  ctk_window_close(&window);
  process_exit(&ftp_process);
  LOADER_UNLOAD();
}
コード例 #12
0
ファイル: plasma.c プロジェクト: ZhepingYang/contiki-1.x
/*-----------------------------------------------------------------------------------*/
static void
quit(void)
{
  *(char *)0xC051 = 0;

  ek_exit();
  id = EK_ID_NONE;
  LOADER_UNLOAD();
}
コード例 #13
0
/*-----------------------------------------------------------------------------------*/
LOADER_INIT_FUNC(themeloader_init, arg)
{
  arg_free(arg);
  
  memcpy(ctk_hires_theme_ptr, &ctk_hires_theme,
	 sizeof(struct ctk_hires_theme));
  ctk_draw_init();
  LOADER_UNLOAD();
}
コード例 #14
0
ファイル: ppp-service.c プロジェクト: ZhepingYang/contiki-1.x
/*---------------------------------------------------------------------------*/
EK_EVENTHANDLER(eventhandler, ev, data)
{
  switch(ev) {
  case EK_EVENT_INIT:
  case EK_EVENT_REPLACE:
//    ppp_init();
    break;
  case EK_EVENT_REQUEST_REPLACE:
    ek_replace((struct ek_proc *)data, NULL);
    LOADER_UNLOAD();
    break;
  case EK_EVENT_REQUEST_EXIT:
    ek_exit();
    LOADER_UNLOAD();
    break;
  default:
    break;
  }
}
コード例 #15
0
ファイル: telnetd.c プロジェクト: EDAyele/ptunes
/*---------------------------------------------------------------------------*/
void
telnetd_quit(void)
{
  shell_quit();
#if TELNETD_CONF_GUI
  telnetd_gui_quit();
#endif /* TELNETD_CONF_GUI */
  process_exit(&telnetd_process);
  LOADER_UNLOAD();
}
コード例 #16
0
ファイル: wget.c プロジェクト: 200018171/contiki
/*-----------------------------------------------------------------------------------*/
static void
app_quit(void)
{
  if(file != -1) {
    cfs_close(file);
  }
  puts("Press any key to continue...");
  getchar();
  process_exit(&wget_process);
  LOADER_UNLOAD();
}
コード例 #17
0
ファイル: rtl8019as-drv.c プロジェクト: EDAyele/ptunes
/*-----------------------------------------------------------------------------------*/
static
DISPATCHER_SIGHANDLER(rtl8019_drv_sighandler, s, data)
{
  DISPATCHER_SIGHANDLER_ARGS(s, data);

  if(s == uip_signal_uninstall) {
    dispatcher_exit(&p);
    id = EK_ID_NONE;
    LOADER_UNLOAD();   
  }
}
コード例 #18
0
ファイル: rrnet-drv.c プロジェクト: ZhepingYang/contiki-1.x
EK_EVENTHANDLER(eventhandler, ev, data)
{
  switch(ev) {
  case EK_EVENT_INIT:
  case EK_EVENT_REPLACE:
    uip_setethaddr(addr);
    asm("lda #1");
    asm("ora $de01");
    asm("sta $de01");
    cs8900a_init();
    break;
  case EK_EVENT_REQUEST_REPLACE:
    ek_replace((struct ek_proc *)data, NULL);
    LOADER_UNLOAD();
    break;
  case EK_EVENT_REQUEST_EXIT:
    ek_exit();
    LOADER_UNLOAD();
    break;
  default:
    break;
  }
}
コード例 #19
0
ファイル: directory.c プロジェクト: 13416795/contiki
/*-----------------------------------------------------------------------------------*/
static void
quit(void)
{
  unsigned char i;

  if(loading == LOADING_DIR) {
    cfs_closedir(&dir);
  }
  ctk_window_close(&window);
  for(i = 0; dscs[i] != NULL; ++i) {
    LOADER_UNLOAD_DSC(dscs[i]);
  }
  process_exit(&directory_process);
  LOADER_UNLOAD();
}
コード例 #20
0
ファイル: directory.c プロジェクト: ZhepingYang/contiki-1.x
/*-----------------------------------------------------------------------------------*/
static void
quit(void)
{
  unsigned char i;

  if(loading == LOADING_DIR) {
    cfs_closedir(&dir);
  }
  ctk_window_close(&window);
  for(i = 0; dscs[i] != NULL; ++i) {
    LOADER_UNLOAD_DSC(dscs[i]);
  }
  ek_exit();
  id = EK_ID_NONE;
  LOADER_UNLOAD();
}
コード例 #21
0
ファイル: gui-shell.c プロジェクト: EDAyele/wsn430
/*-----------------------------------------------------------------------------------*/
PROCESS_THREAD(shell_gui_process, ev, data)
{
  PROCESS_BEGIN();

  ctk_window_new(&window, SHELL_GUI_XSIZE,
		 SHELL_GUI_YSIZE + 1, "Command shell");
  CTK_WIDGET_ADD(&window, &loglabel);
  /*    CTK_WIDGET_SET_FLAG(&loglabel, CTK_WIDGET_FLAG_MONOSPACE);*/
  CTK_WIDGET_ADD(&window, &commandentry);
  /*    CTK_WIDGET_SET_FLAG(&commandentry, CTK_WIDGET_FLAG_MONOSPACE);*/
  CTK_WIDGET_FOCUS(&window, &commandentry);

  shell_init();
  shell_file_init();
  shell_ps_init();
  shell_run_init();
  shell_text_init();
  shell_time_init();
  shell_wget_init();

  ctk_window_open(&window);

  while(1) {
    PROCESS_WAIT_EVENT();

    if(ev == ctk_signal_widget_activate &&
       data == (process_data_t)&commandentry) {
      int command_len = (int)strlen(command);
      shell_default_output("> ", 2, command, command_len);
      shell_input(command, command_len);
      if(shell_gui_process.state) {
        CTK_TEXTENTRY_CLEAR(&commandentry);
        CTK_WIDGET_REDRAW(&commandentry);
      }
    } else if(ev == ctk_signal_window_close ||
	      ev == PROCESS_EVENT_EXIT) {
      shell_quit();
      ctk_window_close(&window);
      process_exit(&shell_gui_process);
      LOADER_UNLOAD();
    }
  }
  PROCESS_END();
}
コード例 #22
0
/*--------------------------------------------------------------------------*/
EK_EVENTHANDLER(eventhandler, ev, data)
{
  EK_EVENTHANDLER_ARGS(ev, data);
  
  switch(ev) {
  case EK_EVENT_INIT:
  case EK_EVENT_REPLACE:
    s_ctk_draw_init();
    ctk_restore();
    break;
  case EK_EVENT_REQUEST_REPLACE:
    VIC.ctrl1 = 0x1b;  /* $D011 */
    VIC.addr  = 0x17;  /* $D018 */
    VIC.ctrl2 = 0xc8;  /* $D016 */
    CIA2.pra  = 0x03;  /* $DD00 */
    ek_replace((struct ek_proc *)data, NULL);
    LOADER_UNLOAD();
    break;    
  }
}
コード例 #23
0
ファイル: webserver.c プロジェクト: ZhepingYang/contiki-1.x
/*-----------------------------------------------------------------------------------*/
EK_EVENTHANDLER(webserver_eventhandler, ev, data)
{
  EK_EVENTHANDLER_ARGS(ev, data);

  if(ev == EK_EVENT_INIT) {
    ctk_window_new(&mainwindow, LOG_WIDTH, LOG_HEIGHT+1, "Web server");
    
    CTK_WIDGET_ADD(&mainwindow, &message);
    CTK_WIDGET_ADD(&mainwindow, &loglabel);
 
    httpd_init();

    ctk_window_open(&mainwindow);
  } else if(ev == ctk_signal_window_close ||
	    ev == EK_EVENT_REQUEST_EXIT) {
    ctk_window_close(&mainwindow);
    ek_exit();
    id = EK_ID_NONE;
    LOADER_UNLOAD();    
  } else if(ev == tcpip_event) {
    httpd_appcall(data);
  }
}
コード例 #24
0
ファイル: simpletelnet.c プロジェクト: AWRyder/contiki
/*-----------------------------------------------------------------------------------*/
PROCESS_THREAD(simpletelnet_process, ev, data)
{
  struct ctk_widget *w;
  int sendlen;

  PROCESS_BEGIN();
  
  ctk_window_new(&telnetwindow, TELNET_WINDOW_WIDTH, TELNET_WINDOW_HEIGHT, "Simple telnet");
  
  strcpy(telnetport, "23");
  
  CTK_WIDGET_ADD(&telnetwindow, &telnethostlabel);
  CTK_WIDGET_ADD(&telnetwindow, &telnetportlabel);
  CTK_WIDGET_ADD(&telnetwindow, &telnethosttextentry);
  CTK_WIDGET_ADD(&telnetwindow, &telnetporttextentry);
  CTK_WIDGET_ADD(&telnetwindow, &telnetconnectbutton);
  CTK_WIDGET_ADD(&telnetwindow, &telnetdisconnectbutton);
  CTK_WIDGET_ADD(&telnetwindow, &telnetlinetextentry);
  CTK_WIDGET_ADD(&telnetwindow, &telnetsendbutton);
  
  CTK_WIDGET_ADD(&telnetwindow, &telnetsep1);
  CTK_WIDGET_ADD(&telnetwindow, &telnettextarea);
  
  CTK_WIDGET_ADD(&telnetwindow, &telnetsep2);
  CTK_WIDGET_ADD(&telnetwindow, &telnetstatus);
  
  CTK_WIDGET_FOCUS(&telnetwindow, &telnethosttextentry);
  
  ctk_window_open(&telnetwindow);

  while(1) {
    PROCESS_WAIT_EVENT();
    if(ev == ctk_signal_button_activate) {
      
      w = (struct ctk_widget *)data;
      if(w == (struct ctk_widget *)&telnetsendbutton) {
	strcpy(sendline, telnetline);
	sendlen = (int)strlen(sendline);
	petsciiconv_toascii(sendline, sendlen);
	sendline[sendlen++] = ISO_CR;
	sendline[sendlen++] = ISO_NL;
	if(telnet_send(&ts_appstate, sendline, sendlen)) {
	  /* Could not send. */
	  ctk_label_set_text(&telnetstatus, "Could not send");
	  ctk_window_redraw(&telnetwindow);
	  /*      } else {*/
	  /* Could send */
	}
      } else if(w == (struct ctk_widget *)&telnetdisconnectbutton) {
	telnet_close(&ts_appstate);
	show("Closing...");
      } else if(w == (struct ctk_widget *)&telnetconnectbutton) {
	connect();
	ctk_window_redraw(&telnetwindow);
      }
#if UIP_UDP
    } else if(ev == resolv_event_found) {
      if(strcmp(data, telnethost) == 0) {
	if(resolv_lookup(telnethost) != NULL) {
	  connect();
	} else {
	  show("Host not found");
	}
      }
#endif /* UIP_UDP */
    } else if(
#if CTK_CONF_WINDOWCLOSE
	      ev == ctk_signal_window_close ||
#endif /* CTK_CONF_WINDOWCLOSE */
	      ev == PROCESS_EVENT_EXIT) {
      process_exit(&simpletelnet_process);
      ctk_window_close(&telnetwindow);
      LOADER_UNLOAD();
    } else if(ev == tcpip_event) {
      telnet_app(data);
    }
  }
  PROCESS_END();
}
コード例 #25
0
ファイル: netconf.c プロジェクト: AWRyder/contiki
/*-----------------------------------------------------------------------------------*/
static void
netconf_quit(void)
{
  process_exit(&netconf_process);
  LOADER_UNLOAD();
}
コード例 #26
0
ファイル: telnetd.c プロジェクト: bootc/PolyController
void telnetd_quit(void) {
	//shell_quit();
	process_exit(&telnetd_process);
	LOADER_UNLOAD();
}
コード例 #27
0
ファイル: pinger.c プロジェクト: Asterios/contiki-econotag
/*---------------------------------------------------------------------------*/
static void
quit(void)
{
  process_exit(&pinger);
  LOADER_UNLOAD();
}
コード例 #28
0
ファイル: vnc.c プロジェクト: Asterios/contiki-econotag
/*-----------------------------------------------------------------------------------*/
PROCESS_THREAD(vnc_process, ev, data)
{
  unsigned short x, y;
  unsigned char xc, yc;

  PROCESS_BEGIN();
  
  ctk_window_new(&mainwindow, 36, HEIGHT, "VNC client");
  ctk_window_move(&mainwindow, 0, 0);
  
  CTK_WIDGET_ADD(&mainwindow, &hosttextentry);
  CTK_WIDGET_FOCUS(&mainwindow, &hosttextentry);
  CTK_WIDGET_ADD(&mainwindow, &porttextentry);
  CTK_WIDGET_ADD(&mainwindow, &connectbutton);
  
  CTK_WIDGET_ADD(&mainwindow, &sep1);
  
  CTK_WIDGET_ADD(&mainwindow, &vncbitmap);
  
  CTK_WIDGET_ADD(&mainwindow, &leftbutton);
  CTK_WIDGET_ADD(&mainwindow, &upbutton);
  CTK_WIDGET_ADD(&mainwindow, &downbutton);
  CTK_WIDGET_ADD(&mainwindow, &rightbutton);
  
  vnc_draw_init();
  
  ctk_window_open(&mainwindow);

  while(1) {
    PROCESS_WAIT_EVENT();
  
    if(ev == ctk_signal_button_activate) {
      if(data == (process_data_t)&connectbutton) {
	connect();
      }
    } else if(ev == ctk_signal_window_close) {
      process_exit(&vnc_process);
      LOADER_UNLOAD();
    } else if(ev == resolv_event_found) {
      if(strcmp(data, host) == 0) {
	if(resolv_lookup(host) != NULL) {
	  connect();
	} else {
	  show("Host not found");
	}
      }
    } else if(ev == ctk_signal_pointer_move) {
      /* Check if pointer is within the VNC viewer area */
      x = ctk_mouse_x();
      y = ctk_mouse_y();
      
      xc = ctk_mouse_xtoc(x);
      yc = ctk_mouse_ytoc(y);
      
      if(xc >= 2 && yc >= 2 &&
	 xc < 2 + VNC_VIEWPORT_WIDTH / 8 &&
	 yc < 2 + VNC_VIEWPORT_HEIGHT / 8) {
	
	VNC_VIEWER_POST_POINTER_EVENT(x, y, 0);
      }
      
    } else if(ev == tcpip_event) {
      vnc_viewer_appcall(data);
    }
  }

  PROCESS_END();
}