示例#1
0
文件: xnotify.c 项目: masutu/xnotify
int main(int argc, char **argv)
{

  if(argc == 2)
    text = argv[1];
  else {
    printf("give an argument.\n");
    exit(1);
  }

  LOG_MESSAGE("starting xnotify\n");

  initX();

  signal(SIGHUP, sighup_handler);
  signal(SIGINT, sigint_handler);
  
  display_window();

  init_and_start_ev_loop(ConnectionNumber(X.display));

  cleanup();

  return 0;
}
示例#2
0
文件: app.cpp 项目: Zenol/clanLib-3
int App::main(const std::vector<std::string> &args)
{
	DisplayWindow display_window("Custom GUI Components", 640, 480);

	GUIManager gui(display_window, "Resources");

	Slot slot_window_close = display_window.sig_window_close().connect(this, &App::on_window_close, &gui);

	//  Note - If you are using the GL1 target, you will get a perfomance increase by enabling these 2 lines
	//   It reduces the number of internal FrameBuffer swaps. The GL1 target (OpenGL 1.3), performs this slowly
	//   Setting the texture group here, lets the GUI Texture Window Manager know the optimum texture size of all root components
	//TextureGroup texture_group(display_window.get_gc(), Size(1024, 1024));
	//((GUIWindowManagerTexture)gui.get_window_manager()).set_texture_group()

	Rect viewport = display_window.get_viewport();

	GameComponent game_component(viewport, &gui);

	Rect toolbar_rect = Rect((viewport.right - 448) / 2, viewport.bottom - 56, (viewport.right - 448) / 2 + 448, viewport.bottom);
	Toolbar toolbar(toolbar_rect, &game_component);	// GameComponent is the "desktop" that the toolbar sits on, as an owner

	GraphicContext gc = display_window.get_gc();
	toolbar.add_item(Sprite(gc, "Resources/Images/spell1.png"), Sprite(gc, "Resources/Images/spell1_selected.png"), Sprite(gc, "Resources/Images/spell1_clicked.png"));
	toolbar.add_item(Sprite(gc, "Resources/Images/spell2.png"), Sprite(gc, "Resources/Images/spell2_selected.png"), Sprite(gc, "Resources/Images/spell2_clicked.png"));
	toolbar.add_item(Sprite(gc, "Resources/Images/spell3.png"), Sprite(gc, "Resources/Images/spell3_selected.png"), Sprite(gc, "Resources/Images/spell3_clicked.png"));
	toolbar.add_item(Sprite(gc, "Resources/Images/spell4.png"), Sprite(gc, "Resources/Images/spell4_selected.png"), Sprite(gc, "Resources/Images/spell4_clicked.png"));
	toolbar.add_item(Sprite(gc, "Resources/Images/spell5.png"), Sprite(gc, "Resources/Images/spell5_selected.png"), Sprite(gc, "Resources/Images/spell5_clicked.png"));
	toolbar.add_item(Sprite(gc, "Resources/Images/spell6.png"), Sprite(gc, "Resources/Images/spell6_selected.png"), Sprite(gc, "Resources/Images/spell6_clicked.png"));
	toolbar.add_item(Sprite(gc, "Resources/Images/spell7.png"), Sprite(gc, "Resources/Images/spell7_selected.png"), Sprite(gc, "Resources/Images/spell7_clicked.png"));

	gui.exec();

	return 0;
}
示例#3
0
文件: regedit.c 项目: AIdrifter/samba
int main(int argc, char **argv)
{
	struct poptOption long_options[] = {
		POPT_AUTOHELP
		/* ... */
		POPT_COMMON_SAMBA
		POPT_COMMON_CONNECTION
		POPT_COMMON_CREDENTIALS
		POPT_TABLEEND
	};
	int opt;
	poptContext pc;
	struct user_auth_info *auth_info;
	TALLOC_CTX *frame;
	struct registry_context *ctx;
	WERROR rv;

	frame = talloc_stackframe();

	setup_logging("regedit", DEBUG_DEFAULT_STDERR);
	lp_set_cmdline("log level", "0");

	/* process options */
	auth_info = user_auth_info_init(frame);
	if (auth_info == NULL) {
		exit(1);
	}
	popt_common_set_auth_info(auth_info);
	pc = poptGetContext("regedit", argc, (const char **)argv, long_options, 0);

	while ((opt = poptGetNextOpt(pc)) != -1) {
		/* TODO */
	}

	if (!lp_load_global(get_dyn_CONFIGFILE())) {
		DEBUG(0, ("ERROR loading config file...\n"));
		exit(1);
	}

	/* some simple tests */

	rv = reg_open_samba3(frame, &ctx);
	if (!W_ERROR_IS_OK(rv)) {
		TALLOC_FREE(frame);

		return 1;
	}

	display_window(frame, ctx);

	TALLOC_FREE(frame);

	return 0;
}
示例#4
0
void display_windows(struct list * addr_list, int argc, char * argv[])
{
  struct listnode * addr_node;
  struct listnode * local_addr_node;

  LIST_FOREACH(addr_list, addr_node)
  {
    struct addr * cur_addr = (struct addr *)addr_node->data;
    if(strcmp(cur_addr->type, "1") == 0)
    {
      char * host = cur_addr->host;
      struct list * addr_list_procs = calloc(1, sizeof(struct list));

      LIST_FOREACH(addr_list, local_addr_node)
      {
        struct addr * local_cur_addr = (struct addr *)local_addr_node->data;
        if((strcmp(local_cur_addr->type, "1") != 0) && (strcmp(local_cur_addr->host, host) == 0))
        {
          printf("%s\n", local_cur_addr->prefix_str);
          struct listnode * node_to_be_added = calloc(1, sizeof(struct listnode));
          struct addr * addr_to_be_added = calloc(1, sizeof(struct addr));
          node_to_be_added->data = (void *)addr_to_be_added;

          memcpy(addr_to_be_added, local_cur_addr, sizeof(struct addr));
          printf("memcpied %s\n", addr_to_be_added->prefix_str);
          LIST_APPEND(addr_list_procs, node_to_be_added);
        }
      }

      LIST_FOREACH(addr_list_procs, local_addr_node)
      {
        struct addr * local_cur_addr = (struct addr *)local_addr_node->data;
        printf("address copied: %s\n", local_cur_addr->prefix_str);
      }

      // create new child for each window
      pid_t pid = fork();

      if(pid == 0)
      {

        if (!g_thread_supported ()){ g_thread_init(NULL); }
        gdk_threads_init();
        gdk_threads_enter();

        gtk_init(&argc, &argv);
        display_window(cur_addr, addr_list_procs);
        gdk_threads_leave();
        // make sure child doesn't fork again
        _exit(0);
      }
    }
  }
示例#5
0
文件: window.c 项目: je-so/js-projekt
int free_window(window_t * win)
{
   int err;
   int err2;

   if (0 != display_window(win)) {
      err  = FREE_GLWINDOW(&gl_window(win), display_window(win));
      (void) PROCESS_testerrortimer(&s_window_errtimer, &err);

      err2 = FREE_OSWINDOW(os_window(win));
      (void) PROCESS_testerrortimer(&s_window_errtimer, &err2);
      if (err2) err = err2;

      if (err) goto ONERR;
   }

   return 0;
ONERR:
   TRACEEXITFREE_ERRLOG(err);
   return err;
}
示例#6
0
void display_browser()
{
	if(browser_win <= 0){
		browser_win= create_window("browser", 0, 0, browser_menu_x, browser_menu_y, browser_menu_x_len, browser_menu_y_len, ELW_WIN_DEFAULT);

		set_window_handler(browser_win, ELW_HANDLER_DISPLAY, &display_browser_handler );
		set_window_handler(browser_win, ELW_HANDLER_CLICK, &check_browser_interface );
		
	} else {
		show_window(browser_win);
		select_window(browser_win);
	}
	display_window(browser_win);
}
示例#7
0
void display_o3dow()
{
	if(o3dow_win <= 0){
		o3dow_win= create_window("o3dow", 0, 0, o3dow_x, o3dow_y, o3dow_x_len, o3dow_y_len, ELW_WIN_DEFAULT);

		set_window_handler(o3dow_win, ELW_HANDLER_DISPLAY, &display_o3dow_handler );
		set_window_handler(o3dow_win, ELW_HANDLER_CLICK, &check_o3dow_interface );
		
	} else {
		show_window(o3dow_win);
		select_window(o3dow_win);
	}
	display_window(o3dow_win);
}
示例#8
0
void display_options_menu()
{
	if(options_win <= 0){
		options_win= create_window("Options", 0, 0, options_menu_x, options_menu_y, options_menu_x_len, options_menu_y_len, ELW_WIN_DEFAULT);

		set_window_color(options_win, ELW_COLOR_BORDER, 0.0f, 1.0f, 0.0f, 0.0f);
		set_window_handler(options_win, ELW_HANDLER_DISPLAY, &display_options_handler );
		set_window_handler(options_win, ELW_HANDLER_CLICK, &click_options_handler );
		set_window_handler(options_win, ELW_HANDLER_MOUSEOVER, &mouseover_options_handler );
		init_display_options_menu();
	} else {
		show_window(options_win);
		select_window(options_win);
	}
	display_window(options_win);
}
示例#9
0
// general windows manager functions
void	display_windows(int level)
{
	int	id;
	int	next_id;
	int i;

	windows_list.display_level= level;
	glColor3f(1.0f, 1.0f, 1.0f);
	// first draw everything that is last under everything
	id= -1;
	while(1)
		{
			next_id= -9999;
			for(i=1; i<windows_list.num_windows; i++){
				// only look at displayed windows
				if(windows_list.window[i].displayed > 0){
					// at this level?
					if(windows_list.window[i].order == id){
						display_window(i);
					} else if(windows_list.window[i].order < id && windows_list.window[i].order > next_id){
						// try to find the next level
						next_id= windows_list.window[i].order;
					}
				}
			}
			if(next_id <= -9999)
				{
					break;
				}
			else
				{
					id= next_id;
				}
		}
	if(level > 0)
		{
			// now display each window in the proper order
			id= 1;
			while(1)
				{
					next_id= 9999;
					for(i=1; i<windows_list.num_windows; i++){
						// only look at displayed windows
						if(windows_list.window[i].displayed > 0){
							// at this level?
							if(windows_list.window[i].order == id){
								display_window(i);
							} else if(windows_list.window[i].order > id && windows_list.window[i].order < next_id){
								// try to find the next level
								next_id= windows_list.window[i].order;
							}
						}
					}
					if(next_id >= 9999)
						{
							break;
						}
					else
						{
							id= next_id;
						}
				}
		}
}