[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
lynx-dev multibookmarks & form options (patch)
From: |
Leonid Pauzner |
Subject: |
lynx-dev multibookmarks & form options (patch) |
Date: |
Sat, 15 Aug 1998 18:59:57 +0400 (MSD) |
Hi, I made a kluge to include MBM support from form-based options:
I just made a link href="LYNXOPTIONS://MBM_MENU" like it was in LYPrint.c
and call edit_bookmarks() from postoptions().
One note: MBM changes (seems) became active just when exit menu,
while the OFF/STANDARD/ADVANCED switch became active
like the other options when you "assept changes" with a button.
So the patch against plain dev20
(it does NOT include my other changes, Tom).
Leonid.
diff -u old/lymainlo.c ./lymainlo.c
--- old/lymainlo.c Fri Aug 7 15:48:08 1998
+++ ./lymainlo.c Sat Aug 15 18:18:30 1998
@@ -383,6 +383,9 @@
#ifndef EXP_FORMS_OPTIONS
if (strncmp(newdoc.address, "LYNXDOWNLOAD:", 13))
#else /* EXP_FORMS_OPTIONS */
+ if (!strncmp(newdoc.address, "LYNXOPTIONS://MBM_MENU", 22))
+ LYpush(&curdoc, ForcePush);
+
if (strncmp(newdoc.address, "LYNXDOWNLOAD:", 13) &&
strncmp(newdoc.address, "LYNXOPTIONS:", 12))
#endif /* EXP_FORMS_OPTIONS */
diff -u old/lyoption.c ./lyoption.c
--- old/lyoption.c Fri Aug 7 15:48:12 1998
+++ ./lyoption.c Sat Aug 15 18:41:58 1998
@@ -3133,6 +3133,12 @@
static char * display_string = "display";
+static char * mbm_string = "multi_bookmarks_mode";
+static char * mbm_off_string = "OFF";
+static char * mbm_standard_string = "STANDARD";
+static char * mbm_advanced_string = "ADVANCED";
+static char * single_bookmark_string = "single_bookmark_name";
+
static char * ftp_sort_string = "ftp_sort";
static char * ftp_by_name_string = "ftp_by_name";
static char * ftp_by_type_string = "ftp_by_type";
@@ -3262,6 +3268,23 @@
int i;
BOOLEAN save_all = FALSE;
BOOLEAN need_reload = FALSE;
+ char *link_info = NULL;
+
+
+ /*-------------------------------------------------
+ kluge a link from mbm_menu, the URL was:
+ fprintf(fp0,"<a href=\"LYNXOPTIONS://MBM_MENU\">go mbm menu</a>\n");
+ --------------------------------------------------*/
+
+ StrAllocCopy(link_info, newdoc->address);
+ if (strstr(link_info, "LYNXOPTIONS://MBM_MENU"))
+ {
+ edit_bookmarks();
+ FREE(newdoc->post_data);
+ FREE(data);
+ return(NULLFILE);
+ }
+
data = break_data(newdoc->post_data);
@@ -3301,6 +3324,31 @@
}
/*
+ * multi-bookmarks mode
+ */
+ if (!strcmp(data[i].tag, mbm_string)) {
+ if (!strcmp(data[i].value, mbm_off_string)) {
+ LYMultiBookmarks = FALSE;
+ } else if (!strcmp(data[i].value, mbm_standard_string)) {
+ LYMultiBookmarks = TRUE;
+ LYMBMAdvanced = FALSE;
+ } else if (!strcmp(data[i].value, mbm_advanced_string)) {
+ LYMultiBookmarks = TRUE;
+ LYMBMAdvanced = TRUE;
+ }
+ }
+
+ /*
+ * single bookmarks file name
+ */
+ if (!strcmp(data[i].tag, single_bookmark_string)) {
+ if (strcmp(data[i].value, "")) {
+ FREE(bookmark_page);
+ StrAllocCopy(bookmark_page, data[i].value);
+ }
+ }
+
+ /*
* ftp sort
*/
if (!strcmp(data[i].tag, ftp_sort_string)) {
@@ -3634,6 +3682,39 @@
fprintf(fp0,"<input type=\"text\" name=\"%s\" value=\"%s\">\n",
display_string, (display && display[0])?display:empty_string);
+ /*
+ * multi-bookmarks mode
+ */
+ if (!LYMBMBlocked)
+ {
+ fprintf(fp0,"<%s>Multi-bookmarks:</%s> ", label_string, label_string);
+ fprintf(fp0,"<select name=\"%s\">\n", mbm_string);
+ fprintf(fp0,"<option %s value=\"%s\">OFF</option>\n",
+ (!LYMultiBookmarks)?selected_string:empty_string,
+ mbm_off_string);
+ fprintf(fp0,"<option %s value=\"%s\">STANDARD</option>\n",
+ (LYMultiBookmarks && (!LYMBMAdvanced))?selected_string:empty_string,
+ mbm_standard_string);
+ fprintf(fp0,"<option %s value=\"%s\">ADVANCED</option>\n",
+ (LYMultiBookmarks && LYMBMAdvanced)?selected_string:empty_string,
+ mbm_advanced_string);
+ fprintf(fp0,"</select>\n");
+ }
+
+ /*
+ * bookmarks files menu
+ */
+ if (LYMultiBookmarks) {
+
+ fprintf(fp0,"<%s>Review/edit Bookmarks files:</%s> ", label_string,
label_string);
+ fprintf(fp0,"<a href=\"LYNXOPTIONS://MBM_MENU\">go mbm menu</a>\n");
+
+ } else {
+ fprintf(fp0,"<%s>Bookmarks file:</%s> ", label_string, label_string);
+ fprintf(fp0,"<input type=\"text\" name=\"%s\" value=\"%s\">\n",
+ single_bookmark_string, (bookmark_page &&
bookmark_page[0])?bookmark_page:empty_string);
+ }
+
/*
* ftp sort
*/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- lynx-dev multibookmarks & form options (patch),
Leonid Pauzner <=