Esempio n. 1
0
void atari_global_history_init(void)
{
	if (atari_global_history.init == false) {
		if( atari_global_history.window == NULL ) {
			int flags = ATARI_TREEVIEW_WIDGETS;
			short handle = -1;
			OBJECT * tree = gemtk_obj_get_tree(TOOLBAR_HISTORY);
			assert( tree );

			handle = wind_create(flags, 0, 0, desk_area.g_w, desk_area.g_h);
			atari_global_history.window = gemtk_wm_add(handle, GEMTK_WM_FLAG_DEFAULTS, NULL);
			if( atari_global_history.window == NULL ) {
				gemtk_msg_box_show(GEMTK_MSG_BOX_ALERT,
						   "Failed to allocate History");
				return;
			}
			wind_set_str(handle, WF_NAME, (char*)messages_get("History"));
			gemtk_wm_set_toolbar(atari_global_history.window, tree, 0, 0);
			gemtk_wm_unlink(atari_global_history.window);

			atari_global_history.tv = atari_treeview_create(
				atari_global_history.window,
				&atari_global_history_treeview_callbacks,
				NULL, flags);

			if (atari_global_history.tv == NULL) {
				/* handle it properly, clean up previous allocs */
				NSLOG(netsurf, INFO,
				      "Failed to allocate treeview");
				return;
			}
		}
	}
	atari_global_history.init = true;
}
Esempio n. 2
0
bool login_form_do(nsurl * url, char * realm, char ** out)
{
	char user[255];
	char pass[255];
	//const char * auth;
	short exit_obj = 0;
	OBJECT * tree;

	user[0] = 0;
	pass[0] = 0;

	// TODO: use auth details for predefined login data
	// auth = urldb_get_auth_details(url, realm);
	tree = gemtk_obj_get_tree(LOGIN);

	assert(tree != NULL);

	exit_obj = simple_mdial(tree, 0);

	if(exit_obj == LOGIN_BT_LOGIN) {
		get_string(tree, LOGIN_TB_USER, user);
		get_string(tree, LOGIN_TB_PASSWORD, pass);
		int size = strlen((char*)&user) + strlen((char*)&pass) + 2 ;
		*out = malloc(size);
		snprintf(*out, size, "%s:%s", user, pass);
	} else {
		*out = NULL;
	}
	return((exit_obj == LOGIN_BT_LOGIN));
}
Esempio n. 3
0
void deskmenu_init(void)
{
	int i;

	h_gem_menu = gemtk_obj_get_tree(MAINMENU);


	/* Install menu: */
	menu_bar(h_gem_menu, MENU_INSTALL);

	/* parse and update menu items:  */
	i = 0;
	while( menu_evnt_tbl[i].rid != -1 ) {
		register_menu_str( &menu_evnt_tbl[i] );
		/* Update menu string if not null: */
		if( menu_evnt_tbl[i].menustr != NULL ){
			menu_text(h_gem_menu, menu_evnt_tbl[i].rid,
						menu_evnt_tbl[i].menustr);
		}
		i++;
	}
	deskmenu_update();
	/* Redraw menu: */
	menu_bar(h_gem_menu, MENU_UPDATE);
}
Esempio n. 4
0
void open_settings(void)
{
    if (h_aes_win == 0) {

        GRECT curr, area;
        struct gemtk_wm_scroll_info_s *slid;
        uint32_t kind = CLOSER | NAME | MOVER | VSLIDE | HSLIDE | UPARROW
                        | DNARROW | LFARROW | RTARROW | SIZER | FULLER;

        dlgtree = gemtk_obj_get_tree(SETTINGS);
        area.g_x = area.g_y = 0;
        area.g_w = MIN(dlgtree->ob_width, desk_area.g_w);
        area.g_h = MIN(dlgtree->ob_height, desk_area.g_h);
        wind_calc_grect(WC_BORDER, kind, &area, &area);
        h_aes_win = wind_create_grect(kind, &area);
        wind_set_str(h_aes_win, WF_NAME, "Settings");
        settings_guiwin = gemtk_wm_add(h_aes_win, GEMTK_WM_FLAG_DEFAULTS,
                                     on_aes_event);
        curr.g_w = MIN(dlgtree->ob_width, desk_area.g_w);
        curr.g_h = MIN(dlgtree->ob_height, desk_area.g_h-64);
        curr.g_x = 1;
        curr.g_y = (desk_area.g_h / 2) - (curr.g_h / 2);

        wind_calc_grect(WC_BORDER, kind, &curr, &curr);

        dlgtree->ob_x = curr.g_x;
        dlgtree->ob_y = curr.g_y;

        /* set current config values: */
        display_settings();

        wind_open_grect(h_aes_win, &curr);

        gemtk_wm_set_form(settings_guiwin, dlgtree, 0);
        gemtk_wm_set_scroll_grid(settings_guiwin, 32, 32);
        gemtk_wm_get_grect(settings_guiwin, GEMTK_WM_AREA_CONTENT, &area);

        slid = gemtk_wm_get_scroll_info(settings_guiwin);
        gemtk_wm_set_content_units(settings_guiwin,
                                 (dlgtree->ob_width/slid->x_unit_px),
                                 (dlgtree->ob_height/slid->y_unit_px));
        gemtk_wm_update_slider(settings_guiwin, GEMTK_WM_VH_SLIDER);
    }
}
Esempio n. 5
0
static void atari_sslcert_viewer_init(struct atari_sslcert_viewer_s * cvwin,
				      struct sslcert_session_data *ssl_d)
{
	assert(cvwin->init == false);
	assert(cvwin->window == NULL);
	assert(cvwin->tv == NULL);

