From ae621334a6f297eeb628edfa0bcdf83c87a3e99a Mon Sep 17 00:00:00 2001 From: Michael Drake Date: Mon, 19 May 2014 17:00:53 +0100 Subject: Fix line endings. --- atari/ctxmenu.c | 496 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 248 insertions(+), 248 deletions(-) (limited to 'atari/ctxmenu.c') diff --git a/atari/ctxmenu.c b/atari/ctxmenu.c index aeed47560..f89d1f35f 100644 --- a/atari/ctxmenu.c +++ b/atari/ctxmenu.c @@ -1,117 +1,117 @@ -/* - * Copyright 2010 Ole Loots - * - * This file is part of NetSurf, http://www.netsurf-browser.org/ - * - * NetSurf is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. - * - * NetSurf is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include -#include -#include -#include -#include -#include +/* + * Copyright 2010 Ole Loots + * + * This file is part of NetSurf, http://www.netsurf-browser.org/ + * + * NetSurf is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * NetSurf is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include +#include +#include +#include +#include +#include #include #include #include #include -#include - -#include "desktop/gui.h" -#include "desktop/netsurf.h" -#include "desktop/browser.h" -#include "desktop/browser_private.h" -#include "desktop/mouse.h" -#include "desktop/textinput.h" -#include "content/content.h" -#include "content/hlcache.h" -#include "content/urldb.h" -#include "css/css.h" -#include "utils/log.h" +#include + +#include "desktop/gui.h" +#include "desktop/netsurf.h" +#include "desktop/browser.h" +#include "desktop/browser_private.h" +#include "desktop/mouse.h" +#include "desktop/textinput.h" +#include "content/content.h" +#include "content/hlcache.h" +#include "content/urldb.h" +#include "css/css.h" +#include "utils/log.h" #include "utils/messages.h" -#include "utils/utils.h" - -#include "atari/gui.h" -#include "atari/rootwin.h" -#include "atari/misc.h" -#include "atari/clipboard.h" -#include "utils/nsoption.h" -#include "atari/res/netsurf.rsh" -#include "atari/ctxmenu.h" - - -#define CNT_INVALID 0 -#define CNT_BROWSER 64 -#define CNT_HREF 128 -#define CNT_SELECTION 256 -#define CNT_INTERACTIVE 512 -#define CNT_IMG 1024 - +#include "utils/utils.h" + +#include "atari/gui.h" +#include "atari/rootwin.h" +#include "atari/misc.h" +#include "atari/clipboard.h" +#include "utils/nsoption.h" +#include "atari/res/netsurf.rsh" +#include "atari/ctxmenu.h" + + +#define CNT_INVALID 0 +#define CNT_BROWSER 64 +#define CNT_HREF 128 +#define CNT_SELECTION 256 +#define CNT_INTERACTIVE 512 +#define CNT_IMG 1024 + bool gui_window_get_scroll(struct gui_window *w, int *sx, int *sy); - -struct s_context_info { - unsigned long flags; - struct contextual_content ccdata; -}; - -struct s_context_info ctxinfo; - -static struct s_context_info * get_context_info( struct gui_window * gw, short mx, short my ) -{ - hlcache_handle *h; - GRECT area; - struct contextual_content ccdata; + +struct s_context_info { + unsigned long flags; + struct contextual_content ccdata; +}; + +struct s_context_info ctxinfo; + +static struct s_context_info * get_context_info( struct gui_window * gw, short mx, short my ) +{ + hlcache_handle *h; + GRECT area; + struct contextual_content ccdata; struct browser_window * bw = gw->browser->bw; - int sx, sy; - - h = bw->current_content; + int sx, sy; + + h = bw->current_content; ctxinfo.flags = 0; window_get_grect(gw->root, BROWSER_AREA_CONTENT, &area); if (POINT_WITHIN(mx, my, area)) { - mx -= area.g_x; + mx -= area.g_x; my -= area.g_y; - if (!bw->current_content || content_get_type(h) != CONTENT_HTML){ - return(&ctxinfo); - } - - ctxinfo.flags |= CNT_BROWSER; + if (!bw->current_content || content_get_type(h) != CONTENT_HTML){ + return(&ctxinfo); + } + + ctxinfo.flags |= CNT_BROWSER; memset( &ctxinfo.ccdata, sizeof(struct contextual_content), 0 ); gui_window_get_scroll(gw, &sx, &sy); - - browser_window_get_contextual_content( gw->browser->bw, mx+sx, my+sy, + + browser_window_get_contextual_content( gw->browser->bw, mx+sx, my+sy, (struct contextual_content*)&ctxinfo.ccdata); - - if( ctxinfo.ccdata.link_url ){ - ctxinfo.flags |= CNT_HREF; - } - if( ctxinfo.ccdata.object) { - if( content_get_type(ctxinfo.ccdata.object) == CONTENT_IMAGE ){ - ctxinfo.flags |= CNT_IMG; - } - } - if ( ctxinfo.ccdata.form_features == CTX_FORM_TEXT ) + + if( ctxinfo.ccdata.link_url ){ + ctxinfo.flags |= CNT_HREF; + } + if( ctxinfo.ccdata.object) { + if( content_get_type(ctxinfo.ccdata.object) == CONTENT_IMAGE ){ + ctxinfo.flags |= CNT_IMG; + } + } + if ( ctxinfo.ccdata.form_features == CTX_FORM_TEXT ) ctxinfo.flags |= (CNT_INTERACTIVE | CNT_SELECTION); } return(&ctxinfo); - - + + } /*** @@ -148,60 +148,60 @@ static char * get_tmpfilename(const char * prefix, const char * suffix) } while(file_exists(tmpfilename)); return(tmpfilename); -} - -//TODO: do not open popup for gui_window, but for a rootwin? -void context_popup(struct gui_window * gw, short x, short y) -{ - -#define POP_FIRST_ITEM POP_CTX_CUT_SEL -#define POP_LAST_ITEM POP_CTX_SAVE_LINK_AS - - OBJECT * pop; - int choice; - struct s_context_info * ctx; - unsigned long size; - const char * data; - FILE * fp_tmpfile; +} + +//TODO: do not open popup for gui_window, but for a rootwin? +void context_popup(struct gui_window * gw, short x, short y) +{ + +#define POP_FIRST_ITEM POP_CTX_CUT_SEL +#define POP_LAST_ITEM POP_CTX_SAVE_LINK_AS + + OBJECT * pop; + int choice; + struct s_context_info * ctx; + unsigned long size; + const char * data; + FILE * fp_tmpfile; char cmdline[128]; /* skip first byte, which must hold length of commandline: */ - char * tempfile = &cmdline[1]; - int err = 0; + char * tempfile = &cmdline[1]; + int err = 0; char * editor, *lastslash; - MENU pop_menu, me_data; - - pop = gemtk_obj_get_tree( POP_CTX ); - if (pop == NULL) - return; - ctx = get_context_info(gw, x, y); - - /* - Disable all items by default: - */ - for( choice = POP_FIRST_ITEM; choice<=POP_LAST_ITEM; choice++ ){ - SET_BIT(pop[ choice ].ob_state, OS_DISABLED, 1); - } - - if( ctx->flags & CNT_INTERACTIVE ){ - SET_BIT(pop[ POP_CTX_PASTE_SEL ].ob_state, OS_DISABLED, 0); - } - - if( (ctx->flags & CNT_BROWSER) ){ - SET_BIT(pop[ POP_CTX_SELECT_ALL ].ob_state, OS_DISABLED, 0); - SET_BIT(pop[ POP_CTX_COPY_SEL ].ob_state, OS_DISABLED, 0); - SET_BIT(pop[ POP_CTX_VIEW_SOURCE ].ob_state, OS_DISABLED, 0); + MENU pop_menu, me_data; + + pop = gemtk_obj_get_tree( POP_CTX ); + if (pop == NULL) + return; + ctx = get_context_info(gw, x, y); + + /* + Disable all items by default: + */ + for( choice = POP_FIRST_ITEM; choice<=POP_LAST_ITEM; choice++ ){ + SET_BIT(pop[ choice ].ob_state, OS_DISABLED, 1); } - - if( ctx->flags & CNT_HREF ){ - SET_BIT(pop[ POP_CTX_COPY_LINK ].ob_state, OS_DISABLED, 0); - SET_BIT(pop[ POP_CTX_OPEN_NEW ].ob_state, OS_DISABLED, 0); - SET_BIT(pop[ POP_CTX_SAVE_LINK_AS ].ob_state, OS_DISABLED, 0); - } - - if( ctx->flags & CNT_IMG ){ - SET_BIT(pop[ POP_CTX_SAVE_AS ].ob_state, OS_DISABLED, 0); - SET_BIT(pop[ POP_CTX_COPY_URL ].ob_state, OS_DISABLED, 0); - SET_BIT(pop[ POP_CTX_OPEN_NEW ].ob_state, OS_DISABLED, 0); + + if( ctx->flags & CNT_INTERACTIVE ){ + SET_BIT(pop[ POP_CTX_PASTE_SEL ].ob_state, OS_DISABLED, 0); + } + + if( (ctx->flags & CNT_BROWSER) ){ + SET_BIT(pop[ POP_CTX_SELECT_ALL ].ob_state, OS_DISABLED, 0); + SET_BIT(pop[ POP_CTX_COPY_SEL ].ob_state, OS_DISABLED, 0); + SET_BIT(pop[ POP_CTX_VIEW_SOURCE ].ob_state, OS_DISABLED, 0); + } + + if( ctx->flags & CNT_HREF ){ + SET_BIT(pop[ POP_CTX_COPY_LINK ].ob_state, OS_DISABLED, 0); + SET_BIT(pop[ POP_CTX_OPEN_NEW ].ob_state, OS_DISABLED, 0); + SET_BIT(pop[ POP_CTX_SAVE_LINK_AS ].ob_state, OS_DISABLED, 0); + } + + if( ctx->flags & CNT_IMG ){ + SET_BIT(pop[ POP_CTX_SAVE_AS ].ob_state, OS_DISABLED, 0); + SET_BIT(pop[ POP_CTX_COPY_URL ].ob_state, OS_DISABLED, 0); + SET_BIT(pop[ POP_CTX_OPEN_NEW ].ob_state, OS_DISABLED, 0); } // point mn_tree tree to states popup: @@ -209,119 +209,119 @@ void context_popup(struct gui_window * gw, short x, short y) pop_menu.mn_menu = 0; pop_menu.mn_item = POP_CTX_CUT_SEL; pop_menu.mn_scroll = SCROLL_NO; - pop_menu.mn_keystate = 0; + pop_menu.mn_keystate = 0; menu_popup(&pop_menu, x, y, &me_data); - choice = me_data.mn_item; - - switch( choice ){ - case POP_CTX_COPY_SEL: - browser_window_key_press(gw->browser->bw, KEY_COPY_SELECTION); - break; - - case POP_CTX_CUT_SEL: - browser_window_key_press(gw->browser->bw, KEY_CUT_SELECTION); - break; - + choice = me_data.mn_item; + + switch( choice ){ + case POP_CTX_COPY_SEL: + browser_window_key_press(gw->browser->bw, KEY_COPY_SELECTION); + break; + + case POP_CTX_CUT_SEL: + browser_window_key_press(gw->browser->bw, KEY_CUT_SELECTION); + break; + case POP_CTX_PASTE_SEL: - browser_window_key_press(gw->browser->bw, KEY_PASTE); - break; - - case POP_CTX_SELECT_ALL: - browser_window_key_press(gw->browser->bw, KEY_SELECT_ALL); - break; - - case POP_CTX_SAVE_AS: - if (ctx->ccdata.object != NULL) { - if( hlcache_handle_get_url(ctx->ccdata.object) != NULL ) { - browser_window_navigate( - gw->browser->bw, - hlcache_handle_get_url(ctx->ccdata.object), - hlcache_handle_get_url(gw->browser->bw->current_content), - BW_NAVIGATE_DOWNLOAD, - NULL, - NULL, - NULL - ); - } - } - - case POP_CTX_SAVE_LINK_AS: - if (ctx->ccdata.link_url != NULL) { - nsurl *url; + browser_window_key_press(gw->browser->bw, KEY_PASTE); + break; + + case POP_CTX_SELECT_ALL: + browser_window_key_press(gw->browser->bw, KEY_SELECT_ALL); + break; + + case POP_CTX_SAVE_AS: + if (ctx->ccdata.object != NULL) { + if( hlcache_handle_get_url(ctx->ccdata.object) != NULL ) { + browser_window_navigate( + gw->browser->bw, + hlcache_handle_get_url(ctx->ccdata.object), + hlcache_handle_get_url(gw->browser->bw->current_content), + BW_NAVIGATE_DOWNLOAD, + NULL, + NULL, + NULL + ); + } + } + + case POP_CTX_SAVE_LINK_AS: + if (ctx->ccdata.link_url != NULL) { + nsurl *url; nserror error; error = nsurl_create(ctx->ccdata.link_url, &url); - if (error == NSERROR_OK) { - error = browser_window_navigate( - gw->browser->bw, - url, - hlcache_handle_get_url(gw->browser->bw->current_content), - BW_NAVIGATE_DOWNLOAD, - NULL, - NULL, - NULL - ); - nsurl_unref(url); - } + if (error == NSERROR_OK) { + error = browser_window_navigate( + gw->browser->bw, + url, + hlcache_handle_get_url(gw->browser->bw->current_content), + BW_NAVIGATE_DOWNLOAD, + NULL, + NULL, + NULL + ); + nsurl_unref(url); + } if (error != NSERROR_OK) { warn_user(messages_get_errorcode(error), 0); } - } - - break; - - case POP_CTX_COPY_URL: - if ((ctx->flags & CNT_IMG) && (ctx->ccdata.object != NULL)) { - if( hlcache_handle_get_url(ctx->ccdata.object) != NULL ){ + } + + break; + + case POP_CTX_COPY_URL: + if ((ctx->flags & CNT_IMG) && (ctx->ccdata.object != NULL)) { + if( hlcache_handle_get_url(ctx->ccdata.object) != NULL ){ scrap_txt_write((char*)nsurl_access( - hlcache_handle_get_url(ctx->ccdata.object))); - } - } - break; - - case POP_CTX_COPY_LINK: - if ((ctx->flags & CNT_HREF) && ctx->ccdata.link_url != NULL) { - scrap_txt_write((char*)ctx->ccdata.link_url); - } - break; - - case POP_CTX_OPEN_NEW: - if ((ctx->flags & CNT_HREF) && ctx->ccdata.link_url) { + hlcache_handle_get_url(ctx->ccdata.object))); + } + } + break; + + case POP_CTX_COPY_LINK: + if ((ctx->flags & CNT_HREF) && ctx->ccdata.link_url != NULL) { + scrap_txt_write((char*)ctx->ccdata.link_url); + } + break; + + case POP_CTX_OPEN_NEW: + if ((ctx->flags & CNT_HREF) && ctx->ccdata.link_url) { nsurl *url; nserror error; - error = nsurl_create(ctx->ccdata.link_url, &url); - if (error == NSERROR_OK) { - error = browser_window_create( - BW_CREATE_HISTORY | BW_CREATE_CLONE, - url, - hlcache_handle_get_url(gw->browser->bw->current_content), - gw->browser->bw, + error = nsurl_create(ctx->ccdata.link_url, &url); + if (error == NSERROR_OK) { + error = browser_window_create( + BW_CREATE_HISTORY | BW_CREATE_CLONE, + url, + hlcache_handle_get_url(gw->browser->bw->current_content), + gw->browser->bw, NULL - ); + ); nsurl_unref(url); } if (error != NSERROR_OK) { warn_user(messages_get_errorcode(error), 0); } - } - break; - - case POP_CTX_VIEW_SOURCE: - editor = nsoption_charp(atari_editor); - if (editor != NULL && strlen(editor)>0) { - data = content_get_source_data(gw->browser->bw->current_content, + } + break; + + case POP_CTX_VIEW_SOURCE: + editor = nsoption_charp(atari_editor); + if (editor != NULL && strlen(editor)>0) { + data = content_get_source_data(gw->browser->bw->current_content, &size); if (size > 0 && data != NULL){ snprintf(tempfile, 127, "%s", get_tmpfilename("ns-", ".html")); /* the GEMDOS cmdline contains the length of the commandline in the first byte: */ cmdline[0] = (unsigned char)strlen(tempfile); - LOG(("Creating temporay source file: %s\n", tempfile)); - fp_tmpfile = fopen(tempfile, "w"); - if (fp_tmpfile != NULL){ - fwrite(data, size, 1, fp_tmpfile); + LOG(("Creating temporay source file: %s\n", tempfile)); + fp_tmpfile = fopen(tempfile, "w"); + if (fp_tmpfile != NULL){ + fwrite(data, size, 1, fp_tmpfile); fclose(fp_tmpfile); // Send SH_WDRAW to notify files changed: @@ -331,22 +331,22 @@ void context_popup(struct gui_window * gw, short x, short y) if(strlen(tempfile)<=125){ shel_write(1, 1, 1, editor, cmdline); } - } else { - printf("Could not open temp file: %s!\n", tempfile ); - } - - } else { - LOG(("Invalid content!")); - } - } else { - form_alert(0, "[1][Set option \"atari_editor\".][OK]"); - } - break; - - default: break; - } - -#undef POP_FIRST_ITEM -#undef POP_LAST_ITEM - -} + } else { + printf("Could not open temp file: %s!\n", tempfile ); + } + + } else { + LOG(("Invalid content!")); + } + } else { + form_alert(0, "[1][Set option \"atari_editor\".][OK]"); + } + break; + + default: break; + } + +#undef POP_FIRST_ITEM +#undef POP_LAST_ITEM + +} -- cgit v1.2.3