Esempio n. 1
0
void
on_list_apply_clicked(GtkButton *button, gpointer user_data)
{
	ASGtkImageDir *id = ASGTK_IMAGE_DIR(user_data);
	ASImageListEntry *entry = asgtk_image_dir_get_selection( id );
	if( entry ) 
	{	
		SendTextCommand ( F_CHANGE_BACKGROUND, NULL, entry->fullfilename, 0);
		unref_asimage_list_entry( entry );
	}
}
Esempio n. 2
0
/* DO NOT RUN WITH SUID-PRIVILIDGES */
void
group_wrapper(ASWinCommandState *state, const char *action)
{
#define WINTABS_COMMAND_PATTERN "WinTabs --pattern \"posix:%s\" &"	
	if( state->pattern != NULL ) 
	{	
		char* com = safemalloc(sizeof(WINTABS_COMMAND_PATTERN)+strlen(state->pattern)) ;
		/* Launch WinTabs */
		sprintf(com, WINTABS_COMMAND_PATTERN, state->pattern);
		SendTextCommand ( F_MODULE, "-", com, None);
		free( com );
	}
}
Esempio n. 3
0
void
on_update_as_menu_clicked(GtkButton *button, gpointer user_data)
{
	SendTextCommand ( F_QUICKRESTART, NULL,  "startmenu", 0);
}
Esempio n. 4
0
int
ConnectAfterStep (send_data_type message_mask, send_data_type lock_on_send_mask)
{
	char *temp;
	int   fd;

	/* connect to AfterStep */
	/* Dead pipe == AS died */
	signal (SIGPIPE, ASDeadPipe);
	fd = ASDefaultScr->wmprops?socket_connect_client(ASDefaultScr->wmprops->as_socket_filename):-1;

	set_module_in_fd( fd );
	set_module_out_fd( fd );

	if (fd < 0)
	{
		show_error("unable to establish connection to AfterStep");
	}else
	{	
		int arg_len = 0 ; 
		int i ; 
		char *ptr ;
		char *exec_name = strrchr (MyArgs.saved_argv[0], '/');
		int exec_name_len ; 
		send_signed_data_type masks[2] ; 

		masks[0] = message_mask ;
		masks[1] = lock_on_send_mask ;

		if( exec_name == NULL ) 
			exec_name = MyArgs.saved_argv[0] ;
		else
			++exec_name ;

		exec_name_len = strlen(exec_name);
		arg_len = exec_name_len ;
		for( i = 1 ; i < MyArgs.saved_argc ; ++i )
			arg_len += 1+1+strlen( MyArgs.saved_argv[i] )+1 ;	


		/* assuming that unsigned long will be limited to 32 chars : */
		temp = safemalloc (arg_len+1);
		strcpy(temp, exec_name);
		ptr = temp + exec_name_len; 
		for( i = 1 ; i < MyArgs.saved_argc ; ++i )
		{
			Bool quote = False ; 
			if( MyArgs.saved_argv[i][0] != '-' ) 
			{
				int k = 0;
				int c = MyArgs.saved_argv[i][k] ; 
				while( isalnum(c) || c == '-' || c == '+' || c == '.' || c == '_' ) 
					c = MyArgs.saved_argv[i][++k] ; 
				quote = ( c != '\0' ) ;
			}	 
			sprintf( ptr, quote?" \"%s\"":" %s", MyArgs.saved_argv[i] );	
			while( *ptr ) ++ptr;
		}
		SendTextCommand ( F_SET_NAME, MyName, temp, None);
		free (temp);

		SendNumCommand ( F_SET_MASK, NULL, &masks[0], NULL, None);
		//sprintf (mask_mesg, "SET_MASK %lu %lu\n", (unsigned long)message_mask, (unsigned long) lock_on_send_mask);
		//SendInfo ( mask_mesg, None);
	}
	/* don't really have to do this here, but anyway : */
	InitSession();
	return fd;
}