From d02a0802cd226cbbf73470dc76a1384f19f10199 Mon Sep 17 00:00:00 2001 From: Fumitoshi UKAI Date: Thu, 5 Dec 2002 16:29:02 +0000 Subject: [w3m-dev 03529] Support of title, accesskey of anchor * anchor.c (putAnchor): arg title, key initialize slave (registerHref): arg title, key (registerName): title = NULL, key = '\0' (registerForm): title = NULL, key = '\0' (_put_anchor_news): title = NULL, key = '\0' (_put_anchor_all): title = NULL, key = '\0' (addMultirowsImg): register title, accesskey (addMultirowsForm): title = NULL, key = '\0' (getAnchorText): added * display.c (displayBuffer): show title if any * file.c (set_breakpoint): use bcopy (back_to_breakpoint): use bcopy (flushline): s/anchor/anchor.url/ s/anchor_hseq/anchor.hseq/ s/anchor_target/anchor.target/ add anchor.* (close_effect0): s/anchor/anchor.url/ s/anchor_hseq/anchor.hseq/ (close_anchor): use bzero (process_img): ATTR_TITLE, (HTMLtagproc1): s/anchor/anchor.url/ target, referer, title, accesskey, hseq (HTMLlineproc2body): ATTR_TITLE, ATTR_ACCESSKEY (init_henv): use bzero * fm.h (Anchor): add title, accesskey, slave (Breakpoint): use Anchor (struct readbuffer): use Anchor * funcname.tab (ACCESSKEY): added (LINK_MENU): added * html.c (ALST_A): add ATTR_TITLE, ATTR_ACCESSKEY (ALST_IMG): add ATTR_TITLE (ALST_IMG_ALT): add ATTR_TITLE (AttrMAP): add accesskey, renum * html.h (ATTR_ACCESSKEY): added (ATTR_*): renum 50->60 * main.c (linkMn): added (accessKey): added * menu.c (LinkMenu): deleted (LinkV): deleted (initLinkMenu): deleted (lmGoURL): deleted (popupMenu): delete initLinkMenu() (initMenu): delete Link (link_menu): added (accesskey_menu): added * proto.h (linkMn): added (link_menu): added (accessKey): added (accesskey_menu): added (putAnchor): arg title, key (registerHref): arg title, key (registerImg): arg title (getAnchorText): added * doc/README.func (ACCESSKEY): added (LINK_MENU): added * doc-jp/README.func (ACCESSKEY): added (LINK_MENU): added * scripts/w3mhelp.cgi.in (Hyperlink operation): add linkMn accessKey From: Hironori SAKAMOTO --- main.c | 43 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) (limited to 'main.c') diff --git a/main.c b/main.c index 1512819..98ff976 100644 --- a/main.c +++ b/main.c @@ -1,4 +1,4 @@ -/* $Id: main.c,v 1.159 2002/12/04 16:45:41 ukai Exp $ */ +/* $Id: main.c,v 1.160 2002/12/05 16:29:08 ukai Exp $ */ #define MAINPROGRAM #include "fm.h" #include @@ -4153,6 +4153,47 @@ follow_map(struct parsed_tagarg *arg) #endif } +#ifdef USE_MENU +/* link menu */ +void +linkMn(void) +{ + LinkList *l = link_menu(Currentbuf); + ParsedURL p_url; + + if (!l || !l->url) + return; + if (*(l->url) == '#') { + gotoLabel(l->url + 1); + return; + } + parseURL2(l->url, &p_url, baseURL(Currentbuf)); + pushHashHist(URLHist, parsedURL2Str(&p_url)->ptr); + cmd_loadURL(l->url, baseURL(Currentbuf), + parsedURL2Str(&Currentbuf->currentURL)->ptr); +} + +/* accesskey */ +void +accessKey(void) +{ + Anchor *a; + BufferPoint *po; + + if (!Currentbuf->href || !Currentbuf->hmarklist) + return; + a = accesskey_menu(Currentbuf); + if (!a || a->hseq < 0) + return; + po = &Currentbuf->hmarklist->marks[a->hseq]; + gotoLine(Currentbuf, po->line); + Currentbuf->pos = po->pos; + arrangeCursor(Currentbuf); + onA(); + followA(); +} +#endif + #ifdef USE_COOKIE /* cookie list */ void -- cgit v1.2.3