Mercurial > dillo_port1.3
view src/bookmark.c @ 1173:717058f63429
Removed the experimental font size adjuster patch (it slipped in by mistake)
author | Jorge Arellano Cid <jcid@dillo.org> |
---|---|
date | Mon, 15 Jun 2009 17:50:10 -0400 |
parents | d9e7b35430de |
children | 94bca98ac942 |
line wrap: on
line source
/* * File: bookmark.c * * Copyright 2002-2007 Jorge Arellano Cid <jcid@dillo.org> * * This program 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; either version 3 of the License, or * (at your option) any later version. */ #include <errno.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include "msg.h" #include "history.h" #include "capi.h" #include "bookmark.h" /* for prototypes */ #include "../dpip/dpip.h" /* * Have a short chat with the bookmarks server, * and finally ask it to add a new bookmark. * (this is an example of dpi chat) */ void a_Bookmarks_chat_add(BrowserWindow *Bw, char *Cmd, char *answer) { static char *cmd1 = NULL, *cmd2 = NULL, *cmd3 = NULL, *cmd4 = NULL; static BrowserWindow *bw = NULL; if (!cmd1) { cmd1 = a_Dpip_build_cmd("cmd=%s msg=%s", "chat", "Hi server"); cmd2 = a_Dpip_build_cmd("cmd=%s msg=%s", "chat", "I want to set a bookmark"); cmd3 = a_Dpip_build_cmd("cmd=%s msg=%s", "chat", "Sure it is!"); } _MSG("a_Bookmarks_chat_add\n answer=%s\n", answer ? answer : "(null)"); if (Bw) bw = Bw; if (!cmd4 && Cmd) cmd4 = dStrdup(Cmd); if (!answer) { a_Capi_dpi_send_cmd(NULL, bw, cmd1, "bookmarks", 1); } else { /* we have an answer */ if (answer) { if (*answer == 'H') { /* "Hi browser" */ a_Capi_dpi_send_cmd(NULL, bw, cmd2, "bookmarks", 0); } else if (*answer == 'I') { /* "Is it worth?" */ a_Capi_dpi_send_cmd(NULL, bw, cmd3, "bookmarks", 0); } else if (*answer == 'O') { /* "OK, send it!" */ a_Capi_dpi_send_cmd(NULL, bw, cmd4, "bookmarks", 0); dFree(cmd4); cmd4 = NULL; } } } } /* * Add the new bookmark through the bookmarks server */ void a_Bookmarks_add(BrowserWindow *bw, const DilloUrl *url) { const char *title; char *cmd; dReturn_if_fail(url != NULL); /* if the page has no title, we'll use the url string */ title = a_History_get_title_by_url(url, 1); cmd = a_Dpip_build_cmd("cmd=%s url=%s title=%s", "add_bookmark", URL_STR(url), title); a_Bookmarks_chat_add(bw, cmd, NULL); dFree(cmd); }