/* create the window */
static PzWindow *new_truchet_window_common( )
{
	/* create the window */
	tglob.window = pz_new_window( "Truchet", PZ_WINDOW_NORMAL );

	tglob.w = tglob.window->w;
	tglob.h = tglob.window->h;
	tglob.fullscreen = 0;

	tglob.bw = (ttk_screen->w/16) +1;
	tglob.bh = (ttk_screen->h/16) +1;

	/* create the widget */
	tglob.widget = pz_add_widget( tglob.window, 
				draw_truchet, event_truchet );

	/* 1 second timeout */
	pz_widget_set_timer( tglob.widget, 250 );

	/* we're waaaay more important than anyone else */
	pz_set_priority(PZ_PRIORITY_VITAL); 

	fill_buffer();

	/* done in here! */
	return pz_finish_window( tglob.window );
}
static TWindow *list_actions(const char *lpath)
{
	TWindow *ret;
	TWidget *menu;
	char path[MAXPATHLEN], cwd[MAXPATHLEN];

	snprintf( path, MAXPATHLEN, "%s/%s", getcwd(cwd, MAXPATHLEN), lpath);
	ret = pz_new_window(path, PZ_WINDOW_NORMAL);
	menu = pz_browser_get_actions(path);
	ttk_add_widget(ret, menu);
	return pz_finish_window(ret);
}
PzWindow *transfer_alt_menu(track_list *tlist, ipod_t src_ipod, queue_fcn qfunc, ttk_menu_item *qitem) {
	TWindow *ret;

	ret = pz_new_window(_("Transfer"), PZ_WINDOW_NORMAL);
    ret->data = 0x12345678;
    
	/* Show data up top: number of tracks, total size */	
	int num_tracks = 0, size=0;
	track_item *titem = tlist->head;
	
	while (titem) {
	   num_tracks++;
	   ipod_track_t track = ipod_track_get_by_track_id(src_ipod, titem->track_id);
	   size += ipod_track_get_attribute(track, IPOD_TRACK_SIZE);
       ipod_track_free(track);
	   titem = titem->next;
	}

	
	/* Add the status widget */
	PzWidget *stats_wid = pz_new_widget(transfer_alt_stat_draw, NULL);
	stat_data *stats = (stat_data *)malloc(sizeof(stat_data));
	stats->num_files = num_tracks;
	stats->total_bytes = size;
	stats_wid->data = stats;
	stats_wid->w = ret->w;
	ttk_add_widget(ret, stats_wid);
	
	
    /* Draw the Menu */	
    int menu_height = (ttk_text_height(ttk_menufont) + 4) * (qfunc? 3 : 2);
    TWidget *menu = ttk_new_menu_widget (transfer_menu_default, ttk_menufont, ttk_screen->w - ttk_screen->wx,
					menu_height);
	menu->y = ttk_screen->h - ttk_screen->wy - menu_height;
	transfer_menu_default[1].data = transfer_menu_default[3].data = tlist;
    if (remote_ipod)
		ttk_menu_append (menu, transfer_menu_default + 1);
	if (qfunc) {
		enqueue_data *eqdata = (enqueue_data *)malloc(sizeof(enqueue_data));		
		eqdata->qfunc = qfunc;
		eqdata->item = qitem;
		transfer_menu_default[2].data = eqdata;
		transfer_menu_default[2].free_data = 1;
		ttk_menu_append(menu, transfer_menu_default + 2);
	}
    ttk_menu_append (menu, transfer_menu_default + 3);
	ttk_add_widget(ret, menu);

	return pz_finish_window(ret);
}
static PzWindow *set_Header()
{
        PzWindow * ret;
 	TWidget * wid;

        char headername[256];
        snprintf(headername, 256,
              pz_get_string_setting(pz_global_config, HEADERNAME));

        if(text_available()){
 	    ret = pz_new_window(_("Set Header Name"), PZ_WINDOW_NORMAL);
	    wid = textw(10, 40, ret->w-20, 10+ttk_text_height(ttk_textfont), 0, headername, pz_set_header);
	    ttk_add_widget(ret, wid);
	    textwstart(wid);
	   return pz_finish_window(ret);
        } 
         else { 
	    pz_warning("Install module text input");
	  return TTK_MENU_UPONE;
  }
}
Exemple #5
0
PzWindow *new_mymodule_window()
{
    static int calledyet = 0;
    PzWindow *ret;
    FILE *fp;
    
    if (!calledyet) {
	calledyet++;
	pz_message ("Select again to see the fun stuff.");
	return TTK_MENU_DONOTHING;
    }

    image = ttk_load_image (pz_module_get_datapath (module, "image.png"));
    if (!image) {
	pz_error ("Could not load %s: %s", pz_module_get_datapath (module, "image.png"),
		  strerror (errno));
	return TTK_MENU_DONOTHING;
    }
    ttk_surface_get_dimen (image, &imgw, &imgh);

    fp = fopen (pz_module_get_datapath (module, "message.txt"), "r");
    if (!fp) {
	pz_warning ("Could not read from %s: %s.", pz_module_get_datapath (module, "message.txt"),
		    strerror (errno));
	text = (char *)strdup ("Hi! I forgot to supply a message!");
    } else {
	long len;
	fseek (fp, 0, SEEK_END);
	len = ftell (fp);
	fseek (fp, 0, SEEK_SET);
	text = malloc (len + 1);
	fread (text, 1, len, fp);
	text[len] = 0;
    }

    ret = pz_new_window ("MyModule", PZ_WINDOW_NORMAL);
    pz_add_widget (ret, draw_mymodule, event_mymodule);
    return pz_finish_window (ret);
}
PzWindow *new_remote_ipod_info_window() {
	PzWindow *ret = pz_new_window("Remote iPod", PZ_WINDOW_NORMAL);
    pz_add_widget (ret, draw_about_remote_ipod_widget, event_remote_ipod_widget);
	return pz_finish_window(ret);
}