	int flags = ATARI_TREEVIEW_WIDGETS;
	short handle = -1;
	OBJECT * tree = gemtk_obj_get_tree(TOOLBAR_SSL_CERT);
	assert( tree );

	handle = wind_create(flags, 0, 0, desk_area.g_w, desk_area.g_h);
	cvwin->window = gemtk_wm_add(handle,
				     GEMTK_WM_FLAG_DEFAULTS, NULL);
	if (cvwin->window == NULL ) {
		gemtk_msg_box_show(GEMTK_MSG_BOX_ALERT,
				   "Failed to allocate Treeview:\nCertviewer");
		return;
	}
	wind_set_str(handle, WF_NAME, (char*)"SSL Certificate");
	gemtk_wm_set_toolbar(cvwin->window, tree, 0, 0);
	gemtk_wm_unlink(cvwin->window);

	cvwin->ssl_session_data = ssl_d;
	cvwin->tv = atari_treeview_create(cvwin->window,
					  &atari_sslcert_viewer_treeview_callbacks,
					  cvwin, flags);

	if (cvwin->tv == NULL) {
		/* handle it properly, clean up previous allocs */
		NSLOG(netsurf, INFO, "Failed to allocate treeview");
		return;
	}

	cvwin->init = true;
}
Esempio n. 6
0
static void form_event(int index, int external)
{
    char spare[255];
    bool is_button = false;
    bool checked = OBJ_SELECTED(index);
    char * tmp;
    MENU pop_menu, me_data;

    /* For font driver popup: */
    int num_font_drivers = 2;

    /*
    	Just a small collection of locales, each country has at least one
    	ATARI-clone user! :)
    */
    int num_locales = 15;
    short x, y;
    int choice, i;

    switch(index) {

    case SETTINGS_SAVE:
		OBJ_UNCHECK(index);
        OBJ_REDRAW(index);
        save_settings();
        break;

    case SETTINGS_ABORT:
		OBJ_UNCHECK(index);
        OBJ_REDRAW(index);
        close_settings();
        break;

    case SETTINGS_CB_USE_PROXY:
        if( checked ) {
            ENABLE_OBJ(SETTINGS_EDIT_PROXY_HOST);
            ENABLE_OBJ(SETTINGS_EDIT_PROXY_PORT);
            ENABLE_OBJ(SETTINGS_CB_PROXY_AUTH);
        } else {
            DISABLE_OBJ(SETTINGS_EDIT_PROXY_HOST);
            DISABLE_OBJ(SETTINGS_EDIT_PROXY_PORT);
            DISABLE_OBJ(SETTINGS_CB_PROXY_AUTH);
        }
        FORMEVENT(SETTINGS_CB_PROXY_AUTH);
        OBJ_REDRAW(SETTINGS_CB_USE_PROXY);
        break;

    case SETTINGS_CB_PROXY_AUTH:
        if( checked && OBJ_SELECTED( SETTINGS_CB_USE_PROXY ) ) {
            ENABLE_OBJ(SETTINGS_EDIT_PROXY_USERNAME);
            ENABLE_OBJ(SETTINGS_EDIT_PROXY_PASSWORD);
        } else {
            DISABLE_OBJ(SETTINGS_EDIT_PROXY_USERNAME);
            DISABLE_OBJ(SETTINGS_EDIT_PROXY_PASSWORD);
        }
        break;

    case SETTINGS_CB_ENABLE_ANIMATION:
        if( checked ) {
            ENABLE_OBJ( SETTINGS_EDIT_MIN_GIF_DELAY );
        } else {
            DISABLE_OBJ( SETTINGS_EDIT_MIN_GIF_DELAY );
        }
        break;

    case SETTINGS_BT_SEL_FONT_RENDERER:
        if( external ) {
            objc_offset(dlgtree, SETTINGS_BT_SEL_FONT_RENDERER, &x, &y);
            // point mn_tree tree to states popup:
            pop_menu.mn_tree = gemtk_obj_get_tree(POP_FONT_RENDERER);
            pop_menu.mn_menu = 0;
            pop_menu.mn_item = POP_FONT_RENDERER_INTERNAL;
            pop_menu.mn_scroll = SCROLL_NO;
            pop_menu.mn_keystate = 0;

			// find the selected menu item and uncheck others:
            for(i=pop_menu.mn_item; i<=num_font_drivers; i++) {
                get_string(pop_menu.mn_tree, i, spare);
                tmp = gemtk_obj_get_text(dlgtree, SETTINGS_BT_SEL_FONT_RENDERER);
                if (strcasecmp(&spare[2], tmp)) {
                    menu_icheck(pop_menu.mn_tree, i, 0);
                } else {
                    menu_icheck(pop_menu.mn_tree, i, 1);
                }
                set_string(pop_menu.mn_tree, i, spare);
            }

            menu_popup(&pop_menu, x, y, &me_data);
            choice = me_data.mn_item;
            if( choice > 0 && choice <= num_font_drivers ) {
                get_string(pop_menu.mn_tree, choice, spare);
                for(i=2; i<(int)strlen(spare); i++) {
                    spare[i]= (char)tolower(spare[i]);
                }
                set_text(SETTINGS_BT_SEL_FONT_RENDERER,
                         (char*)&spare[2],
                         LABEL_FONT_RENDERER_MAX_LEN);
                OBJ_REDRAW(SETTINGS_BT_SEL_FONT_RENDERER);
            }
        }
        tmp = gemtk_obj_get_text(dlgtree, SETTINGS_BT_SEL_FONT_RENDERER);
        if (strcasecmp(tmp, "freetype") == 0) {
            ENABLE_OBJ(SETTINGS_CB_ANTI_ALIASING);
        } else {
            DISABLE_OBJ(SETTINGS_CB_ANTI_ALIASING);
        }
        break;

    case SETTINGS_BT_SEL_LOCALE:
        objc_offset(dlgtree, SETTINGS_BT_SEL_LOCALE, &x, &y);

        // point mn_tree tree to states popup:
        pop_menu.mn_tree = gemtk_obj_get_tree(POP_LANGUAGE);
        pop_menu.mn_menu = 0;
        pop_menu.mn_item = POP_LANGUAGE_CS;
        pop_menu.mn_scroll = SCROLL_NO;
        pop_menu.mn_keystate = 0;

		// find the selected menu item and uncheck others:
        for(i=pop_menu.mn_item; i<=num_locales; i++) {
            get_string(pop_menu.mn_tree, i, spare);
            tmp = gemtk_obj_get_text(dlgtree, SETTINGS_BT_SEL_LOCALE);
            if (strcasecmp(&spare[2], tmp)) {
                menu_icheck(pop_menu.mn_tree, i, 0);
            } else {
                menu_icheck(pop_menu.mn_tree, i, 1);
            }
            set_string(pop_menu.mn_tree, i, spare);
        }


        menu_popup(&pop_menu, x, y, &me_data);
        choice = me_data.mn_item;
        if( choice > 0 && choice <= num_locales ) {
            get_string(pop_menu.mn_tree, choice, spare);
            for(i=2; i<(int)strlen(spare); i++) {
                spare[i]= (char)tolower(spare[i]);
            }
            set_text(SETTINGS_BT_SEL_LOCALE, (char*)&spare[2], 5);
        }

        OBJ_REDRAW(SETTINGS_BT_SEL_LOCALE);
        break;

        /*
        		case SETTINGS_INPUT_TOOLBAR_BGCOLOR:
        			objc_offset( FORM(win), SETTINGS_INPUT_TOOLBAR_BGCOLOR, &x, &y );
        			choice = color_popup(x, y, tmp_option_atari_toolbar_bg);
        			snprintf( spare, 255, "%06x", choice );
        			tmp_option_atari_toolbar_bg = choice;
        			ObjcStrCpy( dlgtree, SETTINGS_INPUT_TOOLBAR_BGCOLOR,
        							spare );
        			is_button = true;
        			OBJ_REDRAW(SETTINGS_INPUT_TOOLBAR_BGCOLOR);
        			break;
        */
        /*
        		case SETTINGS_BT_TOOLBAR_ICONSET:
        			objc_offset( FORM(win), SETTINGS_BT_TOOLBAR_ICONSET, &x, &y );
        			tmp = toolbar_iconset_popup(x,y);
        			if( tmp != NULL ){
        				ObjcStrCpy( dlgtree, SETTINGS_BT_TOOLBAR_ICONSET, tmp );
        			}
        			is_button = true;
        			break;
        */
    case SETTINGS_INC_MEM_CACHE:
    case SETTINGS_DEC_MEM_CACHE:
        if( index == SETTINGS_DEC_MEM_CACHE )
            tmp_option_memory_cache_size -= 0.1;
        else
            tmp_option_memory_cache_size += 0.1;

        if( tmp_option_memory_cache_size < 0.5 )
            tmp_option_memory_cache_size = 0.5;
        if( tmp_option_memory_cache_size > 999.9 )
            tmp_option_memory_cache_size = 999.9;
        snprintf( spare, 255, "%03.1f", tmp_option_memory_cache_size );
        set_text( SETTINGS_STR_MAX_MEM_CACHE, spare, 5 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_STR_MAX_MEM_CACHE);
        break;

    case SETTINGS_INC_CACHED_CONNECTIONS:
    case SETTINGS_DEC_CACHED_CONNECTIONS:
        if( index == SETTINGS_INC_CACHED_CONNECTIONS )
            tmp_option_max_cached_fetch_handles += 1;
        else
            tmp_option_max_cached_fetch_handles -= 1;
        if( tmp_option_max_cached_fetch_handles > 31 )
            tmp_option_max_cached_fetch_handles = 31;

        snprintf( spare, 255, "%02d", tmp_option_max_cached_fetch_handles );
        set_text( SETTINGS_EDIT_MAX_CACHED_CONNECTIONS, spare, 2 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_EDIT_MAX_CACHED_CONNECTIONS);
        break;

    case SETTINGS_INC_MAX_FETCHERS:
    case SETTINGS_DEC_MAX_FETCHERS:
        if( index == SETTINGS_INC_MAX_FETCHERS )
            tmp_option_max_fetchers += 1;
        else
            tmp_option_max_fetchers -= 1;
        if( tmp_option_max_fetchers > 31 )
            tmp_option_max_fetchers = 31;

        snprintf( spare, 255, "%02d", tmp_option_max_fetchers );
        set_text( SETTINGS_EDIT_MAX_FETCHERS, spare, 2 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_EDIT_MAX_FETCHERS);
        break;

    case SETTINGS_INC_MAX_FETCHERS_PER_HOST:
    case SETTINGS_DEC_MAX_FETCHERS_PER_HOST:
        if( index == SETTINGS_INC_MAX_FETCHERS_PER_HOST )
            tmp_option_max_fetchers_per_host += 1;
        else
            tmp_option_max_fetchers_per_host -= 1;
        if( tmp_option_max_fetchers_per_host > 31 )
            tmp_option_max_fetchers_per_host = 31;

        snprintf( spare, 255, "%02d", tmp_option_max_fetchers_per_host );
        set_text( SETTINGS_EDIT_MAX_FETCHERS_PER_HOST, spare, 2 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_EDIT_MAX_FETCHERS_PER_HOST);
        break;

    case SETTINGS_INC_HISTORY_AGE:
    case SETTINGS_DEC_HISTORY_AGE:
        if( index == SETTINGS_INC_HISTORY_AGE )
            tmp_option_expire_url += 1;
        else
            tmp_option_expire_url -= 1;

        if( tmp_option_expire_url > 99 )
            tmp_option_expire_url =  0;

        snprintf( spare, 255, "%02d", tmp_option_expire_url );
        set_text( SETTINGS_EDIT_HISTORY_AGE, spare, 2 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_EDIT_HISTORY_AGE);
        break;

    case SETTINGS_INC_GIF_DELAY:
    case SETTINGS_DEC_GIF_DELAY:
        if( index == SETTINGS_INC_GIF_DELAY )
            tmp_option_minimum_gif_delay += 0.1;
        else
            tmp_option_minimum_gif_delay -= 0.1;

        if( tmp_option_minimum_gif_delay < 0.1 )
            tmp_option_minimum_gif_delay = 0.1;
        if( tmp_option_minimum_gif_delay > 9.0 )
            tmp_option_minimum_gif_delay = 9.0;
        snprintf( spare, 255, "%01.1f", tmp_option_minimum_gif_delay );
        set_text( SETTINGS_EDIT_MIN_GIF_DELAY, spare, 3 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_EDIT_MIN_GIF_DELAY);
        break;

    case SETTINGS_INC_MIN_FONT_SIZE:
    case SETTINGS_DEC_MIN_FONT_SIZE:
        if( index == SETTINGS_INC_MIN_FONT_SIZE )
            tmp_option_font_min_size += 1;
        else
            tmp_option_font_min_size -= 1;

        if( tmp_option_font_min_size > 500 )
            tmp_option_font_min_size = 500;
        if( tmp_option_font_min_size < 10 )
            tmp_option_font_min_size = 10;

        snprintf( spare, 255, "%03d", tmp_option_font_min_size );
        set_text( SETTINGS_EDIT_MIN_FONT_SIZE, spare, 3 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_EDIT_MIN_FONT_SIZE);
        break;

    case SETTINGS_INC_DEF_FONT_SIZE:
    case SETTINGS_DEC_DEF_FONT_SIZE:
        if( index == SETTINGS_INC_DEF_FONT_SIZE )
            tmp_option_font_size += 1;
        else
            tmp_option_font_size -= 1;

        if( tmp_option_font_size > 999 )
            tmp_option_font_size = 999;
        if( tmp_option_font_size < 50 )
            tmp_option_font_size = 50;

        snprintf( spare, 255, "%03d", tmp_option_font_size );
        set_text( SETTINGS_EDIT_DEF_FONT_SIZE, spare, 3 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_EDIT_DEF_FONT_SIZE);
        break;

    case SETTINGS_INC_INCREMENTAL_REFLOW:
    case SETTINGS_DEC_INCREMENTAL_REFLOW:
        if( index == SETTINGS_INC_INCREMENTAL_REFLOW )
            tmp_option_min_reflow_period += 1;
        else
            tmp_option_min_reflow_period -= 1;

        if( tmp_option_min_reflow_period > 9999 )
            tmp_option_min_reflow_period = 10;

        snprintf( spare, 255, "%04d", tmp_option_min_reflow_period );
        set_text( SETTINGS_EDIT_MIN_REFLOW_PERIOD, spare, 4 );
        is_button = true;
        OBJ_REDRAW(SETTINGS_EDIT_MIN_REFLOW_PERIOD);
        break;

    default:
        break;
    }

    if( is_button ) {
        // remove selection indicator from button element:
        OBJ_UNCHECK(index);
        OBJ_REDRAW(index);
    }
}
Esempio n. 7
0
static short handle_event(GUIWIN *win, EVMULT_OUT *ev_out, short msg[8])
{
	struct core_window *tv=NULL;
	GRECT tb_area;
	GUIWIN * gemtk_win;
	struct atari_sslcert_viewer_s *cvwin = NULL;
	short retval = 0;
	OBJECT *toolbar;

	NSLOG(netsurf, INFO, "win %p", win);

	if(ev_out->emo_events & MU_MESAG){
		switch (msg[0]) {

		case WM_TOOLBAR:
			toolbar = gemtk_obj_get_tree(TOOLBAR_SSL_CERT);
			NSLOG(netsurf, INFO, "CERTVIEWER WM_TOOLBAR");
			tv = (struct core_window*) gemtk_wm_get_user_data(win);
			assert(tv);
			cvwin = (struct atari_sslcert_viewer_s *)
				atari_treeview_get_user_data(tv);
			switch	(msg[4]) {

			case TOOLBAR_SSL_CERT_TRUSTED:

				if (toolbar[msg[4]].ob_state & OS_SELECTED) {

				} else {

				}
				break;
			}


			gemtk_win = atari_treeview_get_gemtk_window(tv);
			assert(gemtk_win);
			//gemtk_obj_get_tree(TOOLBAR_HOTLIST)[msg[4]].ob_state &= ~OS_SELECTED;
			atari_treeview_get_grect(tv, TREEVIEW_AREA_TOOLBAR, &tb_area);
			evnt_timer(150);
			gemtk_wm_exec_redraw(gemtk_win, &tb_area);
			retval = 1;
			break;

		case WM_CLOSED:
			// TODO set perrmissions
			toolbar = gemtk_obj_get_tree(TOOLBAR_SSL_CERT);
			tv = (struct core_window*) gemtk_wm_get_user_data(win);
			assert(tv);
			cvwin = (struct atari_sslcert_viewer_s *)
				atari_treeview_get_user_data(tv);
			if (toolbar[TOOLBAR_SSL_CERT_TRUSTED].ob_state & OS_SELECTED) {
				sslcert_viewer_accept(cvwin->ssl_session_data);
			} else {
				sslcert_viewer_reject(cvwin->ssl_session_data);
			}
			atari_sslcert_viewer_destroy(cvwin);
			retval = 1;
			break;

		default: break;
		}
	}

	return(retval);
}
Esempio n. 8
0
static void gui_init(int argc, char** argv)
{
    char buf[PATH_MAX];
    OBJECT * cursors;

    atari_find_resource(buf, "netsurf.rsc", "./res/netsurf.rsc");
    LOG(("%s ", (char*)&buf));
    if (rsrc_load(buf)==0) {
        die("Uable to open GEM Resource file!");
    }

    wind_get_grect(0, WF_WORKXYWH, &desk_area);

    create_cursor(0, POINT_HAND, NULL, &gem_cursors.hand );
    create_cursor(0, TEXT_CRSR,  NULL, &gem_cursors.ibeam );
    create_cursor(0, THIN_CROSS, NULL, &gem_cursors.cross);
    create_cursor(0, BUSY_BEE, NULL, &gem_cursors.wait);
    create_cursor(0, ARROW, NULL, &gem_cursors.arrow);
    create_cursor(0, OUTLN_CROSS, NULL, &gem_cursors.sizeall);
    create_cursor(0, OUTLN_CROSS, NULL, &gem_cursors.sizenesw);
    create_cursor(0, OUTLN_CROSS, NULL, &gem_cursors.sizenwse);
    cursors = gemtk_obj_get_tree(CURSOR);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_APPSTART,
                  cursors, &gem_cursors.appstarting);
    gem_set_cursor( &gem_cursors.appstarting );
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_SIZEWE,
                  cursors, &gem_cursors.sizewe);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_SIZENS,
                  cursors, &gem_cursors.sizens);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_NODROP,
                  cursors, &gem_cursors.nodrop);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_DENY,
                  cursors, &gem_cursors.deny);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_MENU,
                  cursors, &gem_cursors.menu);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_HELP,
                  cursors, &gem_cursors.help);

    LOG(("Enabling core select menu"));
    nsoption_set_bool(core_select_menu, true);

    LOG(("Loading url.db from: %s", nsoption_charp(url_file) ));
    if( strlen(nsoption_charp(url_file)) ) {
        urldb_load(nsoption_charp(url_file));
    }

    LOG(("Loading cookies from: %s", nsoption_charp(cookie_file) ));
    if( strlen(nsoption_charp(cookie_file)) ) {
        urldb_load_cookies(nsoption_charp(cookie_file));
    }

    if (process_cmdline(argc,argv) != true)
        die("unable to process command line.\n");

    LOG(("Initializing NKC..."));
    nkc_init();


    LOG(("Initializing plotters..."));
    plot_init(nsoption_charp(atari_font_driver));

    tree_set_icon_dir(nsoption_charp(tree_icons_path));

    aes_event_in.emi_m1leave = MO_LEAVE;
    aes_event_in.emi_m1.g_w = 1;
    aes_event_in.emi_m1.g_h = 1;
    //next_poll = clock() + (CLOCKS_PER_SEC>>3);
}
Esempio n. 9
0
File: gui.c Progetto: mmuman/NetSurf
/**
 * Initialise atari gui.
 */
