Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1817)

Side by Side Diff: sky/sdk/lib/README.md

Issue 1182053012: Rename editing2/ and theme2/ to editing/ and theme/. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « sky/sdk/BUILD.gn ('k') | sky/sdk/lib/editing2/editable_string.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 SKY SDK
2 ========
3
4 Sky and Sky's SDK are designed as layered frameworks, where each layer
5 depends on the ones below it but could be replaced wholesale.
6
7 The bottom-most layer is the Sky Platform, which is exposed to Dart
8 code as various ```dart:``` packages, including ```dart:sky```.
9
10 The [base/](base/) directory contains libraries that extend these core
11 APIs to provide base classes for tree structures
12 ([base/node.dart](base/node.dart)), hit testing
13 ([base/hit_test.dart](base/hit_test.dart)), debugging
14 ([base/debug.dart](base/debug.dart)), and task scheduling
15 ([base/scheduler.dart](base/scheduler.dart)).
16
17 Above this are the files in the [painting/](painting/) directory,
18 which provide APIs related to drawing graphics, and in the
19 [animation/](animation/) directory, which provide core primitives for
20 animating values.
21
22 Layout primitives are provided in the next layer, found in the
23 [rendering/](rendering/) directory. They use ```dart:sky``` and the
24 APIs exposed in painting/ to provide a retained-mode layout and
25 rendering model for applications or documents.
26
27 Widgets are provided by the files in the [widgets/](widgets/)
28 directory, using a reactive framework. They use data given in the
29 [theme/](theme/) directory to select styles consistent with Material
30 Design.
31
32 Text input widgets are layered on this mechanism and can be found in
33 the [editing/](editing/) directory.
34
35 Alongside the above is the [mojo/](mojo/) directory, which contains
36 anything that uses the Mojo IPC mechanism, typically as part of
37 wrapping host operating system features. Some of those Host APIs are
38 implemented in the host system's preferred language.
39
40 Here is a diagram summarising all this:
41
42 ```
43 +-----------------------------+ ------
44 | YOUR APP |
45 | +--------------------+--+
46 | | [editing/](editing/) | |
47 | +--+-------------------++ |
48 | | [widgets/](widgets/) ([theme/](theme/)) | |
49 | ++---------------------++ | Dart
50 | | [rendering/](rendering/) | |
51 +-+---------+------------+ |
52 | [painting/](painting/) | [animation/](animation/) | |
53 +---------------+--------+ |
54 | [base/](base/) | [mojo/](mojo/) |
55 +------------+--+-+----+------+ -------
56 | dart:sky | | | Host |
57 +--------+---+ | | APIs | C++
58 | Skia | [Dart](https://api.dartlang.org/) | +------+ ObjC
59 +--------+--------+ | Java
60 | Mojo |
61 +-----------------------------+ -------
62 | Host Operating System | C/C++
63 +-----------------------------+ -------
64 ```
65
66 TODO(ianh): document dart:sky and the Host APIs somewhere
OLDNEW
« no previous file with comments | « sky/sdk/BUILD.gn ('k') | sky/sdk/lib/editing2/editable_string.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698