Skip to content

Scamper Architecture

konstantinjdobler edited this page Jul 25, 2018 · 22 revisions

Class Diagram

Class Descriptions:

Scamper: Main class, responsible for most of the functionality, e.g. download of websites, displaying on the UI and User Applications.

WebClient: Supports the Internet Workflow by sending requests via HTTP and ports from server to server, and supporting authentification and cookies

WebPageMorph: Displays the currently opened website in the UI.

HtmlDOMNode: Represents one node in the DOM-Tree with its attributes and styles, which can be defined by CSS. It has a lot of different subclasses for specfic nodes, e.g. DIV, IMG, SPAN, etc.

CSSStyleRule: Contains the CSSStyleProperties for a given node.

HtmlMorph: They graphically represent the HtmlDOMNodes, that can be dislpayed on the WebPageMorph. Provides a superclass, for the derived classes HtmlBlockMorph, HtmlBodyMorph, HtmlDocumentMorph, HtmlLinkMorph und HtmlTableMorph.

HtmlInlineMorph: Graphically represents inline Elements in the DOM-Tree. All inline elements of one line are represented by the one, same HtmlInlineMorph.

HtmlLayoutPolicy: Parentclass of the different Layouting Policies used by Scamper

HtmlGridlayout: Defines the layout policy used for table elements.

HtmlBlockLayout: Defines the Layout Policy used for block elements.

HtmlInlineLayout: Defines the Layout Policy used for inline elements.