static void gui_init(int argc, char** argv)
{
    char buf[PATH_MAX];
    OBJECT * cursors;

    atari_find_resource(buf, "netsurf.rsc", "./res/netsurf.rsc");
    LOG("Using RSC file: %s ", (char *)&buf);
    if (rsrc_load(buf)==0) {

	char msg[1024];

	snprintf(msg, 1024, "Unable to open GEM Resource file (%s)!", buf);
	die(msg);
    }

    wind_get_grect(0, WF_WORKXYWH, &desk_area);

    create_cursor(0, POINT_HAND, NULL, &gem_cursors.hand );
    create_cursor(0, TEXT_CRSR,  NULL, &gem_cursors.ibeam );
    create_cursor(0, THIN_CROSS, NULL, &gem_cursors.cross);
    create_cursor(0, BUSY_BEE, NULL, &gem_cursors.wait);
    create_cursor(0, ARROW, NULL, &gem_cursors.arrow);
    create_cursor(0, OUTLN_CROSS, NULL, &gem_cursors.sizeall);
    create_cursor(0, OUTLN_CROSS, NULL, &gem_cursors.sizenesw);
    create_cursor(0, OUTLN_CROSS, NULL, &gem_cursors.sizenwse);
    cursors = gemtk_obj_get_tree(CURSOR);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_APPSTART,
		  cursors, &gem_cursors.appstarting);
    gem_set_cursor( &gem_cursors.appstarting );
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_SIZEWE,
		  cursors, &gem_cursors.sizewe);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_SIZENS,
		  cursors, &gem_cursors.sizens);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_NODROP,
		  cursors, &gem_cursors.nodrop);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_DENY,
		  cursors, &gem_cursors.deny);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_MENU,
		  cursors, &gem_cursors.menu);
    create_cursor(MFORM_EX_FLAG_USERFORM, CURSOR_HELP,
		  cursors, &gem_cursors.help);

    LOG("Enabling core select menu");
    nsoption_set_bool(core_select_menu, true);

    LOG("Loading url.db from: %s", nsoption_charp(url_file));
    if( strlen(nsoption_charp(url_file)) ) {
	urldb_load(nsoption_charp(url_file));
    }

    LOG("Loading cookies from: %s", nsoption_charp(cookie_file));
    if( strlen(nsoption_charp(cookie_file)) ) {
	urldb_load_cookies(nsoption_charp(cookie_file));
    }

    if (process_cmdline(argc,argv) != true)
	die("unable to process command line.\n");

    LOG("Initializing NKC...");
    nkc_init();

    LOG("Initializing plotters...");
    plot_init(nsoption_charp(atari_font_driver));

    aes_event_in.emi_m1leave = MO_LEAVE;
    aes_event_in.emi_m1.g_w = 1;
    aes_event_in.emi_m1.g_h = 1;
    //next_poll = clock() + (CLOCKS_PER_SEC>>3);

    deskmenu_init();
    menu_register( -1, theapp);
    if (sys_type() & (SYS_MAGIC|SYS_NAES|SYS_XAAES)) {
	menu_register( _AESapid, (char*)"  NetSurf ");
    }
    gemtk_wm_init();

    /* Initialize the specific treeview windows: */
    atari_global_history_init();
    atari_hotlist_init();
    atari_cookie_manager_init();

    /* Initialize the toolbar framework: */
    toolbar_init();
}