From 59bb374da1173e716b879efed18d304054829521 Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Wed, 4 Jun 2003 21:59:01 +0000 Subject: [project @ 2003-06-04 21:59:01 by jmb] Import User Documentation svn path=/import/netsurf/; revision=154 --- documentation/Themes.xml | 88 ++++++++++++++++++++++++++++++++++++++++++++++++ makefile | 13 ++++++- 2 files changed, 100 insertions(+), 1 deletion(-) create mode 100644 documentation/Themes.xml diff --git a/documentation/Themes.xml b/documentation/Themes.xml new file mode 100644 index 000000000..a476e3a9a --- /dev/null +++ b/documentation/Themes.xml @@ -0,0 +1,88 @@ + + + + + +
+

NetSurf has inbuilt support for themed icons and status bar tools.
+ This document details how to create your own themes for NetSurf

+
+ +
+

In order to create a new theme, you will require the following tools: + +

A template editor

+

A sprite file editor

+

A text editor

+ +

+
+ +
+

The best way to go about creating a new theme is to take the templates for the default theme and edit them with a template editor.

+ +

The templates file must contain two templates. One is "toolbar", the other is "theme_info".

+ + +

The toolbar template must contain the following icons: + +

Back Button

+

Refresh Button

+

Forwards Button

+

Throbber

+

URL entry bar

+

Status bar

+

+
+ + +

The theme_info template details the theme in a graphical manner. It is similar to a program info dialogue box and should be treated as such. Again, the Default theme is a good source of reference.

+
+
+ +
+

Sprites should be contained in a single file named "Sprites".

+ +

Throbber sprites should display the various stages of progress and should be named "throbberN", where N is a numerical suffix (eg throbber0, throbber 23 etc).

+ +

Button sprites can be called whatever you like. The only limitation is that two sprites are provided per button - one unpressed, the other pressed. Also, the template validation strings for each button should contain the sprite names (eg Sbackl,backp)

+ + +

You may optionally provide a preview sprite for display in the theme configuration dialogue box. The sprite must be in a file called "Preview" and the sprite itself must be called "preview".

+
+
+ +
+

There are two text files which also make up the theme.

+ + +

The IconNames text file provides the link between the template and the program. Each icon has a name defined internally by NetSurf (eg TOOLBAR_BACK). It is necessary to map these internal names to the icon numbers in the template. See the default theme for reference. All icons should be defined.

+
+ + +

The IconSizes text file is best left alone. Simply copy the one from the default theme into your theme.

+
+
+ +
+

The default packaging for NetSurf themes is simply a folder named the same as your theme name (eg "Clear" for the Clear theme). Simply place all the files for your theme into a single directory, name the directory appropriately and create a Zip archive containing your theme.

+
+ +
+

Themes may be uploaded to the central NetSurf theme repository at http://netsurf.sourceforge.net/themes/

+
+ +
+ + + + + + + + + + + +
\ No newline at end of file diff --git a/makefile b/makefile index 66fc89d8c..84cdb6e40 100644 --- a/makefile +++ b/makefile @@ -1,4 +1,4 @@ -# $Id: makefile,v 1.26 2003/06/01 23:44:38 jmb Exp $ +# $Id: makefile,v 1.27 2003/06/04 21:59:01 jmb Exp $ CC = riscos-gcc OBJECTS = cache.o content.o fetch.o fetchcache.o \ @@ -7,6 +7,7 @@ OBJECTS = cache.o content.o fetch.o fetchcache.o \ box.o html.o layout.o textplain.o \ filetype.o font.o gui.o jpeg.o png.o theme.o \ utils.o plugin.o options.o +DOCUMENTS = Themes.html VPATH = content:css:desktop:render:riscos:utils WARNFLAGS = -W -Wall -Wundef -Wpointer-arith -Wbad-function-cast -Wcast-qual \ -Wcast-align -Wwrite-strings -Wconversion -Wstrict-prototypes \ @@ -24,10 +25,14 @@ LDFLAGS = \ OBJDIR = $(shell $(CC) -dumpmachine) SOURCES=$(OBJECTS:.o=.c) OBJS=$(OBJECTS:%.o=$(OBJDIR)/%.o) +DOCDIR = !NetSurf/Docs +DOCS=$(DOCUMENTS:%.html=$(DOCDIR/%.html) # targets +all: !NetSurf/!RunImage,ff8 Docs !NetSurf/!RunImage,ff8 : $(OBJS) $(CC) -o $@ $(LDFLAGS) $^ +Docs: $(DOCS) netsurf.zip: !NetSurf/!RunImage,ff8 rm netsurf.zip; riscos-zip -9vr, netsurf.zip !NetSurf @@ -42,6 +47,12 @@ css/parser.c: css/parser.y -cd css; lemon parser.y css/scanner.c css/scanner.h: css/scanner.l cd css; flex scanner.l + +# create documentation +$(DOCDIR)/%.html: documentation/%.xml + # syntax: xsltproc [options] -o + # --nonet prevents connection to the web to find the stylesheet + xsltproc --nonet -o $@ http://www.movspclr.co.uk/dtd/100/prm-html.xsl $< # generate dependencies depend : $(SOURCES) -- cgit v1.2.3