Commit b94651c5 authored by gramps's avatar gramps

Removed unused files in kdelibs.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@706 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 8df9f758
This library provides an ECMAScript compatible interpreter. The ECMA standard
is based on well known scripting languages such as Netscape's JavaScript and
Microsoft's JScript.
I'm currently pursuing to be compliant with Edition 3 of ECMA-262. Postscript
and pdf versions of the standard are avaiable at:
http://www.ecma.ch
About 90% of the required features should be covered by now. Note that this
number covers the core language elements only. Features like the famous
roll-over buttons on the www are NOT part of the standard. Those extensions
are added via a module loaded dynamically by the KHTML Widget.
I'll provide some examples of how to extend this library for various needs at
a later point in time. Feel free to contact me via mail if you have any
questions on how to provide scripting capabilites for your application.
A debugger is being worked on. To compile it, add -DKJS_DEBUGGER to the CXXFLAGS
section in the Makefile.am of kdelibs/kjs and kdelibs/khtml/ecma.
Bug reports, patches or feedback of any kind is very welcome.
Harri Porten <porten@kde.org>
I would like to thank the following people for their help:
Richard Moore <rich@kde.org> - for filling the Math object with some life
Daegeun Lee <realking@mizi.com> - for pointing out some bugs and providing
much code for the String and Date object.
Marco Pinelli <pinmc@libero.it> - for his patches
Christian Kirsch <ck@held.mind.de> - for his contribution to the Date object
#! /usr/bin/perl
$file = $ARGV[0];
open(IN, $file) or die "No such file $file";
@keys = ();
@values = ();
@attrs = ();
my $inside = 0;
my $name;
my $size;
my $hashsize;
my $banner = 0;
while (<IN>) {
chop;
s/^\s*//g;
if (/^\#|^$/) {
# comment. do nothing
} elsif (/^\@begin\s*(\w+)\s*(\d+)\s*$/ && !$inside) {
$inside = 1;
$name = $1;
$hashsize = $2;
} elsif (/^\@end\s*$/ && $inside) {
calcTable();
output();
@keys = ();
@values = ();
@attrs = ();
$inside = 0;
} elsif (/^(\w+)\s*([\w\:]+)\s*([\w\|]*)\s*$/ && $inside) {
push(@keys, $1);
push(@values, $2);
push(@attrs, length($3) > 0 ? $3 : "0");
} else {
die "invalid data";
}
}
die "missing closing \@end" if ($inside);
sub calcTable() {
@table = ();
@links = ();
$size = $hashsize;
my $collisions = 0;
my $i = 0;
foreach $key (@keys) {
my $h = hashValue($key) % $hashsize;
while (defined($table[$h])) {
if (defined($links[$h])) {
$h = $links[$h];
} else {
$collisions++;
$links[$h] = $size;
$h = $size;
$size++;
}
}
$table[$h] = $i;
$i++;
}
# print "// Number of collisions: $collisions\n";
# printf "total size: $size\n";
# my $i = 0;
# foreach $entry (@table) {
# print "$i " . $entry;
# print " -> " . $links[$i] if (defined($links[$i]));
# print "\n";
# $i++;
# }
}
sub hashValue {
@chars = split(/ */, @_[0]);
my $val = 0;
foreach $c (@chars) {
$val += ord($c);
}
return $val;
}
sub output {
if (!$banner) {
$banner = 1;
print "/* automatically generated from $file. DO NOT EDIT ! */\n";
}
print "\nnamespace KJS {\n";
print "\nconst struct HashEntry2 ${name}Entries[] = {\n";
my $i = 0;
foreach $entry (@table) {
if (defined($entry)) {
my $key = $keys[$entry];
print " \{ \"" . $key . "\"";
print ", " . $values[$entry];
print ", " . $attrs[$entry] . ", ";
if (defined($links[$i])) {
print "&${name}Entries[$links[$i]]" . " \}";
} else {
print "0 \}"
}
} else {
print " \{ 0, 0, 0, 0 \}";
}
print "," unless ($i == $size - 1);
print "\n";
$i++;
}
print "};\n";
print "\nconst struct HashTable2 $name = ";
print "\{ 2, $size, ${name}Entries, $hashsize \};\n\n";
print "}; // namespace\n";
}
# main keywords
@begin mainTable 41
# types
null NULLTOKEN
true TRUETOKEN
false FALSETOKEN
# keywords
break BREAK
case CASE
catch CATCH
default DEFAULT
finally FINALLY
for FOR
instanceof INSTANCEOF
new NEW
var VAR
continue CONTINUE
function FUNCTION
return RETURN
void VOID
delete DELETE
if IF
this THIS
do DO
while WHILE
else ELSE
in IN
switch SWITCH
throw THROW
try TRY
typeof TYPEOF
with WITH
# reserved for future use
abstract RESERVED
boolean RESERVED
byte RESERVED
char RESERVED
class RESERVED
const RESERVED
debugger RESERVED
double RESERVED
enum RESERVED
export RESERVED
extends RESERVED
final RESERVED
float RESERVED
goto RESERVED
implements RESERVED
import RESERVED
int RESERVED
interface RESERVED
long RESERVED
native RESERVED
package RESERVED
private RESERVED
protected RESERVED
public RESERVED
short RESERVED
static RESERVED
super RESERVED
synchronized RESERVED
throws RESERVED
transient RESERVED
volatile RESERVED
@end
2002-03-06 Don Melton <gramps@apple.com>
Removed unused files in kdelibs.
* src/kdelibs/AUTHORS:
* src/kdelibs/README:
* src/kdelibs/khtml/CHANGES:
* src/kdelibs/khtml/DESIGN.html:
* src/kdelibs/khtml/README.HTMLWidget:
* src/kdelibs/khtml/README.tags:
* src/kdelibs/khtml/SECURITY:
* src/kdelibs/khtml/TODO:
* src/kdelibs/khtml/design.h:
* src/kdelibs/khtml/domtreeview.cpp:
* src/kdelibs/khtml/domtreeview.h:
* src/kdelibs/khtml/ecma/AUTHORS:
* src/kdelibs/khtml/ecma/README:
* src/kdelibs/khtml/ecma/THANKS:
* src/kdelibs/khtml/ecma/TODO:
* src/kdelibs/khtml/ecma/jsk.html:
* src/kdelibs/khtml/ecma/testecma.cpp:
* src/kdelibs/khtml/html/dtd.dtd:
* src/kdelibs/khtml/java/KJAS_GRAMMAR.txt:
* src/kdelibs/khtml/java/README:
* src/kdelibs/khtml/java/TODO:
* src/kdelibs/khtml/java/build.xml:
* src/kdelibs/khtml/java/javaembed.cpp:
* src/kdelibs/khtml/java/kjava.jar:
* src/kdelibs/khtml/java/kjava.policy.in:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletClassLoader.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletContext.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletStub.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASConsole.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASProtocolHandler.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASSecurityManager.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASSoundPlayer.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/Main.java:
* src/kdelibs/khtml/java/tests/badapplets/BadApplet.jar:
* src/kdelibs/khtml/java/tests/badapplets/BadApplet.java:
* src/kdelibs/khtml/java/tests/badapplets/applet.html:
* src/kdelibs/khtml/java/tests/good_sites:
* src/kdelibs/khtml/java/tests/testkjavaappletserver.cpp:
* src/kdelibs/khtml/khtml.desktop:
* src/kdelibs/khtml/khtml.rc:
* src/kdelibs/khtml/khtml_browser.rc:
* src/kdelibs/khtml/khtml_ext.cpp:
* src/kdelibs/khtml/khtml_factory.cpp:
* src/kdelibs/khtml/khtml_find.cpp:
* src/kdelibs/khtml/khtml_find.h:
* src/kdelibs/khtml/khtml_pagecache.cpp:
* src/kdelibs/khtml/khtml_pagecache.h:
* src/kdelibs/khtml/khtml_part.cpp:
* src/kdelibs/khtml/khtml_popupmenu.rc:
* src/kdelibs/khtml/khtml_run.cpp:
* src/kdelibs/khtml/khtml_run.h:
* src/kdelibs/khtml/khtmldefaults.h:
* src/kdelibs/khtml/khtmlimage.cpp:
* src/kdelibs/khtml/khtmlimage.desktop:
* src/kdelibs/khtml/khtmlimage.h:
* src/kdelibs/khtml/pics/hi16-action-images_display.png:
* src/kdelibs/khtml/pics/hi22-action-images_display.png:
* src/kdelibs/khtml/pics/hi32-action-images_display.png:
* src/kdelibs/khtml/test/README:
* src/kdelibs/khtml/test/URL1.html:
* src/kdelibs/khtml/test/URL2.html:
* src/kdelibs/khtml/test/align.html:
* src/kdelibs/khtml/test/align1.html:
* src/kdelibs/khtml/test/align2.html:
* src/kdelibs/khtml/test/anchor1.html:
* src/kdelibs/khtml/test/anchor2.html:
* src/kdelibs/khtml/test/badpages.html:
* src/kdelibs/khtml/test/buggy.html:
* src/kdelibs/khtml/test/button.html:
* src/kdelibs/khtml/test/color.html:
* src/kdelibs/khtml/test/fixed-background.html:
* src/kdelibs/khtml/test/image.gif:
* src/kdelibs/khtml/test/image_map.html:
* src/kdelibs/khtml/test/index.html:
* src/kdelibs/khtml/test/java.html:
* src/kdelibs/khtml/test/javascript.html:
* src/kdelibs/khtml/test/jsplugins.html:
* src/kdelibs/khtml/test/konqi.gif:
* src/kdelibs/khtml/test/lake.class:
* src/kdelibs/khtml/test/listing.html:
* src/kdelibs/khtml/test/lists.html:
* src/kdelibs/khtml/test/nav_bar.gif:
* src/kdelibs/khtml/test/nbsp.html:
* src/kdelibs/khtml/test/notitle.html:
* src/kdelibs/khtml/test/object.html:
* src/kdelibs/khtml/test/pseudo.html:
* src/kdelibs/khtml/test/renders.html:
* src/kdelibs/khtml/test/supsub.html:
* src/kdelibs/khtml/test/testpages.html:
* src/kdelibs/khtml/test/textarea.html:
* src/kdelibs/khtml/test/title.html:
* src/kdelibs/khtml/testcss.cpp:
* src/kdelibs/khtml/testkhtml.cpp:
* src/kdelibs/khtml/testkhtml.h:
* src/kdelibs/khtml/testrender.cpp:
* src/kdelibs/khtml/testrender.h:
* src/kdelibs/kjs/README:
* src/kdelibs/kjs/THANKS:
* src/kdelibs/kjs/create_hash_table:
* src/kdelibs/kjs/keywords.table:
2002-03-06 Don Melton <gramps@apple.com>
Cleaned up all our changes to kdelibs, removed bitrot, and replaced use
......
2002-03-06 Don Melton <gramps@apple.com>
Removed unused files in kdelibs.
* src/kdelibs/AUTHORS:
* src/kdelibs/README:
* src/kdelibs/khtml/CHANGES:
* src/kdelibs/khtml/DESIGN.html:
* src/kdelibs/khtml/README.HTMLWidget:
* src/kdelibs/khtml/README.tags:
* src/kdelibs/khtml/SECURITY:
* src/kdelibs/khtml/TODO:
* src/kdelibs/khtml/design.h:
* src/kdelibs/khtml/domtreeview.cpp:
* src/kdelibs/khtml/domtreeview.h:
* src/kdelibs/khtml/ecma/AUTHORS:
* src/kdelibs/khtml/ecma/README:
* src/kdelibs/khtml/ecma/THANKS:
* src/kdelibs/khtml/ecma/TODO:
* src/kdelibs/khtml/ecma/jsk.html:
* src/kdelibs/khtml/ecma/testecma.cpp:
* src/kdelibs/khtml/html/dtd.dtd:
* src/kdelibs/khtml/java/KJAS_GRAMMAR.txt:
* src/kdelibs/khtml/java/README:
* src/kdelibs/khtml/java/TODO:
* src/kdelibs/khtml/java/build.xml:
* src/kdelibs/khtml/java/javaembed.cpp:
* src/kdelibs/khtml/java/kjava.jar:
* src/kdelibs/khtml/java/kjava.policy.in:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletClassLoader.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletContext.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletStub.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASConsole.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASProtocolHandler.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASSecurityManager.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASSoundPlayer.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/Main.java:
* src/kdelibs/khtml/java/tests/badapplets/BadApplet.jar:
* src/kdelibs/khtml/java/tests/badapplets/BadApplet.java:
* src/kdelibs/khtml/java/tests/badapplets/applet.html:
* src/kdelibs/khtml/java/tests/good_sites:
* src/kdelibs/khtml/java/tests/testkjavaappletserver.cpp:
* src/kdelibs/khtml/khtml.desktop:
* src/kdelibs/khtml/khtml.rc:
* src/kdelibs/khtml/khtml_browser.rc:
* src/kdelibs/khtml/khtml_ext.cpp:
* src/kdelibs/khtml/khtml_factory.cpp:
* src/kdelibs/khtml/khtml_find.cpp:
* src/kdelibs/khtml/khtml_find.h:
* src/kdelibs/khtml/khtml_pagecache.cpp:
* src/kdelibs/khtml/khtml_pagecache.h:
* src/kdelibs/khtml/khtml_part.cpp:
* src/kdelibs/khtml/khtml_popupmenu.rc:
* src/kdelibs/khtml/khtml_run.cpp:
* src/kdelibs/khtml/khtml_run.h:
* src/kdelibs/khtml/khtmldefaults.h:
* src/kdelibs/khtml/khtmlimage.cpp:
* src/kdelibs/khtml/khtmlimage.desktop:
* src/kdelibs/khtml/khtmlimage.h:
* src/kdelibs/khtml/pics/hi16-action-images_display.png:
* src/kdelibs/khtml/pics/hi22-action-images_display.png:
* src/kdelibs/khtml/pics/hi32-action-images_display.png:
* src/kdelibs/khtml/test/README:
* src/kdelibs/khtml/test/URL1.html:
* src/kdelibs/khtml/test/URL2.html:
* src/kdelibs/khtml/test/align.html:
* src/kdelibs/khtml/test/align1.html:
* src/kdelibs/khtml/test/align2.html:
* src/kdelibs/khtml/test/anchor1.html:
* src/kdelibs/khtml/test/anchor2.html:
* src/kdelibs/khtml/test/badpages.html:
* src/kdelibs/khtml/test/buggy.html:
* src/kdelibs/khtml/test/button.html:
* src/kdelibs/khtml/test/color.html:
* src/kdelibs/khtml/test/fixed-background.html:
* src/kdelibs/khtml/test/image.gif:
* src/kdelibs/khtml/test/image_map.html:
* src/kdelibs/khtml/test/index.html:
* src/kdelibs/khtml/test/java.html:
* src/kdelibs/khtml/test/javascript.html:
* src/kdelibs/khtml/test/jsplugins.html:
* src/kdelibs/khtml/test/konqi.gif:
* src/kdelibs/khtml/test/lake.class:
* src/kdelibs/khtml/test/listing.html:
* src/kdelibs/khtml/test/lists.html:
* src/kdelibs/khtml/test/nav_bar.gif:
* src/kdelibs/khtml/test/nbsp.html:
* src/kdelibs/khtml/test/notitle.html:
* src/kdelibs/khtml/test/object.html:
* src/kdelibs/khtml/test/pseudo.html:
* src/kdelibs/khtml/test/renders.html:
* src/kdelibs/khtml/test/supsub.html:
* src/kdelibs/khtml/test/testpages.html:
* src/kdelibs/khtml/test/textarea.html:
* src/kdelibs/khtml/test/title.html:
* src/kdelibs/khtml/testcss.cpp:
* src/kdelibs/khtml/testkhtml.cpp:
* src/kdelibs/khtml/testkhtml.h:
* src/kdelibs/khtml/testrender.cpp:
* src/kdelibs/khtml/testrender.h:
* src/kdelibs/kjs/README:
* src/kdelibs/kjs/THANKS:
* src/kdelibs/kjs/create_hash_table:
* src/kdelibs/kjs/keywords.table:
2002-03-06 Don Melton <gramps@apple.com>
Cleaned up all our changes to kdelibs, removed bitrot, and replaced use
......
2002-03-06 Don Melton <gramps@apple.com>
Removed unused files in kdelibs.
* src/kdelibs/AUTHORS:
* src/kdelibs/README:
* src/kdelibs/khtml/CHANGES:
* src/kdelibs/khtml/DESIGN.html:
* src/kdelibs/khtml/README.HTMLWidget:
* src/kdelibs/khtml/README.tags:
* src/kdelibs/khtml/SECURITY:
* src/kdelibs/khtml/TODO:
* src/kdelibs/khtml/design.h:
* src/kdelibs/khtml/domtreeview.cpp:
* src/kdelibs/khtml/domtreeview.h:
* src/kdelibs/khtml/ecma/AUTHORS:
* src/kdelibs/khtml/ecma/README:
* src/kdelibs/khtml/ecma/THANKS:
* src/kdelibs/khtml/ecma/TODO:
* src/kdelibs/khtml/ecma/jsk.html:
* src/kdelibs/khtml/ecma/testecma.cpp:
* src/kdelibs/khtml/html/dtd.dtd:
* src/kdelibs/khtml/java/KJAS_GRAMMAR.txt:
* src/kdelibs/khtml/java/README:
* src/kdelibs/khtml/java/TODO:
* src/kdelibs/khtml/java/build.xml:
* src/kdelibs/khtml/java/javaembed.cpp:
* src/kdelibs/khtml/java/kjava.jar:
* src/kdelibs/khtml/java/kjava.policy.in:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletClassLoader.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletContext.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletStub.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASConsole.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASProtocolHandler.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASSecurityManager.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/KJASSoundPlayer.java:
* src/kdelibs/khtml/java/org/kde/kjas/server/Main.java:
* src/kdelibs/khtml/java/tests/badapplets/BadApplet.jar:
* src/kdelibs/khtml/java/tests/badapplets/BadApplet.java:
* src/kdelibs/khtml/java/tests/badapplets/applet.html:
* src/kdelibs/khtml/java/tests/good_sites:
* src/kdelibs/khtml/java/tests/testkjavaappletserver.cpp:
* src/kdelibs/khtml/khtml.desktop:
* src/kdelibs/khtml/khtml.rc:
* src/kdelibs/khtml/khtml_browser.rc:
* src/kdelibs/khtml/khtml_ext.cpp:
* src/kdelibs/khtml/khtml_factory.cpp:
* src/kdelibs/khtml/khtml_find.cpp:
* src/kdelibs/khtml/khtml_find.h:
* src/kdelibs/khtml/khtml_pagecache.cpp:
* src/kdelibs/khtml/khtml_pagecache.h:
* src/kdelibs/khtml/khtml_part.cpp:
* src/kdelibs/khtml/khtml_popupmenu.rc:
* src/kdelibs/khtml/khtml_run.cpp:
* src/kdelibs/khtml/khtml_run.h:
* src/kdelibs/khtml/khtmldefaults.h:
* src/kdelibs/khtml/khtmlimage.cpp:
* src/kdelibs/khtml/khtmlimage.desktop:
* src/kdelibs/khtml/khtmlimage.h:
* src/kdelibs/khtml/pics/hi16-action-images_display.png:
* src/kdelibs/khtml/pics/hi22-action-images_display.png:
* src/kdelibs/khtml/pics/hi32-action-images_display.png:
* src/kdelibs/khtml/test/README:
* src/kdelibs/khtml/test/URL1.html:
* src/kdelibs/khtml/test/URL2.html:
* src/kdelibs/khtml/test/align.html:
* src/kdelibs/khtml/test/align1.html:
* src/kdelibs/khtml/test/align2.html:
* src/kdelibs/khtml/test/anchor1.html:
* src/kdelibs/khtml/test/anchor2.html:
* src/kdelibs/khtml/test/badpages.html:
* src/kdelibs/khtml/test/buggy.html:
* src/kdelibs/khtml/test/button.html:
* src/kdelibs/khtml/test/color.html:
* src/kdelibs/khtml/test/fixed-background.html:
* src/kdelibs/khtml/test/image.gif:
* src/kdelibs/khtml/test/image_map.html:
* src/kdelibs/khtml/test/index.html:
* src/kdelibs/khtml/test/java.html:
* src/kdelibs/khtml/test/javascript.html:
* src/kdelibs/khtml/test/jsplugins.html:
* src/kdelibs/khtml/test/konqi.gif:
* src/kdelibs/khtml/test/lake.class:
* src/kdelibs/khtml/test/listing.html:
* src/kdelibs/khtml/test/lists.html:
* src/kdelibs/khtml/test/nav_bar.gif:
* src/kdelibs/khtml/test/nbsp.html:
* src/kdelibs/khtml/test/notitle.html:
* src/kdelibs/khtml/test/object.html:
* src/kdelibs/khtml/test/pseudo.html:
* src/kdelibs/khtml/test/renders.html:
* src/kdelibs/khtml/test/supsub.html:
* src/kdelibs/khtml/test/testpages.html:
* src/kdelibs/khtml/test/textarea.html:
* src/kdelibs/khtml/test/title.html:
* src/kdelibs/khtml/testcss.cpp:
* src/kdelibs/khtml/testkhtml.cpp:
* src/kdelibs/khtml/testkhtml.h:
* src/kdelibs/khtml/testrender.cpp:
* src/kdelibs/khtml/testrender.h:
* src/kdelibs/kjs/README:
* src/kdelibs/kjs/THANKS:
* src/kdelibs/kjs/create_hash_table:
* src/kdelibs/kjs/keywords.table:
2002-03-06 Don Melton <gramps@apple.com>
Cleaned up all our changes to kdelibs, removed bitrot, and replaced use
......
KHTML CHANGES
=============
* new start with DOM (Lars 10.8.99)
<html>
<head>
<title>Internal design of khtml</title>
<style>
dt { font-weight: bold; }
</style>
<body bgcolor=white>
<h1>Internal design of khtml</h1>
<p>
This document tries to give a short overview about the internal design of the khtml
library. I've written this, because the lib has gotten quite big, and it is hard at first to find your
way in the source code. This doesn't mean that you'll understand khtml after reading this
document, but it'll hopefully make it easier for you to read the source code.
</p>
<p>
The library is build up out of several different parts. Basically, when you use the lib, you
create an instance of a KHTMLPart, and feed data to it. That's more or less all you need to
know if you want to use khtml for another application. If you want to start hacking khtml,
here's a sketch of the objects that will get constructed, when eg. running testkhtml with