From 712aae808ee329cafdcb92e78f145a50c78b89b8 Mon Sep 17 00:00:00 2001 From: Patanjali Somayaji Date: Wed, 26 Mar 2003 17:05:07 +0000 Subject: Added help support, help manual and scrollkeeper updates 2003-03-26 Patanjali Somayaji Added help support, help manual and scrollkeeper updates * configure.in (help/Makefile and help/C/Makefile for AC_OUTPUT()) * makefile.am (added "help" to SUBDIRS in Makefile.am) * omf.make (added) * xmldocs.make (added) * omf-install/Makefile.am (added) * help/Makefile.am (added) * help/C/epiphany.xml (manual xml added) * help/C/legal.xml (added) * help/C/epiphany-C.omf (omf file added) * help/C/Makefile.am (added) * help/C/figures/ephy-screenshot.png (added) * src/window-commands.c (added handler code to show manual) --- ChangeLog | 17 +++ Makefile.am | 2 +- configure.in | 2 + help/C/Makefile.am | 7 ++ help/C/epiphany-C.omf | 31 ++++++ help/C/epiphany.xml | 217 +++++++++++++++++++++++++++++++++++++ help/C/figures/ephy-screenshot.png | Bin 0 -> 40200 bytes help/C/legal.xml | 76 +++++++++++++ help/Makefile.am | 1 + omf-install/Makefile.am | 33 ++++++ omf.make | 53 +++++++++ src/window-commands.c | 28 ++++- xmldocs.make | 95 ++++++++++++++++ 13 files changed, 560 insertions(+), 2 deletions(-) create mode 100644 help/C/Makefile.am create mode 100644 help/C/epiphany-C.omf create mode 100644 help/C/epiphany.xml create mode 100644 help/C/figures/ephy-screenshot.png create mode 100644 help/C/legal.xml create mode 100644 help/Makefile.am create mode 100644 omf-install/Makefile.am create mode 100644 omf.make create mode 100644 xmldocs.make diff --git a/ChangeLog b/ChangeLog index fa7545149..ee997ce59 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,20 @@ +2003-03-26 Patanjali Somayaji + + Added help support, help manual and scrollkeeper updates + + * configure.in (help/Makefile and help/C/Makefile for AC_OUTPUT()) + * makefile.am (added "help" to SUBDIRS in Makefile.am) + * omf.make (added) + * xmldocs.make (added) + * omf-install/Makefile.am (added) + * help/Makefile.am (added) + * help/C/epiphany.xml (manual xml added) + * help/C/legal.xml (added) + * help/C/epiphany-C.omf (omf file added) + * help/C/Makefile.am (added) + * help/C/figures/ephy-screenshot.png (added) + * src/window-commands.c (added handler code to show manual) + 2003-03-25 Marco Pesenti Gritti * lib/ephy-dnd.c: diff --git a/Makefile.am b/Makefile.am index 136c4ba21..2277cbae8 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,6 +1,6 @@ ## Process this file with automake to produce Makefile.in -SUBDIRS = lib embed src data po +SUBDIRS = lib embed src data po help EXTRA_DIST = \ intltool-merge.in \ diff --git a/configure.in b/configure.in index dfc6be298..7e252255e 100644 --- a/configure.in +++ b/configure.in @@ -170,5 +170,7 @@ embed/Makefile embed/mozilla/Makefile src/Makefile src/bookmarks/Makefile +help/Makefile +help/C/Makefile po/Makefile.in ]) diff --git a/help/C/Makefile.am b/help/C/Makefile.am new file mode 100644 index 000000000..f4f50f3b8 --- /dev/null +++ b/help/C/Makefile.am @@ -0,0 +1,7 @@ +figdir = figures +docname = epiphany +lang = C +omffile = epiphany-C.omf +entities = legal.xml +include $(top_srcdir)/xmldocs.make +dist-hook: app-dist-hook diff --git a/help/C/epiphany-C.omf b/help/C/epiphany-C.omf new file mode 100644 index 000000000..2e648f16a --- /dev/null +++ b/help/C/epiphany-C.omf @@ -0,0 +1,31 @@ + + + + + Patanjali Somayaji + + + Patanjali Somayaji + + + Epiphany Manual Vx.x + + + 2003-25-03 + + + + + User manual for Epiphany - GNOME2 web browser. + + + user's guide + + + + + + + + diff --git a/help/C/epiphany.xml b/help/C/epiphany.xml new file mode 100644 index 000000000..9b318b8ae --- /dev/null +++ b/help/C/epiphany.xml @@ -0,0 +1,217 @@ + + + + + + Epiphany"> + +]> + + +
+ + + + Epiphany Manual &manrevision; + + + 2003 + Patanjali Somayaji + + + + + + GNOME Documentation Project + + + &legal; + + + + Patanjali + Somayaji + + GNOME Documentation Project +
patanjali@codito.com
+
+
+
+ + + This manual describes version &appversion; of &fr;. + +
+ + + Epiphany + + + epiphany + + + Browser + + + + + + + Introduction + &fr; is a GNOME web browser based on the mozilla rendering + engine. A web browser is more than an application, it is a way + of thinking, it is a way of seeing the world. Epiphany's + principles are simplicity and standards compliance. + + +
+ Epiphany Screenshot + + + + + + +
+ + + + + + Simplicity: + +Epiphany aims to utilize the simplest interface possible for a browser. Keep +in mind that simple does not necessarily mean less powerful. We believe +the commonly used browsers of today are too big, buggy, and bloated. Epiphany +addresses simplicity with a small browser designed for the web -- not mail, +newsgroups, file management, instant messenging or coffee making. The UNIX +philosophy is to design small tools that do one thing, and do it well. + +Epiphany also address simplicity with modularity to make a light and powerful +application. If something can be implemented using external applications +or components, we use it rather than wasting resources in the web browser. +Integration will be achived with CORBA, Bonobo, and the ever popular +command line. + +Mail will be handled with your favorite e-mail application (Evolution, pine, +mutt, balsa, pronto, whatever). + + + + Standards compliance: + +The introduction of non-standard features in browsers could make it difficult +or impossible to use alternative products like Epiphany if developers embrace +them. Alternative (standards complying) browsers could not be able to +fully access web sites making use of these features. The success of +non-standard features can ultimately lead to forcing one browser, on +one platform to dominate the market. Standards compliance ensures the +freedom of choice. Epiphany aims to achieve this. + + + + USER INTERFACE LINES + + + HIG compliance + +Epiphany is going to follow version 1.0 of the gnome +user guidelines. Unless there are very seriuos reasons to make an +exception not following it will be considered a bug. +"I follow the HIG only when I like it" is not a legitimate approach. +Any areas where we diverge from the HIG will communicated +to the HIG team for future consideration. + + + + Gnome integration + +Epiphany's main goal is to be integrated with the gnome desktop. +We dont aim to make epiphany usable outside Gnome. If someone will like +to use it anyway, it's just a plus. Ex: Making people happy that +don't have control center installed is not a good reason +to have mime configuration in epiphany itself. + + + + Simple design + +Feature bloat and user interface clutter is evil :) + + + + Preferences + +We will follow the new gnome policy about preferences. +I think Havoc Pennington already explained it a lot +better than I could ever do. +http://www106.pair.com/rhp/free-software-ui.html + + + + User target + +We target non-technical users by design. +This happens to be 90% of the user population. +(Technical details should not exposed in the interface) +We target web users, we dont directly target web developers. +A few geek-oriented feautures can be kept as +long as they are non-obtrusive. + + + + + + +
+ + + + About &fr; + + &fr; was written by Marco Presenti Gritti + (marco@it.gnome.org). To find more information + about &fr;, please visit the Epiphany + Web page. + + + This manual was written by Patanjali Somayaji + (patanjali@codito.com). + + + This program is distributed under the terms of the GNU + General Public license as published by the Free Software + Foundation; either version 2 of the License, or (at your option) + any later version. A copy of this license can be found at this + link, or in the file + COPYING included with the source code of this program. + + +
diff --git a/help/C/figures/ephy-screenshot.png b/help/C/figures/ephy-screenshot.png new file mode 100644 index 000000000..85bc13983 Binary files /dev/null and b/help/C/figures/ephy-screenshot.png differ diff --git a/help/C/legal.xml b/help/C/legal.xml new file mode 100644 index 000000000..d6906f9b9 --- /dev/null +++ b/help/C/legal.xml @@ -0,0 +1,76 @@ + + + Permission is granted to copy, distribute and/or modify this + document under the terms of the GNU Free Documentation + License (GFDL), Version 1.1 or any later version published + by the Free Software Foundation with no Invariant Sections, + no Front-Cover Texts, and no Back-Cover Texts. You can find + a copy of the GFDL at this link or in the file COPYING-DOCS + distributed with this manual. + + This manual is part of a collection of GNOME manuals + distributed under the GFDL. If you want to distribute this + manual separately from the collection, you can do so by + adding a copy of the license to the manual, as described in + section 6 of the license. + + + + Many of the names used by companies to distinguish their + products and services are claimed as trademarks. Where those + names appear in any GNOME documentation, and the members of + the GNOME Documentation Project are made aware of those + trademarks, then the names are in capital letters or initial + capital letters. + + + + DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED + UNDER THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE + WITH THE FURTHER UNDERSTANDING THAT: + + + + DOCUMENT IS PROVIDED ON AN "AS IS" BASIS, + WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR + IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES + THAT THE DOCUMENT OR MODIFIED VERSION OF THE + DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR + A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE + RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE + OF THE DOCUMENT OR MODIFIED VERSION OF THE + DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR + MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, + YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY + CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY + SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER + OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS + LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED + VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER + EXCEPT UNDER THIS DISCLAIMER; AND + + + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL + THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE), + CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, + INITIAL WRITER, ANY CONTRIBUTOR, OR ANY + DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION + OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH + PARTIES, BE LIABLE TO ANY PERSON FOR ANY + DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR + CONSEQUENTIAL DAMAGES OF ANY CHARACTER + INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS + OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR + MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR + LOSSES ARISING OUT OF OR RELATING TO USE OF THE + DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT, + EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF + THE POSSIBILITY OF SUCH DAMAGES. + + + + + + \ No newline at end of file diff --git a/help/Makefile.am b/help/Makefile.am new file mode 100644 index 000000000..42ffacc26 --- /dev/null +++ b/help/Makefile.am @@ -0,0 +1 @@ +SUBDIRS = C diff --git a/omf-install/Makefile.am b/omf-install/Makefile.am new file mode 100644 index 000000000..74086afcd --- /dev/null +++ b/omf-install/Makefile.am @@ -0,0 +1,33 @@ +# +# Modify the definition of $omf_dest_dir, replacing "gdp-example1" with +# the name of your package. +# +# No other modifications should be necessary. +# +# Note that you must configure your package with --localstatedir=/var/lib +# so that the scrollkeeper-update command below will update the database +# in the standard scrollkeeper directory. +# +# If it is impossible to configure with --localstatedir=/var/lib, then +# modify the definition of scrollkeeper_localstate_dir so that +# it points to the correct location. Note that you must still use +# $(localstatedir) in this or when people build RPMs it will update +# the real database on their system instead of the one under RPM_BUILD_ROOT. + +omf_dest_dir=$(datadir)/omf/epiphany +scrollkeeper_localstate_dir = $(localstatedir)/scrollkeeper + +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(omf_dest_dir) + -for file in $(srcdir)/*.omf; do \ + $(INSTALL_DATA) $(srcdir)/$$file $(DESTDIR)$(omf_dest_dir); \ + done + -scrollkeeper-update -p $(scrollkeeper_localstate_dir) + +uninstall-local: + -for file in $(srcdir)/*.omf; do \ + basefile=`basename $$file`; \ + rm -f $(omf_dest_dir)/$$basefile; \ + done + -rmdir $(omf_dest_dir) + -scrollkeeper-update -p $(scrollkeeper_localstate_dir) diff --git a/omf.make b/omf.make new file mode 100644 index 000000000..3261e0015 --- /dev/null +++ b/omf.make @@ -0,0 +1,53 @@ +# +# No modifications of this Makefile should be necessary. +# +# This file contains the build instructions for installing OMF files. It is +# generally called from the makefiles for particular formats of documentation. +# +# Note that you must configure your package with --localstatedir=/var/lib +# so that the scrollkeeper-update command below will update the database +# in the standard scrollkeeper directory. +# +# If it is impossible to configure with --localstatedir=/var/lib, then +# modify the definition of scrollkeeper_localstate_dir so that +# it points to the correct location. Note that you must still use +# $(localstatedir) in this or when people build RPMs it will update +# the real database on their system instead of the one under RPM_BUILD_ROOT. +# +# Note: This make file is not incorporated into xmldocs.make because, in +# general, there will be other documents install besides XML documents +# and the makefiles for these formats should also include this file. +# +# About this file: +# This file was taken from scrollkeeper_example2, a package illustrating +# how to install documentation and OMF files for use with ScrollKeeper +# 0.3.x and 0.4.x. For more information, see: +# http://scrollkeeper.sourceforge.net/ +# Version: 0.1.2 (last updated: March 20, 2002) +# + +omf_dest_dir=$(datadir)/omf/@PACKAGE@ +scrollkeeper_localstate_dir = $(localstatedir)/scrollkeeper + +omf: omf_timestamp + +omf_timestamp: $(omffile) + -for file in $(omffile); do \ + scrollkeeper-preinstall $(docdir)/$(docname).xml $(srcdir)/$$file $$file.out; \ + done + touch omf_timestamp + +install-data-hook-omf: + $(mkinstalldirs) $(DESTDIR)$(omf_dest_dir) + for file in $(omffile); do \ + $(INSTALL_DATA) $$file.out $(DESTDIR)$(omf_dest_dir)/$$file; \ + done + -scrollkeeper-update -p $(scrollkeeper_localstate_dir) -o $(DESTDIR)$(omf_dest_dir) + +uninstall-local-omf: + -for file in $(srcdir)/*.omf; do \ + basefile=`basename $$file`; \ + rm -f $(omf_dest_dir)/$$basefile; \ + done + -rmdir $(omf_dest_dir) + -scrollkeeper-update -p $(scrollkeeper_localstate_dir) diff --git a/src/window-commands.c b/src/window-commands.c index 2891160a6..fbb42dfa0 100644 --- a/src/window-commands.c +++ b/src/window-commands.c @@ -16,6 +16,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +/* + * 25 Mar 2003: Added support for help manual : Patanjali Somayaji + * (patanjali@codito.com) + */ + #include #include "ephy-shell.h" @@ -666,7 +671,28 @@ void window_cmd_help_contents (EggAction *action, EphyWindow *window) { - /* FIXME: Need to implement */ + GError *err; + + err = NULL; + gnome_help_display ("epiphany", NULL, &err); + + if (err != NULL) + { + GtkWidget *dialog; + dialog = gtk_message_dialog_new (GTK_WINDOW (window), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_ERROR, + GTK_BUTTONS_CLOSE, + _("Could not display help: %s"), err->message); + + g_signal_connect (G_OBJECT (dialog), "response", + G_CALLBACK (gtk_widget_destroy), + NULL); + + gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE); + gtk_widget_show (dialog); + g_error_free (err); + } } void diff --git a/xmldocs.make b/xmldocs.make new file mode 100644 index 000000000..9f78af7f6 --- /dev/null +++ b/xmldocs.make @@ -0,0 +1,95 @@ +# +# No modifications of this Makefile should be necessary. +# +# To use this template: +# 1) Define: figdir, docname, lang, omffile, and entities in +# your Makefile.am file for each document directory, +# although figdir, omffile, and entities may be empty +# 2) Make sure the Makefile in (1) also includes +# "include $(top_srcdir)/xmldocs.make" and +# "dist-hook: app-dist-hook". +# 3) Optionally define 'entities' to hold xml entities which +# you would also like installed +# 4) Figures must go under $(figdir)/ and be in PNG format +# 5) You should only have one document per directory +# 6) Note that the figure directory, $(figdir)/, should not have its +# own Makefile since this Makefile installs those figures. +# +# example Makefile.am: +# figdir = figures +# docname = scrollkeeper-manual +# lang = C +# omffile=scrollkeeper-manual-C.omf +# entities = fdl.xml +# include $(top_srcdir)/xmldocs.make +# dist-hook: app-dist-hook +# +# About this file: +# This file was taken from scrollkeeper_example2, a package illustrating +# how to install documentation and OMF files for use with ScrollKeeper +# 0.3.x and 0.4.x. For more information, see: +# http://scrollkeeper.sourceforge.net/ +# Version: 0.1.2 (last updated: March 20, 2002) +# + + +# ************* Begin of section some packagers may need to modify ************** +# This variable (docdir) specifies where the documents should be installed. +# This default value should work for most packages. +# docdir = $(datadir)/@PACKAGE@/doc/$(docname)/$(lang) +docdir = $(datadir)/gnome/help/$(docname)/$(lang) + +# ************** You should not have to edit below this line ******************* +xml_files = $(entities) $(docname).xml + +EXTRA_DIST = $(xml_files) $(omffile) +CLEANFILES = omf_timestamp + +include $(top_srcdir)/omf.make + +all: omf + +$(docname).xml: $(entities) + -ourdir=`pwd`; \ + cd $(srcdir); \ + cp $(entities) $$ourdir + +app-dist-hook: + if test "$(figdir)"; then \ + $(mkinstalldirs) $(distdir)/$(figdir); \ + for file in $(srcdir)/$(figdir)/*.png; do \ + basefile=`echo $$file | sed -e 's,^.*/,,'`; \ + $(INSTALL_DATA) $$file $(distdir)/$(figdir)/$$basefile; \ + done \ + fi + +install-data-local: omf + $(mkinstalldirs) $(DESTDIR)$(docdir) + for file in $(xml_files); do \ + cp $(srcdir)/$$file $(DESTDIR)$(docdir); \ + done + if test "$(figdir)"; then \ + $(mkinstalldirs) $(DESTDIR)$(docdir)/$(figdir); \ + for file in $(srcdir)/$(figdir)/*.png; do \ + basefile=`echo $$file | sed -e 's,^.*/,,'`; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(docdir)/$(figdir)/$$basefile; \ + done \ + fi + +install-data-hook: install-data-hook-omf + +uninstall-local: uninstall-local-doc uninstall-local-omf + +uninstall-local-doc: + -if test "$(figdir)"; then \ + for file in $(srcdir)/$(figdir)/*.png; do \ + basefile=`echo $$file | sed -e 's,^.*/,,'`; \ + rm -f $(docdir)/$(figdir)/$$basefile; \ + done; \ + rmdir $(DESTDIR)$(docdir)/$(figdir); \ + fi + -for file in $(xml_files); do \ + rm -f $(DESTDIR)$(docdir)/$$file; \ + done + -rmdir $(DESTDIR)$(docdir) + -- cgit