mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-17 21:49:18 +02:00
* Correct documenting of advanced records
git-svn-id: trunk@31184 -
This commit is contained in:
parent
a5715c078b
commit
8cb651c0a5
@ -1,9 +1,9 @@
|
|||||||
|
|
||||||
Const
|
Const
|
||||||
DefaultCSS : Array[0..2242] of byte = (
|
DefaultCSS : Array[0..2254] of byte = (
|
||||||
47, 42, 10, 32, 32, 36, 73,100, 58, 32,102,112,100,111, 99, 46, 99,
|
47, 42, 10, 32, 32, 36, 73,100, 58, 32,102,112,100,111, 99, 46, 99,
|
||||||
115,116, 44,118, 32, 49, 46, 49, 32, 50, 48, 48, 53, 47, 48, 49, 47,
|
115,115, 44,118, 32, 49, 46, 49, 32, 50, 48, 48, 51, 47, 48, 51, 47,
|
||||||
48, 50, 32, 49, 54, 58, 50, 50, 58, 49, 54, 32,109,105, 99,104, 97,
|
49, 55, 32, 50, 51, 58, 48, 51, 58, 50, 48, 32,109,105, 99,104, 97,
|
||||||
101,108, 32, 69,120,112, 32, 36, 10, 10, 32, 32, 68,101,102, 97,117,
|
101,108, 32, 69,120,112, 32, 36, 10, 10, 32, 32, 68,101,102, 97,117,
|
||||||
108,116, 32,115,116,121,108,101, 32,115,104,101,101,116, 32,102,111,
|
108,116, 32,115,116,121,108,101, 32,115,104,101,101,116, 32,102,111,
|
||||||
114, 32, 70, 80, 68,111, 99, 32,114,101,102,101,114,101,110, 99,101,
|
114, 32, 70, 80, 68,111, 99, 32,114,101,102,101,114,101,110, 99,101,
|
||||||
@ -53,83 +53,84 @@ Const
|
|||||||
32,105,110, 32,115,111,117,114, 99,101, 32,102,114, 97,103,109,101,
|
32,105,110, 32,115,111,117,114, 99,101, 32,102,114, 97,103,109,101,
|
||||||
110,116,115, 32, 42, 47, 10,115,112, 97,110, 46,115,121,109, 32,123,
|
110,116,115, 32, 42, 47, 10,115,112, 97,110, 46,115,121,109, 32,123,
|
||||||
10, 32, 32, 99,111,108,111,114, 58, 32,100, 97,114,107,114,101,100,
|
10, 32, 32, 99,111,108,111,114, 58, 32,100, 97,114,107,114,101,100,
|
||||||
10,125, 10, 47, 42, 32, 78,111, 32,119,111,114,100,119,114, 97,112,
|
10,125, 10, 10, 47, 42, 32,107,101,121,119,111,114,100,115, 32,105,
|
||||||
32,105,110, 32, 99,111,100,101, 32,102,114, 97,103,109,101,110,116,
|
110, 32,115,111,117,114, 99,101, 32,102,114, 97,103,109,101,110,116,
|
||||||
115, 32, 42, 47, 10,115,112, 97,110, 46, 99,111,100,101, 32,123, 10,
|
115, 32, 42, 47, 10,115,112, 97,110, 46,107,119, 32,123, 10, 32, 32,
|
||||||
32, 32, 32,119,104,105,116,101, 45,115,112, 97, 99,101, 58, 32,110,
|
102,111,110,116, 45,119,101,105,103,104,116, 58, 32, 98,111,108,100,
|
||||||
111,119,114, 97,112, 10,125, 10, 10, 47, 42, 32,107,101,121,119,111,
|
10,125, 10, 10, 47, 42, 32, 99,111,109,109,101,110,116,115, 32,105,
|
||||||
114,100,115, 32,105,110, 32,115,111,117,114, 99,101, 32,102,114, 97,
|
110, 32,115,111,117,114, 99,101, 32,102,114, 97,103,109,101,110,116,
|
||||||
103,109,101,110,116,115, 32, 42, 47, 10,115,112, 97,110, 46,107,119,
|
115, 32, 42, 47, 10,115,112, 97,110, 46, 99,109,116, 32,123, 10, 32,
|
||||||
32,123, 10, 32, 32,102,111,110,116, 45,119,101,105,103,104,116, 58,
|
32, 99,111,108,111,114, 58, 32,100, 97,114,107, 99,121, 97,110, 59,
|
||||||
32, 98,111,108,100, 10,125, 10, 10, 47, 42, 32, 99,111,109,109,101,
|
10, 32, 32,102,111,110,116, 45,115,116,121,108,101, 58, 32,105,116,
|
||||||
110,116,115, 32,105,110, 32,115,111,117,114, 99,101, 32,102,114, 97,
|
97,108,105, 99, 10,125, 10, 10, 47, 42, 32,100,105,114,101, 99,116,
|
||||||
103,109,101,110,116,115, 32, 42, 47, 10,115,112, 97,110, 46, 99,109,
|
105,118,101,115, 32,105,110, 32,115,111,117,114, 99,101, 32,102,114,
|
||||||
116, 32,123, 10, 32, 32, 99,111,108,111,114, 58, 32,100, 97,114,107,
|
97,103,109,101,110,116,115, 32, 42, 47, 10,115,112, 97,110, 46,100,
|
||||||
99,121, 97,110, 59, 10, 32, 32,102,111,110,116, 45,115,116,121,108,
|
105,114, 32,123, 10, 32, 32, 99,111,108,111,114, 58, 32,100, 97,114,
|
||||||
101, 58, 32,105,116, 97,108,105, 99, 10,125, 10, 10, 47, 42, 32,100,
|
107,121,101,108,108,111,119, 59, 10, 32, 32,102,111,110,116, 45,115,
|
||||||
105,114,101, 99,116,105,118,101,115, 32,105,110, 32,115,111,117,114,
|
116,121,108,101, 58, 32,105,116, 97,108,105, 99, 10,125, 10, 10, 47,
|
||||||
|
42, 32,110,117,109, 98,101,114,115, 32,105,110, 32,115,111,117,114,
|
||||||
99,101, 32,102,114, 97,103,109,101,110,116,115, 32, 42, 47, 10,115,
|
99,101, 32,102,114, 97,103,109,101,110,116,115, 32, 42, 47, 10,115,
|
||||||
112, 97,110, 46,100,105,114, 32,123, 10, 32, 32, 99,111,108,111,114,
|
112, 97,110, 46,110,117,109, 32,123, 10, 32, 32, 99,111,108,111,114,
|
||||||
58, 32,100, 97,114,107,121,101,108,108,111,119, 59, 10, 32, 32,102,
|
58, 32,100, 97,114,107,109, 97,103,101,110,116, 97, 10,125, 10, 10,
|
||||||
111,110,116, 45,115,116,121,108,101, 58, 32,105,116, 97,108,105, 99,
|
47, 42, 32, 99,104, 97,114, 97, 99,116,101,114,115, 32, 40, 35, 46,
|
||||||
10,125, 10, 10, 47, 42, 32,110,117,109, 98,101,114,115, 32,105,110,
|
46, 46, 41, 32,105,110, 32,115,111,117,114, 99,101, 32,102,114, 97,
|
||||||
32,115,111,117,114, 99,101, 32,102,114, 97,103,109,101,110,116,115,
|
103,109,101,110,116,115, 32, 42, 47, 10,115,112, 97,110, 46, 99,104,
|
||||||
32, 42, 47, 10,115,112, 97,110, 46,110,117,109, 32,123, 10, 32, 32,
|
114, 32,123, 10, 32, 32, 99,111,108,111,114, 58, 32,100, 97,114,107,
|
||||||
99,111,108,111,114, 58, 32,100, 97,114,107,109, 97,103,101,110,116,
|
99,121, 97,110, 10,125, 10, 10, 47, 42, 32,115,116,114,105,110,103,
|
||||||
97, 10,125, 10, 10, 47, 42, 32, 99,104, 97,114, 97, 99,116,101,114,
|
115, 32,105,110, 32,115,111,117,114, 99,101, 32,102,114, 97,103,109,
|
||||||
115, 32, 40, 35, 46, 46, 46, 41, 32,105,110, 32,115,111,117,114, 99,
|
101,110,116,115, 32, 42, 47, 10,115,112, 97,110, 46,115,116,114, 32,
|
||||||
101, 32,102,114, 97,103,109,101,110,116,115, 32, 42, 47, 10,115,112,
|
123, 10, 32, 32, 99,111,108,111,114, 58, 32, 98,108,117,101, 10,125,
|
||||||
97,110, 46, 99,104,114, 32,123, 10, 32, 32, 99,111,108,111,114, 58,
|
10, 10, 47, 42, 32, 97,115,115,101,109, 98,108,101,114, 32,112, 97,
|
||||||
32,100, 97,114,107, 99,121, 97,110, 10,125, 10, 10, 47, 42, 32,115,
|
115,115, 97,103,101,115, 32,105,110, 32,115,111,117,114, 99,101, 32,
|
||||||
116,114,105,110,103,115, 32,105,110, 32,115,111,117,114, 99,101, 32,
|
|
||||||
102,114, 97,103,109,101,110,116,115, 32, 42, 47, 10,115,112, 97,110,
|
102,114, 97,103,109,101,110,116,115, 32, 42, 47, 10,115,112, 97,110,
|
||||||
46,115,116,114, 32,123, 10, 32, 32, 99,111,108,111,114, 58, 32, 98,
|
46, 97,115,109, 32,123, 10, 32, 32, 99,111,108,111,114, 58, 32,103,
|
||||||
108,117,101, 10,125, 10, 10, 47, 42, 32, 97,115,115,101,109, 98,108,
|
114,101,101,110, 10,125, 10, 10, 10,116,100, 46,112,114,101, 32,123,
|
||||||
101,114, 32,112, 97,115,115, 97,103,101,115, 32,105,110, 32,115,111,
|
10, 32, 32,119,104,105,116,101, 45,115,112, 97, 99,101, 58, 32,112,
|
||||||
117,114, 99,101, 32,102,114, 97,103,109,101,110,116,115, 32, 42, 47,
|
114,101, 10,125, 10, 10,112, 46, 99,109,116, 32,123, 10, 32, 32, 99,
|
||||||
10,115,112, 97,110, 46, 97,115,109, 32,123, 10, 32, 32, 99,111,108,
|
111,108,111,114, 58, 32,103,114, 97,121, 10,125, 10, 10,115,112, 97,
|
||||||
111,114, 58, 32,103,114,101,101,110, 10,125, 10, 10, 10,116,100, 46,
|
110, 46,119, 97,114,110,105,110,103, 32,123, 10, 32, 32, 99,111,108,
|
||||||
112,114,101, 32,123, 10, 32, 32,119,104,105,116,101, 45,115,112, 97,
|
111,114, 58, 32,114,101,100, 59, 10, 32, 32,102,111,110,116, 45,119,
|
||||||
99,101, 58, 32,112,114,101, 10,125, 10, 10,112, 46, 99,109,116, 32,
|
101,105,103,104,116, 58, 32, 98,111,108,100, 10,125, 10, 10, 47, 42,
|
||||||
123, 10, 32, 32, 99,111,108,111,114, 58, 32,103,114, 97,121, 10,125,
|
32, 33, 33, 33, 58, 32, 72,111,119, 32,115,104,111,117,108,100, 32,
|
||||||
10, 10,115,112, 97,110, 46,119, 97,114,110,105,110,103, 32,123, 10,
|
119,101, 32,100,101,102,105,110,101, 32,116,104,105,115, 46, 46, 46,
|
||||||
32, 32, 99,111,108,111,114, 58, 32,114,101,100, 59, 10, 32, 32,102,
|
63, 32, 42, 47, 10,115,112, 97,110, 46,102,105,108,101, 32,123, 10,
|
||||||
111,110,116, 45,119,101,105,103,104,116, 58, 32, 98,111,108,100, 10,
|
32, 32, 99,111,108,111,114, 58, 32,100, 97,114,107,103,114,101,101,
|
||||||
125, 10, 10, 47, 42, 32, 33, 33, 33, 58, 32, 72,111,119, 32,115,104,
|
110, 10,125, 10, 10,116, 97, 98,108,101, 46,114,101,109, 97,114,107,
|
||||||
111,117,108,100, 32,119,101, 32,100,101,102,105,110,101, 32,116,104,
|
32,123, 10, 32, 32, 98, 97, 99,107,103,114,111,117,110,100, 45, 99,
|
||||||
105,115, 46, 46, 46, 63, 32, 42, 47, 10,115,112, 97,110, 46,102,105,
|
111,108,111,114, 58, 32, 35,102,102,102,102, 99, 48, 59, 10,125, 10,
|
||||||
108,101, 32,123, 10, 32, 32, 99,111,108,111,114, 58, 32,100, 97,114,
|
10,116, 97, 98,108,101, 46, 98, 97,114, 32,123, 10, 32, 32, 98, 97,
|
||||||
107,103,114,101,101,110, 10,125, 10, 10,116, 97, 98,108,101, 46,114,
|
99,107,103,114,111,117,110,100, 45, 99,111,108,111,114, 58, 32, 35,
|
||||||
101,109, 97,114,107, 32,123, 10, 32, 32, 98, 97, 99,107,103,114,111,
|
97, 48, 99, 48,102,102, 59, 10,125, 10, 10,115,112, 97,110, 46, 98,
|
||||||
117,110,100, 45, 99,111,108,111,114, 58, 32, 35,102,102,102,102, 99,
|
97,114,116,105,116,108,101, 32,123, 10, 32, 32,102,111,110,116, 45,
|
||||||
48, 59, 10,125, 10, 10,116, 97, 98,108,101, 46, 98, 97,114, 32,123,
|
119,101,105,103,104,116, 58, 32, 98,111,108,100, 59, 10, 32, 32,102,
|
||||||
10, 32, 32, 98, 97, 99,107,103,114,111,117,110,100, 45, 99,111,108,
|
111,110,116, 45,115,116,121,108,101, 58, 32,105,116, 97,108,105, 99,
|
||||||
111,114, 58, 32, 35, 97, 48, 99, 48,102,102, 59, 10,125, 10, 10,116,
|
59, 10, 32, 32, 99,111,108,111,114, 58, 32,100, 97,114,107, 98,108,
|
||||||
100, 32,112, 32,123, 10, 32,109, 97,114,103,105,110, 58, 32, 48, 59,
|
117,101, 10,125, 10, 10,115,112, 97,110, 46,102,111,111,116,101,114,
|
||||||
10,125, 10, 10,115,112, 97,110, 46, 98, 97,114,116,105,116,108,101,
|
32,123, 10, 32, 32,102,111,110,116, 45,115,116,121,108,101, 58, 32,
|
||||||
32,123, 10, 32, 32,102,111,110,116, 45,119,101,105,103,104,116, 58,
|
105,116, 97,108,105, 99, 59, 10, 32, 32, 99,111,108,111,114, 58, 32,
|
||||||
32, 98,111,108,100, 59, 10, 32, 32,102,111,110,116, 45,115,116,121,
|
100, 97,114,107, 98,108,117,101, 10,125, 10, 10, 47, 42, 32,100,101,
|
||||||
108,101, 58, 32,105,116, 97,108,105, 99, 59, 10, 32, 32, 99,111,108,
|
102,105,110,105,116,105,111,110, 32,108,105,115,116, 32, 42, 47, 10,
|
||||||
111,114, 58, 32,100, 97,114,107, 98,108,117,101, 10,125, 10, 10,115,
|
100,108, 32,123, 10, 32, 98,111,114,100,101,114, 58, 32, 51,112,120,
|
||||||
112, 97,110, 46,116,111,103,103,108,101,116,114,101,101, 99,108,111,
|
32,100,111,117, 98,108,101, 32, 35, 99, 99, 99, 59, 10, 32,112, 97,
|
||||||
115,101, 32,123, 10, 32, 32, 32, 32, 98, 97, 99,107,103,114,111,117,
|
100,100,105,110,103, 58, 32, 48, 46, 53,101,109, 59, 10,125, 10, 10,
|
||||||
110,100, 58, 32,117,114,108, 40,109,105,110,117,115, 46,112,110,103,
|
47, 42, 32,100,101,102,105,110,105,116,105,111,110, 32,108,105,115,
|
||||||
41, 32, 99,101,110,116,101,114, 32,108,101,102,116, 32,110,111, 45,
|
116, 58, 32,116,101,114,109, 32, 42, 47, 10,100,116, 32,123, 10, 32,
|
||||||
114,101,112,101, 97,116, 59, 10, 32, 32, 32, 32,112, 97,100,100,105,
|
102,108,111, 97,116, 58, 32,108,101,102,116, 59, 10, 32, 99,108,101,
|
||||||
110,103, 45,108,101,102,116, 58, 32, 50, 48,112,120, 59, 32, 10,125,
|
97,114, 58, 32,108,101,102,116, 59, 10, 32,119,105,100,116,104, 58,
|
||||||
10, 10,115,112, 97,110, 46,116,111,103,103,108,101,116,114,101,101,
|
32, 97,117,116,111, 59, 32, 47, 42, 32,110,111,114,109, 97,108,108,
|
||||||
111,112,101,110, 32,123, 10, 32, 32, 32, 32, 98, 97, 99,107,103,114,
|
121, 32, 98,114,111,119,115,101,114,115, 32,100,101,102, 97,117,108,
|
||||||
111,117,110,100, 58, 32,117,114,108, 40,112,108,117,115, 46,112,110,
|
116, 32,119,105,100,116,104, 32,111,102, 32,108, 97,114,103,101,115,
|
||||||
103, 41, 32, 99,101,110,116,101,114, 32,108,101,102,116, 32,110,111,
|
116, 32,105,116,101,109, 32, 42, 47, 10, 32,112, 97,100,100,105,110,
|
||||||
45,114,101,112,101, 97,116, 59, 10, 32, 32, 32, 32,112, 97,100,100,
|
103, 45,114,105,103,104,116, 58, 32, 50, 48,112,120, 59, 10, 32,102,
|
||||||
105,110,103, 45,108,101,102,116, 58, 32, 50, 48,112,120, 59, 32, 10,
|
111,110,116, 45,119,101,105,103,104,116, 58, 32, 98,111,108,100, 59,
|
||||||
125, 10, 10,117,108, 46, 99,108, 97,115,115,116,114,101,101,108,105,
|
10, 32, 99,111,108,111,114, 58, 32,100, 97,114,107,103,114,101,101,
|
||||||
115,116, 32,108,105, 32,123, 32,112, 97,100,100,105,110,103, 45,108,
|
110, 59, 10,125, 10, 10, 47, 42, 32,100,101,102,105,110,105,116,105,
|
||||||
101,102,116, 58, 32, 48,112,120, 59, 32,125, 10, 10,117,108, 46, 99,
|
111,110, 32,108,105,115,116, 58, 32,100,101,115, 99,114,105,112,116,
|
||||||
108, 97,115,115,116,114,101,101,108,105,115,116, 32,123, 32,108,105,
|
105,111,110, 32, 42, 47, 10,100,100, 32,123, 10, 32,109, 97,114,103,
|
||||||
115,116, 45,115,116,121,108,101, 45,116,121,112,101, 58,110,111,110,
|
105,110, 58, 32, 48, 32, 48, 32, 48, 32, 49, 49, 48,112,120, 59, 10,
|
||||||
101, 59, 32,125, 10, 10,108,105, 46, 99,108, 97,115,115,116,114,101,
|
32,112, 97,100,100,105,110,103, 58, 32, 48, 32, 48, 32, 48, 46, 53,
|
||||||
101, 32,117,108, 32,123, 32,100,105,115,112,108, 97,121, 58, 32, 98,
|
101,109, 32, 48, 59, 10,125, 10, 10, 47, 42, 32,102,111,114, 32, 98,
|
||||||
108,111, 99,107, 59, 32,125, 10, 10,108,105, 46, 99,108, 97,115,115,
|
114,111,119,115,101,114,115, 32,105,110, 32,115,116, 97,110,100, 97,
|
||||||
116,114,101,101, 99,108,111,115,101,100, 32,117,108, 32,123, 32,100,
|
114,100,115, 32, 99,111,109,112,108,105, 97,110, 99,101, 32,109,111,
|
||||||
105,115,112,108, 97,121, 58, 32,110,111,110,101, 59, 32,125, 10);
|
100,101, 32, 42, 47, 10,116,100, 32,112, 32,123, 10, 32, 32,109, 97,
|
||||||
|
114,103,105,110, 58, 32, 48, 59, 10,125, 10);
|
||||||
|
@ -70,6 +70,7 @@ resourcestring
|
|||||||
SDocMethodOverview = 'Method overview';
|
SDocMethodOverview = 'Method overview';
|
||||||
SDocPropertyOverview = 'Property overview';
|
SDocPropertyOverview = 'Property overview';
|
||||||
SDocInterfacesOverview = 'Interfaces overview';
|
SDocInterfacesOverview = 'Interfaces overview';
|
||||||
|
SDocInterface = 'Interfaces';
|
||||||
SDocPage = 'Page';
|
SDocPage = 'Page';
|
||||||
SDocMethod = 'Method';
|
SDocMethod = 'Method';
|
||||||
SDocProperty = 'Property';
|
SDocProperty = 'Property';
|
||||||
|
@ -89,8 +89,6 @@ type
|
|||||||
FOnTest: TNotifyEvent;
|
FOnTest: TNotifyEvent;
|
||||||
FPackage: TPasPackage;
|
FPackage: TPasPackage;
|
||||||
FCharSet : String;
|
FCharSet : String;
|
||||||
procedure AddElementsFromList(L: TStrings; List: TFPList; UsePathName : Boolean = False);
|
|
||||||
procedure AppendTypeDecl(AType: TPasType; TableEl, CodeEl: TDomElement);
|
|
||||||
procedure CreateMinusImage;
|
procedure CreateMinusImage;
|
||||||
procedure CreatePlusImage;
|
procedure CreatePlusImage;
|
||||||
function GetPageCount: Integer;
|
function GetPageCount: Integer;
|
||||||
@ -218,12 +216,10 @@ type
|
|||||||
function AppendProcType(CodeEl, TableEl: TDOMElement;
|
function AppendProcType(CodeEl, TableEl: TDOMElement;
|
||||||
Element: TPasProcedureType; Indent: Integer): TDOMElement;
|
Element: TPasProcedureType; Indent: Integer): TDOMElement;
|
||||||
procedure AppendProcExt(CodeEl: TDOMElement; Element: TPasProcedure);
|
procedure AppendProcExt(CodeEl: TDOMElement; Element: TPasProcedure);
|
||||||
procedure AppendProcDecl(CodeEl, TableEl: TDOMElement;
|
procedure AppendProcDecl(CodeEl, TableEl: TDOMElement; Element: TPasProcedureBase);
|
||||||
Element: TPasProcedureBase);
|
procedure AppendProcArgsSection(Parent: TDOMNode; Element: TPasProcedureType; SkipResult : Boolean = False);
|
||||||
procedure AppendProcArgsSection(Parent: TDOMNode;
|
function AppendRecordType(CodeEl, TableEl: TDOMElement; Element: TPasRecordType; NestingLevel: Integer): TDOMElement;
|
||||||
Element: TPasProcedureType; SkipResult : Boolean = False);
|
procedure CreateMemberDeclarations(AParent: TPasElement; Members: TFPList; TableEl : TDOmelement);
|
||||||
function AppendRecordType(CodeEl, TableEl: TDOMElement;
|
|
||||||
Element: TPasRecordType; NestingLevel: Integer): TDOMElement;
|
|
||||||
|
|
||||||
procedure AppendTitle(const AText: DOMString; Hints : TPasMemberHints = []);
|
procedure AppendTitle(const AText: DOMString; Hints : TPasMemberHints = []);
|
||||||
procedure AppendMenuBar(ASubpageIndex: Integer);
|
procedure AppendMenuBar(ASubpageIndex: Integer);
|
||||||
@ -250,15 +246,15 @@ type
|
|||||||
procedure CreateVarPageBody(AVar: TPasVariable);
|
procedure CreateVarPageBody(AVar: TPasVariable);
|
||||||
procedure CreateProcPageBody(AProc: TPasProcedureBase);
|
procedure CreateProcPageBody(AProc: TPasProcedureBase);
|
||||||
Procedure CreateTopicLinks(Node : TDocNode; PasElement : TPasElement);
|
Procedure CreateTopicLinks(Node : TDocNode; PasElement : TPasElement);
|
||||||
|
procedure AddElementsFromList(L: TStrings; List: TFPList; UsePathName : Boolean = False);
|
||||||
|
procedure AppendTypeDecl(AType: TPasType; TableEl, CodeEl: TDomElement);
|
||||||
public
|
public
|
||||||
constructor Create(APackage: TPasPackage; AEngine: TFPDocEngine); override;
|
constructor Create(APackage: TPasPackage; AEngine: TFPDocEngine); override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
|
|
||||||
// Single-page generation
|
// Single-page generation
|
||||||
function CreateHTMLPage(AElement: TPasElement;
|
function CreateHTMLPage(AElement: TPasElement; ASubpageIndex: Integer): TXMLDocument;
|
||||||
ASubpageIndex: Integer): TXMLDocument;
|
function CreateXHTMLPage(AElement: TPasElement; ASubpageIndex: Integer): TXMLDocument;
|
||||||
function CreateXHTMLPage(AElement: TPasElement;
|
|
||||||
ASubpageIndex: Integer): TXMLDocument;
|
|
||||||
|
|
||||||
// For producing complete package documentation
|
// For producing complete package documentation
|
||||||
procedure WriteHTMLPages; virtual;
|
procedure WriteHTMLPages; virtual;
|
||||||
@ -523,18 +519,6 @@ constructor THTMLWriter.Create(APackage: TPasPackage; AEngine: TFPDocEngine);
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure AddPages(AElement: TPasElement; ASubpageIndex: Integer;
|
|
||||||
AList: TFPList);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
if AList.Count > 0 then
|
|
||||||
begin
|
|
||||||
AddPage(AElement, ASubpageIndex);
|
|
||||||
for i := 0 to AList.Count - 1 do
|
|
||||||
AddPage(TPasElement(AList[i]), 0);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
Function HaveClasses(AModule: TPasModule) : Boolean;
|
Function HaveClasses(AModule: TPasModule) : Boolean;
|
||||||
|
|
||||||
@ -545,7 +529,40 @@ constructor THTMLWriter.Create(APackage: TPasPackage; AEngine: TFPDocEngine);
|
|||||||
and (AModule.InterfaceSection.Classes.Count>0);
|
and (AModule.InterfaceSection.Classes.Count>0);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure ScanModule(AModule: TPasModule; LinkList : TObjectList);
|
procedure AddPages(AElement: TPasElement; ASubpageIndex: Integer;
|
||||||
|
AList: TFPList);
|
||||||
|
var
|
||||||
|
i,j: Integer;
|
||||||
|
R : TPasRecordtype;
|
||||||
|
FPEl : TPasElement;
|
||||||
|
DocNode: TDocNode;
|
||||||
|
begin
|
||||||
|
if AList.Count > 0 then
|
||||||
|
begin
|
||||||
|
AddPage(AElement, ASubpageIndex);
|
||||||
|
for i := 0 to AList.Count - 1 do
|
||||||
|
begin
|
||||||
|
AddPage(TPasElement(AList[i]), 0);
|
||||||
|
if (TObject(AList[i]) is TPasRecordType) then
|
||||||
|
begin
|
||||||
|
R:=TObject(AList[I]) as TPasRecordType;
|
||||||
|
For J:=0 to R.Members.Count-1 do
|
||||||
|
begin
|
||||||
|
FPEl:=TPasElement(R.Members[J]);
|
||||||
|
if ((FPEL is TPasProperty) or (FPEL is TPasProcedureBase))
|
||||||
|
and Engine.ShowElement(FPEl) then
|
||||||
|
begin
|
||||||
|
DocNode := Engine.FindDocNode(FPEl);
|
||||||
|
if Assigned(DocNode) then
|
||||||
|
AddPage(FPEl, 0);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
Procedure AddClassMemberPages(AModule: TPasModule; LinkList : TObjectList);
|
||||||
var
|
var
|
||||||
i, j, k: Integer;
|
i, j, k: Integer;
|
||||||
s: String;
|
s: String;
|
||||||
@ -554,30 +571,11 @@ constructor THTMLWriter.Create(APackage: TPasPackage; AEngine: TFPDocEngine);
|
|||||||
DocNode: TDocNode;
|
DocNode: TDocNode;
|
||||||
ALink : DOMString;
|
ALink : DOMString;
|
||||||
DidAutolink: Boolean;
|
DidAutolink: Boolean;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
if not assigned(Amodule.Interfacesection) then
|
for i := 0 to AModule.InterfaceSection.Classes.Count - 1 do
|
||||||
exit;
|
|
||||||
AddPage(AModule, 0);
|
|
||||||
AddPage(AModule,IndexSubIndex);
|
|
||||||
AddTopicPages(AModule);
|
|
||||||
with AModule do
|
|
||||||
begin
|
begin
|
||||||
if InterfaceSection.ResStrings.Count > 0 then
|
ClassEl := TPasClassType(AModule.InterfaceSection.Classes[i]);
|
||||||
begin
|
|
||||||
AddPage(AModule, ResstrSubindex);
|
|
||||||
s := Allocator.GetFilename(AModule, ResstrSubindex);
|
|
||||||
for i := 0 to InterfaceSection.ResStrings.Count - 1 do
|
|
||||||
with TPasResString(InterfaceSection.ResStrings[i]) do
|
|
||||||
Engine.AddLink(PathName, s + '#' + LowerCase(Name));
|
|
||||||
end;
|
|
||||||
AddPages(AModule, ConstsSubindex, InterfaceSection.Consts);
|
|
||||||
AddPages(AModule, TypesSubindex, InterfaceSection.Types);
|
|
||||||
if InterfaceSection.Classes.Count > 0 then
|
|
||||||
begin
|
|
||||||
AddPage(AModule, ClassesSubindex);
|
|
||||||
for i := 0 to InterfaceSection.Classes.Count - 1 do
|
|
||||||
begin
|
|
||||||
ClassEl := TPasClassType(InterfaceSection.Classes[i]);
|
|
||||||
AddPage(ClassEl, 0);
|
AddPage(ClassEl, 0);
|
||||||
// !!!: Only add when there are items
|
// !!!: Only add when there are items
|
||||||
AddPage(ClassEl, PropertiesByInheritanceSubindex);
|
AddPage(ClassEl, PropertiesByInheritanceSubindex);
|
||||||
@ -586,13 +584,11 @@ constructor THTMLWriter.Create(APackage: TPasPackage; AEngine: TFPDocEngine);
|
|||||||
AddPage(ClassEl, MethodsByNameSubindex);
|
AddPage(ClassEl, MethodsByNameSubindex);
|
||||||
AddPage(ClassEl, EventsByInheritanceSubindex);
|
AddPage(ClassEl, EventsByInheritanceSubindex);
|
||||||
AddPage(ClassEl, EventsByNameSubindex);
|
AddPage(ClassEl, EventsByNameSubindex);
|
||||||
|
|
||||||
for j := 0 to ClassEl.Members.Count - 1 do
|
for j := 0 to ClassEl.Members.Count - 1 do
|
||||||
begin
|
begin
|
||||||
FPEl := TPasElement(ClassEl.Members[j]);
|
FPEl := TPasElement(ClassEl.Members[j]);
|
||||||
if Not Engine.ShowElement(FPEl) then
|
if Not Engine.ShowElement(FPEl) then
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
DocNode := Engine.FindDocNode(FPEl);
|
DocNode := Engine.FindDocNode(FPEl);
|
||||||
if Assigned(DocNode) then
|
if Assigned(DocNode) then
|
||||||
begin
|
begin
|
||||||
@ -634,6 +630,36 @@ constructor THTMLWriter.Create(APackage: TPasPackage; AEngine: TFPDocEngine);
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure ScanModule(AModule: TPasModule; LinkList : TObjectList);
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
s: String;
|
||||||
|
|
||||||
|
begin
|
||||||
|
if not assigned(Amodule.Interfacesection) then
|
||||||
|
exit;
|
||||||
|
AddPage(AModule, 0);
|
||||||
|
AddPage(AModule,IndexSubIndex);
|
||||||
|
AddTopicPages(AModule);
|
||||||
|
with AModule do
|
||||||
|
begin
|
||||||
|
if InterfaceSection.ResStrings.Count > 0 then
|
||||||
|
begin
|
||||||
|
AddPage(AModule, ResstrSubindex);
|
||||||
|
s := Allocator.GetFilename(AModule, ResstrSubindex);
|
||||||
|
for i := 0 to InterfaceSection.ResStrings.Count - 1 do
|
||||||
|
with TPasResString(InterfaceSection.ResStrings[i]) do
|
||||||
|
Engine.AddLink(PathName, s + '#' + LowerCase(Name));
|
||||||
|
end;
|
||||||
|
AddPages(AModule, ConstsSubindex, InterfaceSection.Consts);
|
||||||
|
AddPages(AModule, TypesSubindex, InterfaceSection.Types);
|
||||||
|
if InterfaceSection.Classes.Count > 0 then
|
||||||
|
begin
|
||||||
|
AddPage(AModule, ClassesSubindex);
|
||||||
|
AddClassMemberPages(AModule,LinkList);
|
||||||
|
end;
|
||||||
|
|
||||||
AddPages(AModule, ProcsSubindex, InterfaceSection.Functions);
|
AddPages(AModule, ProcsSubindex, InterfaceSection.Functions);
|
||||||
AddPages(AModule, VarsSubindex, InterfaceSection.Variables);
|
AddPages(AModule, VarsSubindex, InterfaceSection.Variables);
|
||||||
end;
|
end;
|
||||||
@ -1822,7 +1848,7 @@ procedure THTMLWriter.AppendProcDecl(CodeEl, TableEl: TDOMElement;
|
|||||||
AppendProcArgsSection(TableEl.ParentNode, AProc.ProcType, SkipResult);
|
AppendProcArgsSection(TableEl.ParentNode, AProc.ProcType, SkipResult);
|
||||||
|
|
||||||
AppendKw(CodeEl, AProc.TypeName);
|
AppendKw(CodeEl, AProc.TypeName);
|
||||||
if Element.Parent.ClassType = TPasClassType then
|
if (Element.Parent.ClassType = TPasClassType) or (Element.Parent.ClassType = TPasRecordType) then
|
||||||
begin
|
begin
|
||||||
AppendText(CodeEl, ' ');
|
AppendText(CodeEl, ' ');
|
||||||
AppendHyperlink(CodeEl, Element.Parent);
|
AppendHyperlink(CodeEl, Element.Parent);
|
||||||
@ -1908,6 +1934,8 @@ var
|
|||||||
Variable: TPasVariable;
|
Variable: TPasVariable;
|
||||||
TREl, TDEl: TDOMElement;
|
TREl, TDEl: TDOMElement;
|
||||||
CurVariant: TPasVariant;
|
CurVariant: TPasVariant;
|
||||||
|
isExtended : Boolean;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
if not (Element.Parent is TPasVariant) then
|
if not (Element.Parent is TPasVariant) then
|
||||||
if Element.IsPacked then
|
if Element.IsPacked then
|
||||||
@ -1918,6 +1946,16 @@ begin
|
|||||||
else
|
else
|
||||||
AppendKw(CodeEl, 'record');
|
AppendKw(CodeEl, 'record');
|
||||||
|
|
||||||
|
isExtended:=False;
|
||||||
|
I:=0;
|
||||||
|
while (not isExtended) and (I<Element.Members.Count) do
|
||||||
|
begin
|
||||||
|
isExtended:=Not (TObject(Element.Members[i]) is TPasVariable);
|
||||||
|
Inc(i);
|
||||||
|
end;
|
||||||
|
if isExtended then
|
||||||
|
CreateMemberDeclarations(Element,Element.Members,TableEl)
|
||||||
|
else
|
||||||
for i := 0 to Element.Members.Count - 1 do
|
for i := 0 to Element.Members.Count - 1 do
|
||||||
begin
|
begin
|
||||||
Variable := TPasVariable(Element.Members[i]);
|
Variable := TPasVariable(Element.Members[i]);
|
||||||
@ -3106,59 +3144,10 @@ begin
|
|||||||
(Copy(AMember.Name, 1, 2) = 'On');
|
(Copy(AMember.Name, 1, 2) = 'On');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure THTMLWriter.CreateClassPageBody(AClass: TPasClassType;
|
procedure THTMLWriter.CreateMemberDeclarations(AParent : TPasElement; Members : TFPList; TableEl : TDOmelement);
|
||||||
ASubpageIndex: Integer);
|
|
||||||
type
|
|
||||||
TMemberFilter = function(AMember: TPasElement): Boolean;
|
|
||||||
var
|
var
|
||||||
ParaEl: TDOMElement;
|
TREl, TDEl, CodeEl: TDOMElement;
|
||||||
|
|
||||||
procedure AppendMemberListLink(AListSubpageIndex: Integer;
|
|
||||||
const AText: DOMString);
|
|
||||||
var
|
|
||||||
LinkEl: TDOMElement;
|
|
||||||
begin
|
|
||||||
if FUseMenuBrackets then
|
|
||||||
AppendText(ParaEl, '[');
|
|
||||||
LinkEl := CreateEl(ParaEl, 'a');
|
|
||||||
LinkEl['href'] :=
|
|
||||||
FixHtmlPath(ResolveLinkWithinPackage(AClass, AListSubpageIndex));
|
|
||||||
LinkEl['onClick'] := 'window.open(''' + LinkEl['href'] + ''', ''list'', ' +
|
|
||||||
'''dependent=yes,resizable=yes,scrollbars=yes,height=400,width=300''); return false;';
|
|
||||||
AppendText(LinkEl, AText);
|
|
||||||
AppendText(ParaEl, ' (');
|
|
||||||
LinkEl := CreateEl(ParaEl, 'a');
|
|
||||||
LinkEl['href'] :=
|
|
||||||
FixHtmlPath(ResolveLinkWithinPackage(AClass, AListSubpageIndex + 1));
|
|
||||||
LinkEl['onClick'] := 'window.open(''' + LinkEl['href'] + ''', ''list'', ' +
|
|
||||||
'''dependent=yes,resizable=yes,scrollbars=yes,height=400,width=300''); return false;';
|
|
||||||
AppendText(LinkEl, SDocByName);
|
|
||||||
AppendText(ParaEl, ')');
|
|
||||||
if FUseMenuBrackets then
|
|
||||||
AppendText(ParaEl, '] ')
|
|
||||||
else
|
|
||||||
AppendText(ParaEl, ' ');
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure AppendGenericTypes(CodeEl : TDomElement; AList : TFPList; isSpecialize : Boolean);
|
|
||||||
|
|
||||||
Var
|
|
||||||
I : integer;
|
|
||||||
begin
|
|
||||||
for I:=0 to AList.Count-1 do
|
|
||||||
begin
|
|
||||||
if I=0 then
|
|
||||||
AppendSym(CodeEl, '<')
|
|
||||||
else
|
|
||||||
AppendSym(CodeEl, ',');
|
|
||||||
AppendText(CodeEl,TPasGenericTemplateType(AList[i]).Name);
|
|
||||||
end;
|
|
||||||
AppendSym(CodeEl, '>');
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure CreateMainPage;
|
|
||||||
var
|
|
||||||
TableEl, TREl, TDEl, CodeEl: TDOMElement;
|
|
||||||
DocNode: TDocNode;
|
DocNode: TDocNode;
|
||||||
Member: TPasElement;
|
Member: TPasElement;
|
||||||
MVisibility,
|
MVisibility,
|
||||||
@ -3167,72 +3156,18 @@ var
|
|||||||
s: String;
|
s: String;
|
||||||
t : TPasType;
|
t : TPasType;
|
||||||
ah,ol,wt,ct,wc,cc : boolean;
|
ah,ol,wt,ct,wc,cc : boolean;
|
||||||
ThisInterface,
|
isRecord : Boolean;
|
||||||
ThisClass: TPasClassType;
|
|
||||||
HaveSeenTObject: Boolean;
|
|
||||||
LName : String;
|
|
||||||
ThisNode : TPasUnresolvedTypeRef;
|
|
||||||
begin
|
|
||||||
AppendMenuBar(-1);
|
|
||||||
AppendTitle(AClass.Name,AClass.Hints);
|
|
||||||
|
|
||||||
ParaEl := CreatePara(BodyElement);
|
|
||||||
AppendMemberListLink(PropertiesByInheritanceSubindex, SDocProperties);
|
|
||||||
AppendMemberListLink(MethodsByInheritanceSubindex, SDocMethods);
|
|
||||||
AppendMemberListLink(EventsByInheritanceSubindex, SDocEvents);
|
|
||||||
|
|
||||||
AppendShortDescr(CreatePara(BodyElement), AClass);
|
|
||||||
AppendText(CreateH2(BodyElement), SDocDeclaration);
|
|
||||||
AppendSourceRef(AClass);
|
|
||||||
|
|
||||||
TableEl := CreateTable(BodyElement);
|
|
||||||
|
|
||||||
TREl := CreateTR(TableEl);
|
|
||||||
TDEl := CreateTD(TREl);
|
|
||||||
CodeEl := CreateCode(CreatePara(TDEl));
|
|
||||||
AppendKw(CodeEl, 'type');
|
|
||||||
if AClass.ObjKind=okGeneric then
|
|
||||||
AppendKw(CodeEl, ' generic ');
|
|
||||||
AppendText(CodeEl, ' ' + AClass.Name + ' ');
|
|
||||||
if AClass.ObjKind=okGeneric then
|
|
||||||
AppendGenericTypes(CodeEl,AClass.GenericTemplateTypes,false);
|
|
||||||
AppendSym(CodeEl, '=');
|
|
||||||
AppendText(CodeEl, ' ');
|
|
||||||
if AClass.ObjKind<>okSpecialize then
|
|
||||||
AppendKw(CodeEl, ObjKindNames[AClass.ObjKind])
|
|
||||||
else
|
|
||||||
AppendKw(CodeEl, ' specialize ');
|
|
||||||
|
|
||||||
if Assigned(AClass.AncestorType) then
|
|
||||||
begin
|
begin
|
||||||
if AClass.ObjKind=okSpecialize then
|
isRecord:=AParent is TPasRecordType;
|
||||||
begin
|
if Members.Count > 0 then
|
||||||
AppendHyperlink(CodeEl, AClass.AncestorType);
|
|
||||||
AppendGenericTypes(CodeEl,AClass.GenericTemplateTypes,true)
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
AppendSym(CodeEl, '(');
|
|
||||||
AppendHyperlink(CodeEl, AClass.AncestorType);
|
|
||||||
if AClass.Interfaces.count>0 Then
|
|
||||||
begin
|
|
||||||
for i:=0 to AClass.interfaces.count-1 do
|
|
||||||
begin
|
|
||||||
AppendSym(CodeEl, ', ');
|
|
||||||
AppendHyperlink(CodeEl,TPasClassType(AClass.Interfaces[i]));
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
AppendSym(CodeEl, ')');
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
if AClass.Members.Count > 0 then
|
|
||||||
begin
|
begin
|
||||||
wt:=False;
|
wt:=False;
|
||||||
wc:=False;
|
wc:=False;
|
||||||
CurVisibility := visDefault;
|
CurVisibility := visDefault;
|
||||||
for i := 0 to AClass.Members.Count - 1 do
|
for i := 0 to Members.Count - 1 do
|
||||||
begin
|
begin
|
||||||
Member := TPasElement(AClass.Members[i]);
|
Member := TPasElement(Members[i]);
|
||||||
MVisibility:=Member.Visibility;
|
MVisibility:=Member.Visibility;
|
||||||
ol:=(Member is TPasOverloadedProc);
|
ol:=(Member is TPasOverloadedProc);
|
||||||
ah:=ol or ((Member is TPasProcedure) and (TPasProcedure(Member).ProcType.Args.Count > 0));
|
ah:=ol or ((Member is TPasProcedure) and (TPasProcedure(Member).ProcType.Args.Count > 0));
|
||||||
@ -3325,7 +3260,10 @@ var
|
|||||||
end
|
end
|
||||||
else if (Member is TPasVariable) then
|
else if (Member is TPasVariable) then
|
||||||
begin
|
begin
|
||||||
AppendHyperlink(CodeEl, Member);
|
if not isRecord then
|
||||||
|
AppendHyperlink(CodeEl, Member)
|
||||||
|
else
|
||||||
|
AppendText(CodeEl, Member.Name);
|
||||||
AppendSym(CodeEl, ': ');
|
AppendSym(CodeEl, ': ');
|
||||||
AppendHyperlink(CodeEl, TPasVariable(Member).VarType);
|
AppendHyperlink(CodeEl, TPasVariable(Member).VarType);
|
||||||
AppendSym(CodeEl, ';');
|
AppendSym(CodeEl, ';');
|
||||||
@ -3339,9 +3277,123 @@ var
|
|||||||
AppendSym(CodeEl, ';');
|
AppendSym(CodeEl, ';');
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
CodeEl := CreateCode(CreatePara(CreateTD(CreateTR(TableEl))));
|
CodeEl := CreateCode(CreatePara(CreateTD(CreateTR(TableEl))));
|
||||||
end;
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure THTMLWriter.CreateClassPageBody(AClass: TPasClassType;
|
||||||
|
ASubpageIndex: Integer);
|
||||||
|
type
|
||||||
|
TMemberFilter = function(AMember: TPasElement): Boolean;
|
||||||
|
var
|
||||||
|
ParaEl: TDOMElement;
|
||||||
|
|
||||||
|
procedure AppendMemberListLink(AListSubpageIndex: Integer;
|
||||||
|
const AText: DOMString);
|
||||||
|
var
|
||||||
|
LinkEl: TDOMElement;
|
||||||
|
begin
|
||||||
|
if FUseMenuBrackets then
|
||||||
|
AppendText(ParaEl, '[');
|
||||||
|
LinkEl := CreateEl(ParaEl, 'a');
|
||||||
|
LinkEl['href'] :=
|
||||||
|
FixHtmlPath(ResolveLinkWithinPackage(AClass, AListSubpageIndex));
|
||||||
|
LinkEl['onClick'] := 'window.open(''' + LinkEl['href'] + ''', ''list'', ' +
|
||||||
|
'''dependent=yes,resizable=yes,scrollbars=yes,height=400,width=300''); return false;';
|
||||||
|
AppendText(LinkEl, AText);
|
||||||
|
AppendText(ParaEl, ' (');
|
||||||
|
LinkEl := CreateEl(ParaEl, 'a');
|
||||||
|
LinkEl['href'] :=
|
||||||
|
FixHtmlPath(ResolveLinkWithinPackage(AClass, AListSubpageIndex + 1));
|
||||||
|
LinkEl['onClick'] := 'window.open(''' + LinkEl['href'] + ''', ''list'', ' +
|
||||||
|
'''dependent=yes,resizable=yes,scrollbars=yes,height=400,width=300''); return false;';
|
||||||
|
AppendText(LinkEl, SDocByName);
|
||||||
|
AppendText(ParaEl, ')');
|
||||||
|
if FUseMenuBrackets then
|
||||||
|
AppendText(ParaEl, '] ')
|
||||||
|
else
|
||||||
|
AppendText(ParaEl, ' ');
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure AppendGenericTypes(CodeEl : TDomElement; AList : TFPList; isSpecialize : Boolean);
|
||||||
|
|
||||||
|
Var
|
||||||
|
I : integer;
|
||||||
|
begin
|
||||||
|
for I:=0 to AList.Count-1 do
|
||||||
|
begin
|
||||||
|
if I=0 then
|
||||||
|
AppendSym(CodeEl, '<')
|
||||||
|
else
|
||||||
|
AppendSym(CodeEl, ',');
|
||||||
|
AppendText(CodeEl,TPasGenericTemplateType(AList[i]).Name);
|
||||||
|
end;
|
||||||
|
AppendSym(CodeEl, '>');
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure CreateMainPage;
|
||||||
|
var
|
||||||
|
TableEl, TREl, TDEl, CodeEl: TDOMElement;
|
||||||
|
i: Integer;
|
||||||
|
ThisInterface,
|
||||||
|
ThisClass: TPasClassType;
|
||||||
|
HaveSeenTObject: Boolean;
|
||||||
|
LName : String;
|
||||||
|
ThisNode : TPasUnresolvedTypeRef;
|
||||||
|
begin
|
||||||
|
AppendMenuBar(-1);
|
||||||
|
AppendTitle(AClass.Name,AClass.Hints);
|
||||||
|
|
||||||
|
ParaEl := CreatePara(BodyElement);
|
||||||
|
AppendMemberListLink(PropertiesByInheritanceSubindex, SDocProperties);
|
||||||
|
AppendMemberListLink(MethodsByInheritanceSubindex, SDocMethods);
|
||||||
|
AppendMemberListLink(EventsByInheritanceSubindex, SDocEvents);
|
||||||
|
|
||||||
|
AppendShortDescr(CreatePara(BodyElement), AClass);
|
||||||
|
AppendText(CreateH2(BodyElement), SDocDeclaration);
|
||||||
|
AppendSourceRef(AClass);
|
||||||
|
|
||||||
|
TableEl := CreateTable(BodyElement);
|
||||||
|
|
||||||
|
TREl := CreateTR(TableEl);
|
||||||
|
TDEl := CreateTD(TREl);
|
||||||
|
CodeEl := CreateCode(CreatePara(TDEl));
|
||||||
|
AppendKw(CodeEl, 'type');
|
||||||
|
if AClass.ObjKind=okGeneric then
|
||||||
|
AppendKw(CodeEl, ' generic ');
|
||||||
|
AppendText(CodeEl, ' ' + AClass.Name + ' ');
|
||||||
|
if AClass.ObjKind=okGeneric then
|
||||||
|
AppendGenericTypes(CodeEl,AClass.GenericTemplateTypes,false);
|
||||||
|
AppendSym(CodeEl, '=');
|
||||||
|
AppendText(CodeEl, ' ');
|
||||||
|
if AClass.ObjKind<>okSpecialize then
|
||||||
|
AppendKw(CodeEl, ObjKindNames[AClass.ObjKind])
|
||||||
|
else
|
||||||
|
AppendKw(CodeEl, ' specialize ');
|
||||||
|
|
||||||
|
if Assigned(AClass.AncestorType) then
|
||||||
|
begin
|
||||||
|
if AClass.ObjKind=okSpecialize then
|
||||||
|
begin
|
||||||
|
AppendHyperlink(CodeEl, AClass.AncestorType);
|
||||||
|
AppendGenericTypes(CodeEl,AClass.GenericTemplateTypes,true)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
AppendSym(CodeEl, '(');
|
||||||
|
AppendHyperlink(CodeEl, AClass.AncestorType);
|
||||||
|
if AClass.Interfaces.count>0 Then
|
||||||
|
begin
|
||||||
|
for i:=0 to AClass.interfaces.count-1 do
|
||||||
|
begin
|
||||||
|
AppendSym(CodeEl, ', ');
|
||||||
|
AppendHyperlink(CodeEl,TPasClassType(AClass.Interfaces[i]));
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
AppendSym(CodeEl, ')');
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
CreateMemberDeclarations(AClass, AClass.Members,TableEl);
|
||||||
|
|
||||||
AppendText(CodeEl, ' '); // !!!: Dirty trick, necessary for current XML writer
|
AppendText(CodeEl, ' '); // !!!: Dirty trick, necessary for current XML writer
|
||||||
if not AClass.IsShortDefinition then
|
if not AClass.IsShortDefinition then
|
||||||
|
@ -29,6 +29,9 @@ const
|
|||||||
TIPFExtension = '.ipf';
|
TIPFExtension = '.ipf';
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
{ TIPFNewWriter }
|
||||||
|
|
||||||
TIPFNewWriter = class(TLinearWriter)
|
TIPFNewWriter = class(TLinearWriter)
|
||||||
private
|
private
|
||||||
InPackageOverview: Boolean;
|
InPackageOverview: Boolean;
|
||||||
@ -85,7 +88,7 @@ type
|
|||||||
procedure StartSubSection(SubSectionName : String);override;
|
procedure StartSubSection(SubSectionName : String);override;
|
||||||
procedure StartSubSubSection(SubSubSectionName : String);override;
|
procedure StartSubSubSection(SubSubSectionName : String);override;
|
||||||
procedure StartChapter(ChapterName : String); override;
|
procedure StartChapter(ChapterName : String); override;
|
||||||
procedure StartOverview(WithAccess : Boolean); override;
|
procedure StartOverview(Const What : String;WithAccess : Boolean); override;
|
||||||
procedure EndOverview; override;
|
procedure EndOverview; override;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); override;
|
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); override;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); override;
|
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); override;
|
||||||
@ -613,7 +616,7 @@ end;
|
|||||||
|
|
||||||
{ TLinearWriter overrides}
|
{ TLinearWriter overrides}
|
||||||
|
|
||||||
class function TIPFNewWriter.FileNameExtension: String;
|
class function TIPFNewWriter.FileNameExtension: string;
|
||||||
begin
|
begin
|
||||||
Result := TIPFExtension;
|
Result := TIPFExtension;
|
||||||
end;
|
end;
|
||||||
@ -641,7 +644,7 @@ begin
|
|||||||
Result := StringReplace(Result, ' ', '_', [rfReplaceAll]);
|
Result := StringReplace(Result, ' ', '_', [rfReplaceAll]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TIPFNewWriter.EscapeText(S : String) : String;
|
function TIPFNewWriter.EscapeText(S: String): String;
|
||||||
var
|
var
|
||||||
i: Integer;
|
i: Integer;
|
||||||
begin
|
begin
|
||||||
@ -697,7 +700,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TIPFNewWriter.StripText(S : String) : String;
|
function TIPFNewWriter.StripText(S: String): String;
|
||||||
var
|
var
|
||||||
I: Integer;
|
I: Integer;
|
||||||
begin
|
begin
|
||||||
@ -740,7 +743,7 @@ begin
|
|||||||
writeln('');
|
writeln('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIPFNewWriter.WriteLabel(const s: String);
|
procedure TIPFNewWriter.WriteLabel(const S: String);
|
||||||
var
|
var
|
||||||
x: String;
|
x: String;
|
||||||
begin
|
begin
|
||||||
@ -762,7 +765,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIPFNewWriter.WriteIndex(const s : String);
|
procedure TIPFNewWriter.WriteIndex(const S: String);
|
||||||
begin
|
begin
|
||||||
// writeln(':i1 id=' + s + '.');
|
// writeln(':i1 id=' + s + '.');
|
||||||
end;
|
end;
|
||||||
@ -878,19 +881,19 @@ begin
|
|||||||
//Writeln(':h5.' + SubSubSectionName);
|
//Writeln(':h5.' + SubSubSectionName);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartProcedure;
|
procedure TIPFNewWriter.StartProcedure;
|
||||||
begin
|
begin
|
||||||
//writeln('');
|
//writeln('');
|
||||||
//writeln(':ul.');
|
//writeln(':ul.');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.EndProcedure;
|
procedure TIPFNewWriter.EndProcedure;
|
||||||
begin
|
begin
|
||||||
//writeln('');
|
//writeln('');
|
||||||
//writeln(':eul.');
|
//writeln(':eul.');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartSynopsis;
|
procedure TIPFNewWriter.StartSynopsis;
|
||||||
begin
|
begin
|
||||||
writeln('');
|
writeln('');
|
||||||
writeln(':p.');
|
writeln(':p.');
|
||||||
@ -900,7 +903,7 @@ begin
|
|||||||
writeln(':lm margin=3.');
|
writeln(':lm margin=3.');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartDeclaration;
|
procedure TIPFNewWriter.StartDeclaration;
|
||||||
begin
|
begin
|
||||||
writeln('');
|
writeln('');
|
||||||
writeln(':p.');
|
writeln(':p.');
|
||||||
@ -909,7 +912,7 @@ begin
|
|||||||
writeln(':lm margin=3.');
|
writeln(':lm margin=3.');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartVisibility;
|
procedure TIPFNewWriter.StartVisibility;
|
||||||
begin
|
begin
|
||||||
writeln('');
|
writeln('');
|
||||||
writeln(':p.');
|
writeln(':p.');
|
||||||
@ -919,7 +922,7 @@ begin
|
|||||||
writeln('.br');
|
writeln('.br');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartDescription;
|
procedure TIPFNewWriter.StartDescription;
|
||||||
begin
|
begin
|
||||||
writeln('');
|
writeln('');
|
||||||
writeln(':p.');
|
writeln(':p.');
|
||||||
@ -929,7 +932,7 @@ begin
|
|||||||
writeln('.br');
|
writeln('.br');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartErrors;
|
procedure TIPFNewWriter.StartErrors;
|
||||||
begin
|
begin
|
||||||
writeln('');
|
writeln('');
|
||||||
writeln(':p.');
|
writeln(':p.');
|
||||||
@ -949,7 +952,7 @@ begin
|
|||||||
writeln('.br');
|
writeln('.br');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartAccess;
|
procedure TIPFNewWriter.StartAccess;
|
||||||
begin
|
begin
|
||||||
writeln('');
|
writeln('');
|
||||||
writeln(':p.');
|
writeln(':p.');
|
||||||
@ -959,14 +962,14 @@ begin
|
|||||||
writeln('.br');
|
writeln('.br');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartProperty;
|
procedure TIPFNewWriter.StartProperty;
|
||||||
begin
|
begin
|
||||||
//writeln('');
|
//writeln('');
|
||||||
//Writeln('.* here I am');
|
//Writeln('.* here I am');
|
||||||
//writeln(':ul.');
|
//writeln(':ul.');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.EndProperty;
|
procedure TIPFNewWriter.EndProperty;
|
||||||
begin
|
begin
|
||||||
//writeln('');
|
//writeln('');
|
||||||
//writeln(':eul.');
|
//writeln(':eul.');
|
||||||
@ -1003,7 +1006,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIPFNewWriter.StartOverview(WithAccess : Boolean);
|
procedure TIPFNewWriter.StartOverview(const What: String; WithAccess: Boolean);
|
||||||
begin
|
begin
|
||||||
{
|
{
|
||||||
If With access then it is a property overview.
|
If With access then it is a property overview.
|
||||||
@ -1065,7 +1068,7 @@ begin
|
|||||||
WriteLn(Format(':pd. %s', [ADescr]));
|
WriteLn(Format(':pd. %s', [ADescr]));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TIPFNewWriter.StartSeeAlso;
|
procedure TIPFNewWriter.StartSeealso;
|
||||||
begin
|
begin
|
||||||
writeln('');
|
writeln('');
|
||||||
writeln(':p.');
|
writeln(':p.');
|
||||||
|
@ -75,7 +75,7 @@ Type
|
|||||||
procedure StartSubSection(SubSectionName : String);override;
|
procedure StartSubSection(SubSectionName : String);override;
|
||||||
procedure StartSubSubSection(SubSubSectionName : String);override;
|
procedure StartSubSubSection(SubSubSectionName : String);override;
|
||||||
procedure StartChapter(ChapterName : String); override;
|
procedure StartChapter(ChapterName : String); override;
|
||||||
procedure StartOverview(WithAccess : Boolean); override;
|
procedure StartOverview(Const What : String; WithAccess : Boolean); override;
|
||||||
procedure EndOverview; override;
|
procedure EndOverview; override;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); override;
|
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); override;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); override;
|
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); override;
|
||||||
@ -154,7 +154,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Function TLatexWriter.EscapeText(S : String) : String;
|
function TLaTeXWriter.EscapeText(S: String): String;
|
||||||
|
|
||||||
var
|
var
|
||||||
i: Integer;
|
i: Integer;
|
||||||
@ -179,7 +179,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TLatexWriter.StripText(S : String) : String;
|
function TLaTeXWriter.StripText(S: String): String;
|
||||||
|
|
||||||
var
|
var
|
||||||
I: Integer;
|
I: Integer;
|
||||||
@ -476,12 +476,12 @@ begin
|
|||||||
// Do nothing
|
// Do nothing
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLaTeXWriter.WriteLabel(const s: String);
|
procedure TLaTeXWriter.WriteLabel(const S: String);
|
||||||
begin
|
begin
|
||||||
WriteLnF('\label{%s}', [LowerCase(StripText(s))]);
|
WriteLnF('\label{%s}', [LowerCase(StripText(s))]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLaTeXWriter.WriteIndex(const s : String);
|
procedure TLaTeXWriter.WriteIndex(const S: String);
|
||||||
begin
|
begin
|
||||||
Write('\index{');
|
Write('\index{');
|
||||||
Write(EscapeText(s));
|
Write(EscapeText(s));
|
||||||
@ -512,7 +512,7 @@ begin
|
|||||||
Writeln('\end{verbatim}')
|
Writeln('\end{verbatim}')
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.WriteCommentLine;
|
procedure TLaTeXWriter.WriteCommentLine;
|
||||||
const
|
const
|
||||||
CommentLine =
|
CommentLine =
|
||||||
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%';
|
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%';
|
||||||
@ -520,13 +520,13 @@ begin
|
|||||||
Writeln(CommentLine);
|
Writeln(CommentLine);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.WriteComment(Comment : String);
|
procedure TLaTeXWriter.WriteComment(Comment: String);
|
||||||
begin
|
begin
|
||||||
Write('% ');
|
Write('% ');
|
||||||
Writeln(Comment);
|
Writeln(Comment);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.StartChapter(ChapterName : String);
|
procedure TLaTeXWriter.StartChapter(ChapterName: String);
|
||||||
begin
|
begin
|
||||||
WriteCommentLine;
|
WriteCommentLine;
|
||||||
WriteComment(ChapterName);
|
WriteComment(ChapterName);
|
||||||
@ -534,20 +534,20 @@ begin
|
|||||||
Writeln('\chapter{'+EscapeText(ChapterName)+'}');
|
Writeln('\chapter{'+EscapeText(ChapterName)+'}');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.StartSection(SectionName : String);
|
procedure TLaTeXWriter.StartSection(SectionName: String);
|
||||||
begin
|
begin
|
||||||
WriteCommentLine;
|
WriteCommentLine;
|
||||||
WriteComment(SectionName);
|
WriteComment(SectionName);
|
||||||
Writeln('\section{'+EscapeText(SectionName)+'}');
|
Writeln('\section{'+EscapeText(SectionName)+'}');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.StartSubSection(SubSectionName : String);
|
procedure TLaTeXWriter.StartSubSection(SubSectionName: String);
|
||||||
begin
|
begin
|
||||||
WriteComment(SubSectionName);
|
WriteComment(SubSectionName);
|
||||||
Writeln('\subsection{'+EscapeText(SubSectionName)+'}');
|
Writeln('\subsection{'+EscapeText(SubSectionName)+'}');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.StartSubSubSection(SubSubSectionName : String);
|
procedure TLaTeXWriter.StartSubSubSection(SubSubSectionName: String);
|
||||||
begin
|
begin
|
||||||
Writeln('\subsubsection{'+EscapeText(SubSubSectionName)+'}');
|
Writeln('\subsubsection{'+EscapeText(SubSubSectionName)+'}');
|
||||||
end;
|
end;
|
||||||
@ -564,38 +564,38 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.StartProcedure;
|
procedure TLaTeXWriter.StartProcedure;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('\begin{FPCList}');
|
Writeln('\begin{FPCList}');
|
||||||
InList:=True;
|
InList:=True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.StartSynopsis;
|
procedure TLaTeXWriter.StartSynopsis;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('\Synopsis');
|
Writeln('\Synopsis');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.StartDeclaration;
|
procedure TLaTeXWriter.StartDeclaration;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('\Declaration ');
|
Writeln('\Declaration ');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.StartVisibility;
|
procedure TLaTeXWriter.StartVisibility;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('\Visibility');
|
Writeln('\Visibility');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.StartDescription;
|
procedure TLaTeXWriter.StartDescription;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('\Description');
|
Writeln('\Description');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.StartErrors;
|
procedure TLaTeXWriter.StartErrors;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('\Errors');
|
Writeln('\Errors');
|
||||||
@ -606,68 +606,69 @@ begin
|
|||||||
Writeln('\VersionInfo');
|
Writeln('\VersionInfo');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.StartAccess;
|
procedure TLaTeXWriter.StartAccess;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('\Access')
|
Writeln('\Access')
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.EndProcedure;
|
procedure TLaTeXWriter.EndProcedure;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
InList:=False;
|
InList:=False;
|
||||||
Writeln('\end{FPCList}');
|
Writeln('\end{FPCList}');
|
||||||
end;
|
end;
|
||||||
Procedure TLatexWriter.StartProperty;
|
procedure TLaTeXWriter.StartProperty;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('\begin{FPCList}');
|
Writeln('\begin{FPCList}');
|
||||||
InList:=True;
|
InList:=True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.EndProperty;
|
procedure TLaTeXWriter.EndProperty;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
InList:=False;
|
InList:=False;
|
||||||
Writeln('\end{FPCList}');
|
Writeln('\end{FPCList}');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLateXWriter.WriteExampleFile(FN : String);
|
procedure TLaTeXWriter.WriteExampleFile(FN: String);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
If (FN<>'') then
|
If (FN<>'') then
|
||||||
WritelnF('\FPCexample{%s}', [ChangeFileExt(FN,'')]);
|
WritelnF('\FPCexample{%s}', [ChangeFileExt(FN,'')]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.StartOverview(WithAccess : Boolean);
|
procedure TLaTeXWriter.StartOverview(const What: String; WithAccess: Boolean);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
If WithAccess then
|
If WithAccess then
|
||||||
begin
|
begin
|
||||||
WriteLn('\begin{tabularx}{\textwidth}{lllX}');
|
WriteLn('\begin{tabularx}{\textwidth}{lllX}');
|
||||||
WriteLnF('%s & %s & %s & %s \\ \hline',[EscapeText(SDocPage), EscapeText(SDocProperty), EscapeText(SDocAccess), EscapeText(SDocDescription)])
|
WriteLnF('%s & %s & %s & %s \\ \hline',[EscapeText(SDocPage), EscapeText(What), EscapeText(SDocAccess), EscapeText(SDocDescription)])
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
WriteLn('\begin{tabularx}{\textwidth}{llX}');
|
WriteLn('\begin{tabularx}{\textwidth}{llX}');
|
||||||
WriteLnF('%s & %s & %s \\ \hline',[EscapeText(SDocPage), EscapeText(SDocProperty), EscapeText(SDocDescription)])
|
WriteLnF('%s & %s & %s \\ \hline',[EscapeText(SDocPage), EscapeText(What), EscapeText(SDocDescription)])
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.EndOverview;
|
procedure TLaTeXWriter.EndOverview;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLn('\hline');
|
WriteLn('\hline');
|
||||||
WriteLn('\end{tabularx}');
|
WriteLn('\end{tabularx}');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.WriteOverviewMember(const ALabel,AName,Access,ADescr : String);
|
procedure TLaTeXWriter.WriteOverviewMember(const ALabel, AName, Access,
|
||||||
|
ADescr: String);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLnF('\pageref{%s} & %s & %s & %s \\',[ALabel,EscapeText(AName),Access,ADescr]);
|
WriteLnF('\pageref{%s} & %s & %s & %s \\',[ALabel,EscapeText(AName),Access,ADescr]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.WriteOverviewMember(const ALabel,AName,ADescr : String);
|
procedure TLaTeXWriter.WriteOverviewMember(const ALabel, AName, ADescr: String);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLnF('\pageref{%s} & %s & %s \\',[ALabel,EscapeText(AName),ADescr]);
|
WriteLnF('\pageref{%s} & %s & %s \\',[ALabel,EscapeText(AName),ADescr]);
|
||||||
@ -678,7 +679,7 @@ begin
|
|||||||
Result:=TexExtension;
|
Result:=TexExtension;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLatexWriter.StartSeeAlso;
|
procedure TLaTeXWriter.StartSeealso;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
If not InList then
|
If not InList then
|
||||||
@ -695,7 +696,7 @@ begin
|
|||||||
Writeln('\end{FPCList}');
|
Writeln('\end{FPCList}');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.StartUnitOverview(AModuleName,AModuleLabel : String);
|
procedure TLaTeXWriter.StartUnitOverview(AModuleName, AModuleLabel: String);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLnF('\begin{FPCltable}{lr}{%s}{%s:0units}',
|
WriteLnF('\begin{FPCltable}{lr}{%s}{%s:0units}',
|
||||||
@ -703,20 +704,20 @@ begin
|
|||||||
WriteLn('Name & Page \\ \hline');
|
WriteLn('Name & Page \\ \hline');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.WriteUnitEntry(UnitRef : TPasType);
|
procedure TLaTeXWriter.WriteUnitEntry(UnitRef: TPasType);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLnF('%s\index{unit!%s} & \pageref{%s} \\',
|
WriteLnF('%s\index{unit!%s} & \pageref{%s} \\',
|
||||||
[EscapeText(UnitRef.Name), EscapeText(UnitRef.Name), StripText(GetLabel(UnitRef))]);
|
[EscapeText(UnitRef.Name), EscapeText(UnitRef.Name), StripText(GetLabel(UnitRef))]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLatexWriter.EndUnitOverview;
|
procedure TLaTeXWriter.EndUnitOverview;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLn('\end{FPCltable}');
|
WriteLn('\end{FPCltable}');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TLatexWriter.InterPretOption(Const Cmd,Arg : String) : boolean;
|
function TLaTeXWriter.InterPretOption(const Cmd, Arg: String): boolean;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Result:=True;
|
Result:=True;
|
||||||
|
@ -110,7 +110,7 @@ type
|
|||||||
procedure StartSubSection(SubSectionName : String);override;
|
procedure StartSubSection(SubSectionName : String);override;
|
||||||
procedure StartSubSubSection(SubSubSectionName : String);override;
|
procedure StartSubSubSection(SubSubSectionName : String);override;
|
||||||
procedure StartChapter(ChapterName : String); override;
|
procedure StartChapter(ChapterName : String); override;
|
||||||
procedure StartOverview(WithAccess : Boolean); override;
|
procedure StartOverview(Const What : String; WithAccess : Boolean); override;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); override;
|
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); override;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); override;
|
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); override;
|
||||||
procedure EndOverview; override;
|
procedure EndOverview; override;
|
||||||
@ -185,7 +185,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Function TRTFWriter.EscapeText(S : String) : String;
|
function TRTFWriter.EscapeText(S: String): String;
|
||||||
|
|
||||||
var
|
var
|
||||||
i: Integer;
|
i: Integer;
|
||||||
@ -206,7 +206,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TRTFWriter.StripText(S : String) : String;
|
function TRTFWriter.StripText(S: String): String;
|
||||||
|
|
||||||
var
|
var
|
||||||
I: Integer;
|
I: Integer;
|
||||||
@ -558,14 +558,14 @@ begin
|
|||||||
write('\cell');
|
write('\cell');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TRTFWriter.WriteLabel(const s: String);
|
procedure TRTFWriter.WriteLabel(const S: String);
|
||||||
var b: string;
|
var b: string;
|
||||||
begin
|
begin
|
||||||
b := LowerCase(StripText(s));
|
b := LowerCase(StripText(s));
|
||||||
WriteF('{\bkmkstart %s}{\bkmkend %s}', [b,b]);
|
WriteF('{\bkmkstart %s}{\bkmkend %s}', [b,b]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TRTFWriter.WriteIndex(const s : String);
|
procedure TRTFWriter.WriteIndex(const S: String);
|
||||||
begin
|
begin
|
||||||
Write('{\xe{\v '+EscapeText(s)+'}}');
|
Write('{\xe{\v '+EscapeText(s)+'}}');
|
||||||
end;
|
end;
|
||||||
@ -632,57 +632,57 @@ begin
|
|||||||
EscapeText(SubSubSectionName)]);
|
EscapeText(SubSubSectionName)]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartProcedure;
|
procedure TRTFWriter.StartProcedure;
|
||||||
begin
|
begin
|
||||||
Write('{\pard');
|
Write('{\pard');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartProperty;
|
procedure TRTFWriter.StartProperty;
|
||||||
begin
|
begin
|
||||||
Write('{\pard');
|
Write('{\pard');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.Header(text:string; font:integer);
|
procedure TRTFWriter.Header(text: string; font: integer);
|
||||||
begin
|
begin
|
||||||
WriteF('\par\s9 %s\pard\par\s10\f%d ',[text, font]);
|
WriteF('\par\s9 %s\pard\par\s10\f%d ',[text, font]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartSynopsis;
|
procedure TRTFWriter.StartSynopsis;
|
||||||
begin
|
begin
|
||||||
Header(SDocSynopsis,2);
|
Header(SDocSynopsis,2);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartDeclaration;
|
procedure TRTFWriter.StartDeclaration;
|
||||||
begin
|
begin
|
||||||
Header(SDocDeclaration,1);
|
Header(SDocDeclaration,1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartVisibility;
|
procedure TRTFWriter.StartVisibility;
|
||||||
begin
|
begin
|
||||||
Header(SDocVisibility,2);
|
Header(SDocVisibility,2);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartDescription;
|
procedure TRTFWriter.StartDescription;
|
||||||
begin
|
begin
|
||||||
Header(SDocDescription,2);
|
Header(SDocDescription,2);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartErrors;
|
procedure TRTFWriter.StartErrors;
|
||||||
begin
|
begin
|
||||||
Header(SDocErrors,2);
|
Header(SDocErrors,2);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartAccess;
|
procedure TRTFWriter.StartAccess;
|
||||||
begin
|
begin
|
||||||
Header(SDocAccess,2)
|
Header(SDocAccess,2)
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.EndProcedure;
|
procedure TRTFWriter.EndProcedure;
|
||||||
begin
|
begin
|
||||||
Write('}');
|
Write('}');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.EndProperty;
|
procedure TRTFWriter.EndProperty;
|
||||||
begin
|
begin
|
||||||
Write('}');
|
Write('}');
|
||||||
end;
|
end;
|
||||||
@ -705,14 +705,14 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TRTFWriter.StartOverview(WithAccess : Boolean);
|
procedure TRTFWriter.StartOverview(const What: String; WithAccess: Boolean);
|
||||||
begin
|
begin
|
||||||
If WithAccess then
|
If WithAccess then
|
||||||
WriteF('\par\trowd\pard\intbl %s\cell\pard\intbl %s\cell\pard\intbl %s \cell\pard\intbl %s \cell\row',
|
WriteF('\par\trowd\pard\intbl %s\cell\pard\intbl %s\cell\pard\intbl %s \cell\pard\intbl %s \cell\row',
|
||||||
[EscapeText(SDocPage), EscapeText(SDocProperty), EscapeText(SDocAccess), EscapeText(SDocDescription)])
|
[EscapeText(SDocPage), EscapeText(What), EscapeText(SDocAccess), EscapeText(SDocDescription)])
|
||||||
else
|
else
|
||||||
WriteF('\par\trowd\pard\intbl %s\cell\pard\intbl %s\cell\pard\intbl %s\cell\row',
|
WriteF('\par\trowd\pard\intbl %s\cell\pard\intbl %s\cell\pard\intbl %s\cell\row',
|
||||||
[EscapeText(SDocPage), EscapeText(SDocProperty), EscapeText(SDocDescription)]);
|
[EscapeText(SDocPage), EscapeText(What), EscapeText(SDocDescription)]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TRTFWriter.WriteOverviewMember(const ALabel,AName,Access,ADescr : String);
|
procedure TRTFWriter.WriteOverviewMember(const ALabel,AName,Access,ADescr : String);
|
||||||
@ -736,7 +736,7 @@ begin
|
|||||||
Write ('\par');
|
Write ('\par');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TRTFWriter.StartSeeAlso;
|
procedure TRTFWriter.StartSeealso;
|
||||||
begin
|
begin
|
||||||
Header(SDocSeeAlso, 2);
|
Header(SDocSeeAlso, 2);
|
||||||
end;
|
end;
|
||||||
@ -776,7 +776,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TRTFWriter.InterPretOption(Const Cmd,Arg : String) : boolean;
|
function TRTFWriter.InterPretOption(const Cmd, Arg: String): boolean;
|
||||||
begin
|
begin
|
||||||
if Cmd = '--RTF-extension' then
|
if Cmd = '--RTF-extension' then
|
||||||
begin
|
begin
|
||||||
|
@ -960,8 +960,6 @@ procedure TManWriter.WriteDoc;
|
|||||||
var
|
var
|
||||||
i : Integer;
|
i : Integer;
|
||||||
L : TstringList;
|
L : TstringList;
|
||||||
DocNode : TDocNode;
|
|
||||||
|
|
||||||
begin
|
begin
|
||||||
PackageName := LowerCase(Copy(Package.Name, 2, 255));
|
PackageName := LowerCase(Copy(Package.Name, 2, 255));
|
||||||
If (Engine.Output<>'') then
|
If (Engine.Output<>'') then
|
||||||
|
@ -78,7 +78,7 @@ Type
|
|||||||
procedure StartSubSection(SubSectionName : String);override;
|
procedure StartSubSection(SubSectionName : String);override;
|
||||||
procedure StartSubSubSection(SubSubSectionName : String);override;
|
procedure StartSubSubSection(SubSubSectionName : String);override;
|
||||||
procedure StartChapter(ChapterName : String); override;
|
procedure StartChapter(ChapterName : String); override;
|
||||||
procedure StartOverview(WithAccess : Boolean); override;
|
procedure StartOverview(Const What : String;WithAccess : Boolean); override;
|
||||||
procedure EndOverview; override;
|
procedure EndOverview; override;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); override;
|
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); override;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); override;
|
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); override;
|
||||||
@ -135,7 +135,7 @@ Type
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure TTxtWriter.WriteUnderline(Const Msg : String; DoubleLine : Boolean);
|
procedure TTXTWriter.WriteUnderline(const Msg: String; DoubleLine: Boolean);
|
||||||
|
|
||||||
Var
|
Var
|
||||||
L : Integer;
|
L : Integer;
|
||||||
@ -146,7 +146,7 @@ begin
|
|||||||
WriteLine(L,DoubleLine);
|
WriteLine(L,DoubleLine);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteLine(DoubleLine : Boolean);
|
procedure TTXTWriter.WriteLine(DoubleLine: Boolean);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeline(LineWidth,DoubleLine);
|
Writeline(LineWidth,DoubleLine);
|
||||||
@ -216,14 +216,14 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.NewLine;
|
procedure TTXTWriter.NewLine;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
If Not FCurrentPos=0 then
|
If Not FCurrentPos=0 then
|
||||||
Writeln('');
|
Writeln('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteLine(LineLength : Integer; DoubleLine : Boolean);
|
procedure TTXTWriter.WriteLine(LineLength: Integer; DoubleLine: Boolean);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
NewLine;
|
NewLine;
|
||||||
@ -234,7 +234,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
function TTxtWriter.GetLabel(AElement: TPasElement): String;
|
function TTXTWriter.GetLabel(AElement: TPasElement): String;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
if AElement.ClassType = TPasUnresolvedTypeRef then
|
if AElement.ClassType = TPasUnresolvedTypeRef then
|
||||||
@ -246,87 +246,87 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginBold;
|
procedure TTXTWriter.DescrBeginBold;
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndBold;
|
procedure TTXTWriter.DescrEndBold;
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginItalic;
|
procedure TTXTWriter.DescrBeginItalic;
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndItalic;
|
procedure TTXTWriter.DescrEndItalic;
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginEmph;
|
procedure TTXTWriter.DescrBeginEmph;
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndEmph;
|
procedure TTXTWriter.DescrEndEmph;
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrWriteFileEl(const AText: DOMString);
|
procedure TTXTWriter.DescrWriteFileEl(const AText: DOMString);
|
||||||
begin
|
begin
|
||||||
DescrWriteText(AText);
|
DescrWriteText(AText);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrWriteKeywordEl(const AText: DOMString);
|
procedure TTXTWriter.DescrWriteKeywordEl(const AText: DOMString);
|
||||||
begin
|
begin
|
||||||
DescrWriteText(AText);
|
DescrWriteText(AText);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrWriteVarEl(const AText: DOMString);
|
procedure TTXTWriter.DescrWriteVarEl(const AText: DOMString);
|
||||||
begin
|
begin
|
||||||
DescrWriteText(AText);
|
DescrWriteText(AText);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginLink(const AId: DOMString);
|
procedure TTXTWriter.DescrBeginLink(const AId: DOMString);
|
||||||
begin
|
begin
|
||||||
Write('[');
|
Write('[');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndLink;
|
procedure TTXTWriter.DescrEndLink;
|
||||||
begin
|
begin
|
||||||
Write('] ');
|
Write('] ');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrWriteLinebreak;
|
procedure TTXTWriter.DescrWriteLinebreak;
|
||||||
begin
|
begin
|
||||||
WriteLn('');
|
WriteLn('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginParagraph;
|
procedure TTXTWriter.DescrBeginParagraph;
|
||||||
begin
|
begin
|
||||||
// Do nothing
|
// Do nothing
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndParagraph;
|
procedure TTXTWriter.DescrEndParagraph;
|
||||||
begin
|
begin
|
||||||
WriteLn('');
|
WriteLn('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginCode(HasBorder: Boolean;
|
procedure TTXTWriter.DescrBeginCode(HasBorder: Boolean;
|
||||||
const AHighlighterName: String);
|
const AHighlighterName: String);
|
||||||
begin
|
begin
|
||||||
StartListing(HasBorder,'');
|
StartListing(HasBorder,'');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrWriteCodeLine(const ALine: String);
|
procedure TTXTWriter.DescrWriteCodeLine(const ALine: String);
|
||||||
begin
|
begin
|
||||||
WriteLn(ALine);
|
WriteLn(ALine);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndCode;
|
procedure TTXTWriter.DescrEndCode;
|
||||||
begin
|
begin
|
||||||
EndListing
|
EndListing
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.NewListLevel(Initial : Integer);
|
procedure TTXTWriter.NewListLevel(Initial: Integer);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Inc(FListLevel);
|
Inc(FListLevel);
|
||||||
@ -334,44 +334,44 @@ begin
|
|||||||
FLists[FListLevel]:=0;
|
FLists[FListLevel]:=0;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DecListLevel;
|
procedure TTXTWriter.declistlevel;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
If (FListLevel>0) then
|
If (FListLevel>0) then
|
||||||
Dec(FListLevel)
|
Dec(FListLevel)
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginOrderedList;
|
procedure TTXTWriter.DescrBeginOrderedList;
|
||||||
begin
|
begin
|
||||||
NewListLevel(0);
|
NewListLevel(0);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndOrderedList;
|
procedure TTXTWriter.DescrEndOrderedList;
|
||||||
begin
|
begin
|
||||||
DecListLevel;
|
DecListLevel;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginUnorderedList;
|
procedure TTXTWriter.DescrBeginUnorderedList;
|
||||||
begin
|
begin
|
||||||
NewListLevel(-1);
|
NewListLevel(-1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndUnorderedList;
|
procedure TTXTWriter.DescrEndUnorderedList;
|
||||||
begin
|
begin
|
||||||
DecListLevel;
|
DecListLevel;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginDefinitionList;
|
procedure TTXTWriter.DescrBeginDefinitionList;
|
||||||
begin
|
begin
|
||||||
NewListLevel(-2);
|
NewListLevel(-2);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndDefinitionList;
|
procedure TTXTWriter.DescrEndDefinitionList;
|
||||||
begin
|
begin
|
||||||
DecListLevel;
|
DecListLevel;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginListItem;
|
procedure TTXTWriter.DescrBeginListItem;
|
||||||
begin
|
begin
|
||||||
If FLists[FListLevel]>=0 then
|
If FLists[FListLevel]>=0 then
|
||||||
begin
|
begin
|
||||||
@ -381,105 +381,105 @@ begin
|
|||||||
Write(' ');
|
Write(' ');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndListItem;
|
procedure TTXTWriter.DescrEndListItem;
|
||||||
begin
|
begin
|
||||||
WriteLn('');
|
WriteLn('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginDefinitionTerm;
|
procedure TTXTWriter.DescrBeginDefinitionTerm;
|
||||||
begin
|
begin
|
||||||
Write('<<');
|
Write('<<');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndDefinitionTerm;
|
procedure TTXTWriter.DescrEndDefinitionTerm;
|
||||||
begin
|
begin
|
||||||
WriteLn('>>:');
|
WriteLn('>>:');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginDefinitionEntry;
|
procedure TTXTWriter.DescrBeginDefinitionEntry;
|
||||||
begin
|
begin
|
||||||
// Do nothing
|
// Do nothing
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndDefinitionEntry;
|
procedure TTXTWriter.DescrEndDefinitionEntry;
|
||||||
begin
|
begin
|
||||||
WriteLn('');
|
WriteLn('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginSectionTitle;
|
procedure TTXTWriter.DescrBeginSectionTitle;
|
||||||
begin
|
begin
|
||||||
Inc(FSectionCount);
|
Inc(FSectionCount);
|
||||||
WritelnF('%s %d.%d: ',[SDocSection,FChapterCount,FSectionCount]);
|
WritelnF('%s %d.%d: ',[SDocSection,FChapterCount,FSectionCount]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginSectionBody;
|
procedure TTXTWriter.DescrBeginSectionBody;
|
||||||
begin
|
begin
|
||||||
WriteLn('');
|
WriteLn('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndSection;
|
procedure TTXTWriter.DescrEndSection;
|
||||||
begin
|
begin
|
||||||
// Do noting
|
// Do noting
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginRemark;
|
procedure TTXTWriter.DescrBeginRemark;
|
||||||
begin
|
begin
|
||||||
WriteLn(SDocRemark+': ');
|
WriteLn(SDocRemark+': ');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndRemark;
|
procedure TTXTWriter.DescrEndRemark;
|
||||||
begin
|
begin
|
||||||
WriteLn('');
|
WriteLn('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginTable(ColCount: Integer; HasBorder: Boolean);
|
procedure TTXTWriter.DescrBeginTable(ColCount: Integer; HasBorder: Boolean);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLine(False);
|
WriteLine(False);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndTable;
|
procedure TTXTWriter.DescrEndTable;
|
||||||
begin
|
begin
|
||||||
WriteLine(False);
|
WriteLine(False);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginTableCaption;
|
procedure TTXTWriter.DescrBeginTableCaption;
|
||||||
begin
|
begin
|
||||||
// Do nothing.
|
// Do nothing.
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndTableCaption;
|
procedure TTXTWriter.DescrEndTableCaption;
|
||||||
begin
|
begin
|
||||||
Inc(FTableCount);
|
Inc(FTableCount);
|
||||||
WriteF('%s %d :',[SDoctable,FTableCount]);
|
WriteF('%s %d :',[SDoctable,FTableCount]);
|
||||||
TableCaptionWritten := True;
|
TableCaptionWritten := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginTableHeadRow;
|
procedure TTXTWriter.DescrBeginTableHeadRow;
|
||||||
begin
|
begin
|
||||||
if not TableCaptionWritten then
|
if not TableCaptionWritten then
|
||||||
DescrEndTableCaption;
|
DescrEndTableCaption;
|
||||||
TableRowStartFlag := True;
|
TableRowStartFlag := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndTableHeadRow;
|
procedure TTXTWriter.DescrEndTableHeadRow;
|
||||||
begin
|
begin
|
||||||
WriteLine(False);
|
WriteLine(False);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginTableRow;
|
procedure TTXTWriter.DescrBeginTableRow;
|
||||||
begin
|
begin
|
||||||
if not TableCaptionWritten then
|
if not TableCaptionWritten then
|
||||||
DescrEndTableCaption;
|
DescrEndTableCaption;
|
||||||
TableRowStartFlag := True;
|
TableRowStartFlag := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndTableRow;
|
procedure TTXTWriter.DescrEndTableRow;
|
||||||
begin
|
begin
|
||||||
WriteLn('');
|
WriteLn('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrBeginTableCell;
|
procedure TTXTWriter.DescrBeginTableCell;
|
||||||
begin
|
begin
|
||||||
if TableRowStartFlag then
|
if TableRowStartFlag then
|
||||||
TableRowStartFlag := False
|
TableRowStartFlag := False
|
||||||
@ -487,7 +487,7 @@ begin
|
|||||||
Write(' ');
|
Write(' ');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.DescrEndTableCell;
|
procedure TTXTWriter.DescrEndTableCell;
|
||||||
begin
|
begin
|
||||||
// Do nothing
|
// Do nothing
|
||||||
end;
|
end;
|
||||||
@ -514,15 +514,15 @@ begin
|
|||||||
Result:=inherited InterpretOption(Cmd, Arg);
|
Result:=inherited InterpretOption(Cmd, Arg);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteLabel(const s: String);
|
procedure TTXTWriter.WriteLabel(const S: String);
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteIndex(const s : String);
|
procedure TTXTWriter.WriteIndex(const S: String);
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.StartListing(Frames: Boolean; const name: String);
|
procedure TTXTWriter.StartListing(Frames: Boolean; const name: String);
|
||||||
begin
|
begin
|
||||||
FInVerbatim:=True;
|
FInVerbatim:=True;
|
||||||
If (Name<>'') then
|
If (Name<>'') then
|
||||||
@ -533,21 +533,21 @@ begin
|
|||||||
WriteLn('');
|
WriteLn('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.EndListing;
|
procedure TTXTWriter.EndListing;
|
||||||
begin
|
begin
|
||||||
FInVerbatim:=False;
|
FInVerbatim:=False;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteCommentLine;
|
procedure TTXTWriter.WriteCommentLine;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteComment(Comment : String);
|
procedure TTXTWriter.WriteComment(Comment: String);
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.StartChapter(ChapterName : String);
|
procedure TTXTWriter.StartChapter(ChapterName: String);
|
||||||
begin
|
begin
|
||||||
Inc(FChapterCount);
|
Inc(FChapterCount);
|
||||||
FSectionCount:=0;
|
FSectionCount:=0;
|
||||||
@ -559,7 +559,7 @@ begin
|
|||||||
Writeln('');
|
Writeln('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.StartSection(SectionName : String);
|
procedure TTXTWriter.StartSection(SectionName: String);
|
||||||
begin
|
begin
|
||||||
Inc(FSectionCount);
|
Inc(FSectionCount);
|
||||||
FSubSectionCount:=0;
|
FSubSectionCount:=0;
|
||||||
@ -570,7 +570,7 @@ begin
|
|||||||
Writeln('');
|
Writeln('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.StartSubSection(SubSectionName : String);
|
procedure TTXTWriter.StartSubSection(SubSectionName: String);
|
||||||
begin
|
begin
|
||||||
Inc(FSubSectionCount);
|
Inc(FSubSectionCount);
|
||||||
Writeln('');
|
Writeln('');
|
||||||
@ -579,7 +579,7 @@ begin
|
|||||||
Writeln('');
|
Writeln('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.StartSubSubSection(SubSubSectionName : String);
|
procedure TTXTWriter.StartSubSubSection(SubSubSectionName: String);
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SubSubSectionName);
|
Writeln(SubSubSectionName);
|
||||||
@ -598,7 +598,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteExampleFile(FN : String);
|
procedure TTXTWriter.WriteExampleFile(FN: String);
|
||||||
|
|
||||||
Var
|
Var
|
||||||
L : TStringList;
|
L : TStringList;
|
||||||
@ -622,51 +622,52 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.StartOverview(WithAccess : Boolean);
|
procedure TTXTWriter.StartOverview(const What: String; WithAccess: Boolean);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
If WithAccess then
|
If WithAccess then
|
||||||
WriteUnderLine(Format('%.30s %.10s %s',[EscapeText(SDocProperty), EscapeText(SDocAccess), EscapeText(SDocDescription)]),False)
|
WriteUnderLine(Format('%.30s %.10s %s',[EscapeText(What), EscapeText(SDocAccess), EscapeText(SDocDescription)]),False)
|
||||||
else
|
else
|
||||||
WriteUnderLine(Format('%.30s %s',[EscapeText(SDocMethod), EscapeText(SDocDescription)]),False);
|
WriteUnderLine(Format('%.30s %s',[EscapeText(What), EscapeText(SDocDescription)]),False);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.EndOverview;
|
procedure TTXTWriter.EndOverview;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLine(False);
|
WriteLine(False);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteOverviewMember(const ALabel,AName,Access,ADescr : String);
|
procedure TTXTWriter.WriteOverviewMember(const ALabel, AName, Access,
|
||||||
|
ADescr: String);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLnF('%.30s %.10s %s',[AName,Access,ADescr]);
|
WriteLnF('%.30s %.10s %s',[AName,Access,ADescr]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteOverviewMember(const ALabel,AName,ADescr : String);
|
procedure TTXTWriter.WriteOverviewMember(const ALabel, AName, ADescr: String);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteLnF('%.30s %s ',[AName,ADescr]);
|
WriteLnF('%.30s %s ',[AName,ADescr]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class function TTxtWriter.FileNameExtension: String;
|
class function TTXTWriter.FileNameExtension: String;
|
||||||
begin
|
begin
|
||||||
Result:=TxtExtension;
|
Result:=TxtExtension;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.StartUnitOverview(AModuleName,AModuleLabel : String);
|
procedure TTXTWriter.StartUnitOverview(AModuleName, AModuleLabel: String);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
WriteUnderLine('Unit Name',False);
|
WriteUnderLine('Unit Name',False);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.WriteUnitEntry(UnitRef : TPasType);
|
procedure TTXTWriter.WriteUnitEntry(UnitRef: TPasType);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln(EscapeText(UnitRef.Name));
|
Writeln(EscapeText(UnitRef.Name));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTxtWriter.EndUnitOverview;
|
procedure TTXTWriter.EndUnitOverview;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
|
@ -78,7 +78,7 @@ Type
|
|||||||
procedure StartListing(Frames: Boolean; const name: String); virtual; abstract;
|
procedure StartListing(Frames: Boolean; const name: String); virtual; abstract;
|
||||||
procedure EndListing; virtual; abstract;
|
procedure EndListing; virtual; abstract;
|
||||||
Procedure WriteExampleFile(FN : String); virtual; abstract;
|
Procedure WriteExampleFile(FN : String); virtual; abstract;
|
||||||
procedure StartOverview(WithAccess : Boolean); virtual; Abstract;
|
procedure StartOverview(Const What : String; WithAccess : Boolean); virtual; Abstract;
|
||||||
procedure EndOverview; virtual; Abstract;
|
procedure EndOverview; virtual; Abstract;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); virtual; Abstract;
|
procedure WriteOverviewMember(const ALabel,AName,Access,ADescr : String); virtual; Abstract;
|
||||||
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); virtual; Abstract;
|
procedure WriteOverviewMember(const ALabel,AName,ADescr : String); virtual; Abstract;
|
||||||
@ -106,9 +106,10 @@ Type
|
|||||||
procedure WriteFunctionsAndProcedures(ASection: TPasSection);
|
procedure WriteFunctionsAndProcedures(ASection: TPasSection);
|
||||||
procedure WriteProcedure(ProcDecl: TPasProcedureBase);
|
procedure WriteProcedure(ProcDecl: TPasProcedureBase);
|
||||||
procedure WriteClasses(ASection: TPasSection);
|
procedure WriteClasses(ASection: TPasSection);
|
||||||
|
Procedure WriteExtendedRecords(Asection : TPasSection);
|
||||||
procedure WriteClassDecl(ClassDecl: TPasClassType);
|
procedure WriteClassDecl(ClassDecl: TPasClassType);
|
||||||
procedure WriteClassMethodOverview(ClassDecl: TPasClassType);
|
procedure WriteMethodOverview(AParent: TPasType; Members : TFPList);
|
||||||
procedure WriteClassPropertyOverview(ClassDecl: TPasClassType);
|
procedure WritePropertyOverview(AParent: TPasType; Members : TFPList);
|
||||||
procedure WriteClassInterfacesOverview(ClassDecl: TPasClassType);
|
procedure WriteClassInterfacesOverview(ClassDecl: TPasClassType);
|
||||||
procedure WriteClassInheritanceOverview(ClassDecl: TPasClassType); virtual;
|
procedure WriteClassInheritanceOverview(ClassDecl: TPasClassType); virtual;
|
||||||
procedure WriteProperty(PropDecl: TPasProperty);
|
procedure WriteProperty(PropDecl: TPasProperty);
|
||||||
@ -128,14 +129,14 @@ const
|
|||||||
Writing support
|
Writing support
|
||||||
---------------------------------------------------------------------}
|
---------------------------------------------------------------------}
|
||||||
|
|
||||||
Function TLinearWriter.PushWriteContext(S : TStream) : TStream;
|
function TLinearWriter.PushWriteContext(S: TStream): TStream;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Result:=FStream;
|
Result:=FStream;
|
||||||
FStream:=S;
|
FStream:=S;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.PopWriteContext(S : TSTream);
|
procedure TLinearWriter.PopWriteContext(S: TSTream);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
FStream:=S;
|
FStream:=S;
|
||||||
@ -174,7 +175,8 @@ begin
|
|||||||
Write(EscapeText(AText));
|
Write(EscapeText(AText));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TLinearWriter.GetDescrString(AContext: TPasElement; DescrNode: TDOMElement) : String;
|
function TLinearWriter.GetDescrString(AContext: TPasElement;
|
||||||
|
DescrNode: TDOMElement): String;
|
||||||
|
|
||||||
Var
|
Var
|
||||||
S : TStringStream;
|
S : TStringStream;
|
||||||
@ -274,74 +276,74 @@ end;
|
|||||||
Default implementations, may be overridden in descendents
|
Default implementations, may be overridden in descendents
|
||||||
---------------------------------------------------------------------}
|
---------------------------------------------------------------------}
|
||||||
|
|
||||||
Function TLinearWriter.EscapeText(S : String) : String;
|
function TLinearWriter.EscapeText(S: String): String;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Result:=S;
|
Result:=S;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TLinearWriter.StripText(S : String) : String;
|
function TLinearWriter.StripText(S: String): String;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Result:=S;
|
Result:=S;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartProcedure;
|
procedure TLinearWriter.StartProcedure;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln(SDocProcedure+':');
|
Writeln(SDocProcedure+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartSynopsis;
|
procedure TLinearWriter.StartSynopsis;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SDocSynopsis+':');
|
Writeln(SDocSynopsis+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartDeclaration;
|
procedure TLinearWriter.StartDeclaration;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SDocDeclaration+':');
|
Writeln(SDocDeclaration+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartVisibility;
|
procedure TLinearWriter.StartVisibility;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SDocVisibility+':');
|
Writeln(SDocVisibility+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartDescription;
|
procedure TLinearWriter.StartDescription;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SDocDescription+':');
|
Writeln(SDocDescription+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartAccess;
|
procedure TLinearWriter.StartAccess;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SDocAccess+':');
|
Writeln(SDocAccess+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartErrors;
|
procedure TLinearWriter.StartErrors;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SDocErrors+':');
|
Writeln(SDocErrors+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartVersion;
|
procedure TLinearWriter.StartVersion;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SDocVersion+':');
|
Writeln(SDocVersion+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.StartSeealso;
|
procedure TLinearWriter.StartSeealso;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
@ -349,20 +351,20 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Procedure TLinearWriter.StartProperty;
|
procedure TLinearWriter.StartProperty;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
Writeln(SDocProperty+':');
|
Writeln(SDocProperty+':');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.EndProcedure;
|
procedure TLinearWriter.EndProcedure;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.EndProperty;
|
procedure TLinearWriter.EndProperty;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Writeln('');
|
Writeln('');
|
||||||
@ -422,9 +424,9 @@ begin
|
|||||||
// Write Interfaces Overview;
|
// Write Interfaces Overview;
|
||||||
WriteClassInterfacesOverView(ClassDecl);
|
WriteClassInterfacesOverView(ClassDecl);
|
||||||
// Write method overview
|
// Write method overview
|
||||||
WriteClassMethodOverView(ClassDecl);
|
WriteMethodOverView(ClassDecl,ClassDecl.Members);
|
||||||
// Write Property Overview;
|
// Write Property Overview;
|
||||||
WriteClassPropertyOverView(ClassDecl);
|
WritePropertyOverView(ClassDecl,ClassDecl.Members);
|
||||||
|
|
||||||
// Write method & property descriptions
|
// Write method & property descriptions
|
||||||
|
|
||||||
@ -448,7 +450,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure TLinearWriter.WriteClassPropertyOverview(ClassDecl : TPasClassType);
|
procedure TLinearWriter.WritePropertyOverview(AParent: TPasType; Members : TFPList);
|
||||||
|
|
||||||
var
|
var
|
||||||
Member: TPasElement;
|
Member: TPasElement;
|
||||||
@ -462,9 +464,9 @@ begin
|
|||||||
List:=TStringList.Create;
|
List:=TStringList.Create;
|
||||||
Try
|
Try
|
||||||
List.Sorted:=True;
|
List.Sorted:=True;
|
||||||
for i := 0 to ClassDecl.Members.Count - 1 do
|
for i := 0 to Members.Count - 1 do
|
||||||
begin
|
begin
|
||||||
Member := TPasElement(ClassDecl.Members[i]);
|
Member := TPasElement(Members[i]);
|
||||||
With Member do
|
With Member do
|
||||||
if InheritsFrom(TPasProperty) and SHowMember(Member) then
|
if InheritsFrom(TPasProperty) and SHowMember(Member) then
|
||||||
List.AddObject(Member.Name,Member)
|
List.AddObject(Member.Name,Member)
|
||||||
@ -472,8 +474,8 @@ begin
|
|||||||
If (List.Count>0) then
|
If (List.Count>0) then
|
||||||
begin
|
begin
|
||||||
StartSubSection(SDocPropertyOverview);
|
StartSubSection(SDocPropertyOverview);
|
||||||
WriteLabel(GetLabel(ClassDecl) + ':Properties');
|
WriteLabel(GetLabel(AParent) + ':Properties');
|
||||||
StartOverView(True);
|
StartOverView(SDocProperties,True);
|
||||||
For I:=0 to List.Count-1 do
|
For I:=0 to List.Count-1 do
|
||||||
begin
|
begin
|
||||||
Member:=TPasElement(List.objects[i]);
|
Member:=TPasElement(List.objects[i]);
|
||||||
@ -535,7 +537,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
StartSubSection(SDocInterfacesOverview);
|
StartSubSection(SDocInterfacesOverview);
|
||||||
WriteLabel(GetLabel(ClassDecl) + ':Interfaces');
|
WriteLabel(GetLabel(ClassDecl) + ':Interfaces');
|
||||||
StartOverView(False);
|
StartOverView(SDocInterface,False);
|
||||||
for i := 0 to List.Count-1 do
|
for i := 0 to List.Count-1 do
|
||||||
begin
|
begin
|
||||||
lInterface := TPasElement(List.Objects[i]);
|
lInterface := TPasElement(List.Objects[i]);
|
||||||
@ -648,6 +650,7 @@ begin
|
|||||||
|
|
||||||
WriteVarsConstsTypes(ASection);
|
WriteVarsConstsTypes(ASection);
|
||||||
WriteFunctionsAndProcedures(ASection);
|
WriteFunctionsAndProcedures(ASection);
|
||||||
|
WriteExtendedRecords(ASection);
|
||||||
WriteClasses(ASection);
|
WriteClasses(ASection);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -721,7 +724,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.ProcessPackage;
|
procedure TLinearWriter.ProcessPackage;
|
||||||
|
|
||||||
var
|
var
|
||||||
DocNode: TDocNode;
|
DocNode: TDocNode;
|
||||||
@ -740,7 +743,7 @@ begin
|
|||||||
ProcessTopics(DocNode,1);
|
ProcessTopics(DocNode,1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TLinearWriter.ProcessTopics(DocNode : TDocNode; Alevel : Integer);
|
procedure TLinearWriter.ProcessTopics(DocNode: TDocNode; Alevel: Integer);
|
||||||
|
|
||||||
Var
|
Var
|
||||||
Node : TDocNode;
|
Node : TDocNode;
|
||||||
@ -758,7 +761,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Procedure TLinearWriter.WriteTopicNode(Node : TDocNode; Level : Integer);
|
procedure TLinearWriter.WriteTopicNode(Node: TDocNode; Level: Integer);
|
||||||
|
|
||||||
Var
|
Var
|
||||||
Element : TTopicElement;
|
Element : TTopicElement;
|
||||||
@ -860,8 +863,10 @@ end;
|
|||||||
|
|
||||||
procedure TLinearWriter.WriteTypes(ASection: TPasSection);
|
procedure TLinearWriter.WriteTypes(ASection: TPasSection);
|
||||||
var
|
var
|
||||||
i: Integer;
|
i,j: Integer;
|
||||||
TypeDecl: TPasType;
|
TypeDecl: TPasType;
|
||||||
|
Recdecl: TPasRecordType;
|
||||||
|
Member : TPasElement;
|
||||||
DocNode : TDocNode;
|
DocNode : TDocNode;
|
||||||
begin
|
begin
|
||||||
if ASection.Types.Count > 0 then
|
if ASection.Types.Count > 0 then
|
||||||
@ -869,8 +874,10 @@ begin
|
|||||||
StartSubSection(SDocTypes,ModuleName+'Types');
|
StartSubSection(SDocTypes,ModuleName+'Types');
|
||||||
for i := 0 to ASection.Types.Count - 1 do
|
for i := 0 to ASection.Types.Count - 1 do
|
||||||
begin
|
begin
|
||||||
DescrBeginParagraph;
|
|
||||||
TypeDecl := TPasType(ASection.Types[i]);
|
TypeDecl := TPasType(ASection.Types[i]);
|
||||||
|
if not ((TypeDecl is TPasRecordType) and TPasRecordType(TypeDecl).IsAdvancedRecord) then
|
||||||
|
begin
|
||||||
|
DescrBeginParagraph;
|
||||||
WriteTypeDecl(TypeDecl);
|
WriteTypeDecl(TypeDecl);
|
||||||
StartListing(False,'');
|
StartListing(False,'');
|
||||||
DocNode := Engine.FindDocNode(TypeDecl);
|
DocNode := Engine.FindDocNode(TypeDecl);
|
||||||
@ -903,6 +910,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TLinearWriter.WriteVars(ASection: TPasSection);
|
procedure TLinearWriter.WriteVars(ASection: TPasSection);
|
||||||
var
|
var
|
||||||
@ -945,7 +953,7 @@ var
|
|||||||
begin
|
begin
|
||||||
With ProcDecl do
|
With ProcDecl do
|
||||||
begin
|
begin
|
||||||
if Not (Assigned(Parent) and Parent.InheritsFrom(TPasClassType)) then
|
if Not (Assigned(Parent) and ((Parent.InheritsFrom(TPasClassType)) or Parent.InheritsFrom(TPasRecordType))) then
|
||||||
begin
|
begin
|
||||||
StartSubSection(Name);
|
StartSubSection(Name);
|
||||||
WriteLabel(ProcDecl);
|
WriteLabel(ProcDecl);
|
||||||
@ -1174,7 +1182,7 @@ begin
|
|||||||
List.Sort(@CompareElements);
|
List.Sort(@CompareElements);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TLinearWriter.ShowMember(M : TPasElement) : boolean;
|
function TLinearWriter.ShowMember(M: TPasElement): boolean;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Result:=Engine.ShowElement(M);
|
Result:=Engine.ShowElement(M);
|
||||||
@ -1189,7 +1197,67 @@ begin
|
|||||||
WriteClassDecl(TPasClassType(ASection.Classes[i]));
|
WriteClassDecl(TPasClassType(ASection.Classes[i]));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLinearWriter.WriteClassMethodOverview(ClassDecl: TPasClassType);
|
procedure TLinearWriter.WriteExtendedRecords(Asection: TPasSection);
|
||||||
|
|
||||||
|
var
|
||||||
|
i,j : Integer;
|
||||||
|
Recdecl : TPasRecordType;
|
||||||
|
DocNode : TDocNode;
|
||||||
|
Member : TPasElement;
|
||||||
|
begin
|
||||||
|
if (ASection.Types.Count > 0) then
|
||||||
|
for i := 0 to ASection.Types.Count - 1 do
|
||||||
|
begin
|
||||||
|
If TPasElement(ASection.Types[i]) is TPasRecordType then
|
||||||
|
begin
|
||||||
|
Recdecl:=TPasRecordType(ASection.Types[i]);
|
||||||
|
if RecDecl.IsAdvancedRecord then
|
||||||
|
begin
|
||||||
|
StartSection(RecDecl.Name);
|
||||||
|
DescrBeginParagraph;
|
||||||
|
WriteTypeDecl(RecDecl);
|
||||||
|
StartListing(False,'');
|
||||||
|
DocNode := Engine.FindDocNode(RecDecl);
|
||||||
|
If Assigned(DocNode) and
|
||||||
|
Assigned(DocNode.Node) and
|
||||||
|
(Docnode.Node['opaque']='1') then
|
||||||
|
Writeln(RecDecl.Name+' = '+SDocOpaque)
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
Writeln(EscapeText(RecDecl.GetDeclaration(True)));
|
||||||
|
end;
|
||||||
|
EndListing;
|
||||||
|
WriteLabel(RecDecl);
|
||||||
|
WriteIndex(RecDecl);
|
||||||
|
WriteDescr(RecDecl,DocNode);
|
||||||
|
If Assigned(DocNode) and Assigned(DocNode.Version) then
|
||||||
|
begin
|
||||||
|
Writeln(Format('%s : ',[SDocVersion]));
|
||||||
|
WriteDescr(RecDecl, DocNode.Version);
|
||||||
|
end;
|
||||||
|
if Assigned(DocNode) and assigned(DocNode.Notes) then
|
||||||
|
ConvertNotes(RecDecl,DocNode.Notes);
|
||||||
|
DescrEndParagraph;
|
||||||
|
WriteMethodOverView(Recdecl,Recdecl.Members);
|
||||||
|
WritePropertyOverView(Recdecl,Recdecl.Members);
|
||||||
|
for J := 0 to Recdecl.Members.Count - 1 do
|
||||||
|
begin
|
||||||
|
Member := TPasElement(Recdecl.Members[j]);
|
||||||
|
if Member.InheritsFrom(TPasProcedureBase) and Engine.ShowElement(Member) then
|
||||||
|
WriteProcedure(TPasProcedureBase(Member));
|
||||||
|
end;
|
||||||
|
for j := 0 to Recdecl.Members.Count - 1 do
|
||||||
|
begin
|
||||||
|
Member := TPasElement(Recdecl.Members[j]);
|
||||||
|
if Member.InheritsFrom(TPasProperty) and Engine.ShowElement(Member) then
|
||||||
|
WriteProperty(TPasProperty(Member));
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TLinearWriter.WriteMethodOverview(AParent: TPasType; Members : TFPList);
|
||||||
|
|
||||||
var
|
var
|
||||||
Member : TPasElement;
|
Member : TPasElement;
|
||||||
@ -1202,9 +1270,9 @@ begin
|
|||||||
List:=TStringList.Create;
|
List:=TStringList.Create;
|
||||||
Try
|
Try
|
||||||
List.Sorted:=True;
|
List.Sorted:=True;
|
||||||
for i := 0 to ClassDecl.Members.Count - 1 do
|
for i := 0 to Members.Count - 1 do
|
||||||
begin
|
begin
|
||||||
Member := TPasElement(ClassDecl.Members[i]);
|
Member := TPasElement(Members[i]);
|
||||||
With Member do
|
With Member do
|
||||||
if InheritsFrom(TPasProcedureBase) and ShowMember(Member) then
|
if InheritsFrom(TPasProcedureBase) and ShowMember(Member) then
|
||||||
List.AddObject(Member.Name,Member);
|
List.AddObject(Member.Name,Member);
|
||||||
@ -1212,8 +1280,8 @@ begin
|
|||||||
If List.Count>0 then
|
If List.Count>0 then
|
||||||
begin
|
begin
|
||||||
StartSubSection(SDocMethodOverview);
|
StartSubSection(SDocMethodOverview);
|
||||||
WriteLabel(GetLabel(ClassDecl) + ':Methods');
|
WriteLabel(GetLabel(AParent) + ':Methods');
|
||||||
StartOverview(False);
|
StartOverview(SDocMethod,False);
|
||||||
For I:=0 to List.Count-1 do
|
For I:=0 to List.Count-1 do
|
||||||
begin
|
begin
|
||||||
Member:=TPasElement(List.Objects[i]);
|
Member:=TPasElement(List.Objects[i]);
|
||||||
@ -1243,10 +1311,31 @@ constructor TLinearWriter.Create(APackage: TPasPackage; AEngine: TFPDocEngine);
|
|||||||
|
|
||||||
procedure AddList(AElement: TPasElement; AList: TFPList);
|
procedure AddList(AElement: TPasElement; AList: TFPList);
|
||||||
var
|
var
|
||||||
i: Integer;
|
i,j: Integer;
|
||||||
|
R : TPasRecordType;
|
||||||
|
FPEl : TPaselement;
|
||||||
|
DocNode: TDocNode;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
for i := 0 to AList.Count - 1 do
|
for i := 0 to AList.Count - 1 do
|
||||||
|
begin
|
||||||
AddLabel(TPasElement(AList[i]));
|
AddLabel(TPasElement(AList[i]));
|
||||||
|
if (TObject(AList[i]) is TPasRecordType) then
|
||||||
|
begin
|
||||||
|
R:=TObject(AList[I]) as TPasRecordType;
|
||||||
|
For J:=0 to R.Members.Count-1 do
|
||||||
|
begin
|
||||||
|
FPEl:=TPasElement(R.Members[J]);
|
||||||
|
if ((FPEL is TPasProperty) or (FPEL is TPasProcedureBase))
|
||||||
|
and Engine.ShowElement(FPEl) then
|
||||||
|
begin
|
||||||
|
DocNode := Engine.FindDocNode(FPEl);
|
||||||
|
if Assigned(DocNode) then
|
||||||
|
AddLabel(FPEl);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure AddTopicPages(AElement: TPasElement);
|
procedure AddTopicPages(AElement: TPasElement);
|
||||||
@ -1381,7 +1470,7 @@ begin
|
|||||||
// do nothing
|
// do nothing
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TLinearWriter.InterpretOption(const Cmd: String; const Arg: String): Boolean;
|
function TLinearWriter.InterpretOption(const Cmd, Arg: String): Boolean;
|
||||||
begin
|
begin
|
||||||
Result := True;
|
Result := True;
|
||||||
if Cmd = cDupLinkedDocParam then
|
if Cmd = cDupLinkedDocParam then
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
$Id: fpdoc.cst,v 1.1 2005/01/02 16:22:16 michael Exp $
|
$Id: fpdoc.css,v 1.1 2003/03/17 23:03:20 michael Exp $
|
||||||
|
|
||||||
Default style sheet for FPDoc reference documentation
|
Default style sheet for FPDoc reference documentation
|
||||||
by Sebastian Guenther, sg@freepascal.org
|
by Sebastian Guenther, sg@freepascal.org
|
||||||
@ -62,10 +62,6 @@ span.code {
|
|||||||
span.sym {
|
span.sym {
|
||||||
color: darkred
|
color: darkred
|
||||||
}
|
}
|
||||||
/* No wordwrap in code fragments */
|
|
||||||
span.code {
|
|
||||||
white-space: nowrap
|
|
||||||
}
|
|
||||||
|
|
||||||
/* keywords in source fragments */
|
/* keywords in source fragments */
|
||||||
span.kw {
|
span.kw {
|
||||||
@ -131,30 +127,40 @@ table.bar {
|
|||||||
background-color: #a0c0ff;
|
background-color: #a0c0ff;
|
||||||
}
|
}
|
||||||
|
|
||||||
td p {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.bartitle {
|
span.bartitle {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
color: darkblue
|
color: darkblue
|
||||||
}
|
}
|
||||||
|
|
||||||
span.toggletreeclose {
|
span.footer {
|
||||||
background: url(minus.png) center left no-repeat;
|
font-style: italic;
|
||||||
padding-left: 20px;
|
color: darkblue
|
||||||
}
|
}
|
||||||
|
|
||||||
span.toggletreeopen {
|
/* definition list */
|
||||||
background: url(plus.png) center left no-repeat;
|
dl {
|
||||||
padding-left: 20px;
|
border: 3px double #ccc;
|
||||||
|
padding: 0.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
ul.classtreelist li { padding-left: 0px; }
|
/* definition list: term */
|
||||||
|
dt {
|
||||||
|
float: left;
|
||||||
|
clear: left;
|
||||||
|
width: auto; /* normally browsers default width of largest item */
|
||||||
|
padding-right: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: darkgreen;
|
||||||
|
}
|
||||||
|
|
||||||
ul.classtreelist { list-style-type:none; }
|
/* definition list: description */
|
||||||
|
dd {
|
||||||
|
margin: 0 0 0 110px;
|
||||||
|
padding: 0 0 0.5em 0;
|
||||||
|
}
|
||||||
|
|
||||||
li.classtree ul { display: block; }
|
/* for browsers in standards compliance mode */
|
||||||
|
td p {
|
||||||
li.classtreeclosed ul { display: none; }
|
margin: 0;
|
||||||
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<CONFIG>
|
<CONFIG>
|
||||||
<ProjectOptions>
|
<ProjectOptions>
|
||||||
<Version Value="9"/>
|
<Version Value="9"/>
|
||||||
@ -31,8 +31,7 @@
|
|||||||
<RunParams>
|
<RunParams>
|
||||||
<local>
|
<local>
|
||||||
<FormatVersion Value="1"/>
|
<FormatVersion Value="1"/>
|
||||||
<CommandLineParams Value="--package=me --output=me --input=ct.pp --format=html"/>
|
<CommandLineParams Value="--package=fpdoc --input=testunit.pp --output=testunit --format=html --descr=testunit.xml"/>
|
||||||
<LaunchingApplication PathPlusParams="/usr/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
|
|
||||||
</local>
|
</local>
|
||||||
</RunParams>
|
</RunParams>
|
||||||
<RequiredPackages Count="1">
|
<RequiredPackages Count="1">
|
||||||
@ -64,7 +63,6 @@
|
|||||||
<Unit4>
|
<Unit4>
|
||||||
<Filename Value="dw_ipflin.pas"/>
|
<Filename Value="dw_ipflin.pas"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="dw_ipflin"/>
|
|
||||||
</Unit4>
|
</Unit4>
|
||||||
<Unit5>
|
<Unit5>
|
||||||
<Filename Value="dw_latex.pp"/>
|
<Filename Value="dw_latex.pp"/>
|
||||||
@ -74,7 +72,6 @@
|
|||||||
<Unit6>
|
<Unit6>
|
||||||
<Filename Value="dwlinear.pp"/>
|
<Filename Value="dwlinear.pp"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="dwlinear"/>
|
|
||||||
</Unit6>
|
</Unit6>
|
||||||
<Unit7>
|
<Unit7>
|
||||||
<Filename Value="dw_linrtf.pp"/>
|
<Filename Value="dw_linrtf.pp"/>
|
||||||
@ -84,7 +81,6 @@
|
|||||||
<Unit8>
|
<Unit8>
|
||||||
<Filename Value="dw_man.pp"/>
|
<Filename Value="dw_man.pp"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="dw_man"/>
|
|
||||||
</Unit8>
|
</Unit8>
|
||||||
<Unit9>
|
<Unit9>
|
||||||
<Filename Value="dwriter.pp"/>
|
<Filename Value="dwriter.pp"/>
|
||||||
@ -94,7 +90,6 @@
|
|||||||
<Unit10>
|
<Unit10>
|
||||||
<Filename Value="dw_txt.pp"/>
|
<Filename Value="dw_txt.pp"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="dw_txt"/>
|
|
||||||
</Unit10>
|
</Unit10>
|
||||||
<Unit11>
|
<Unit11>
|
||||||
<Filename Value="dw_xml.pp"/>
|
<Filename Value="dw_xml.pp"/>
|
||||||
@ -104,22 +99,18 @@
|
|||||||
<Unit12>
|
<Unit12>
|
||||||
<Filename Value="fpdocproj.pas"/>
|
<Filename Value="fpdocproj.pas"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="fpdocproj"/>
|
|
||||||
</Unit12>
|
</Unit12>
|
||||||
<Unit13>
|
<Unit13>
|
||||||
<Filename Value="fpdocxmlopts.pas"/>
|
<Filename Value="fpdocxmlopts.pas"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="fpdocxmlopts"/>
|
|
||||||
</Unit13>
|
</Unit13>
|
||||||
<Unit14>
|
<Unit14>
|
||||||
<Filename Value="mkfpdoc.pp"/>
|
<Filename Value="mkfpdoc.pp"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="mkfpdoc"/>
|
|
||||||
</Unit14>
|
</Unit14>
|
||||||
<Unit15>
|
<Unit15>
|
||||||
<Filename Value="fpdocclasstree.pp"/>
|
<Filename Value="fpdocclasstree.pp"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="fpdocclasstree"/>
|
|
||||||
</Unit15>
|
</Unit15>
|
||||||
</Units>
|
</Units>
|
||||||
</ProjectOptions>
|
</ProjectOptions>
|
||||||
@ -132,12 +123,6 @@
|
|||||||
<IncludeFiles Value="$(ProjOutDir)"/>
|
<IncludeFiles Value="$(ProjOutDir)"/>
|
||||||
<UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
|
<UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
|
||||||
</SearchPaths>
|
</SearchPaths>
|
||||||
<Other>
|
|
||||||
<CompilerMessages>
|
|
||||||
<UseMsgFile Value="True"/>
|
|
||||||
</CompilerMessages>
|
|
||||||
<CompilerPath Value="$(CompPath)"/>
|
|
||||||
</Other>
|
|
||||||
</CompilerOptions>
|
</CompilerOptions>
|
||||||
<Debugging>
|
<Debugging>
|
||||||
<Exceptions Count="3">
|
<Exceptions Count="3">
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
{$mode objfpc}
|
{$mode objfpc}
|
||||||
{$h+}
|
{$h+}
|
||||||
|
{$modeswitch advancedrecords}
|
||||||
|
|
||||||
unit testunit;
|
unit testunit;
|
||||||
|
|
||||||
interface
|
interface
|
||||||
@ -42,6 +44,19 @@ Type
|
|||||||
|
|
||||||
TADeprecatedType = Integer deprecated;
|
TADeprecatedType = Integer deprecated;
|
||||||
|
|
||||||
|
TMethodRecord = Record
|
||||||
|
Private
|
||||||
|
X22 : Integer;
|
||||||
|
Procedure SetX(AValue : Integer);
|
||||||
|
Function GetX : Integer;
|
||||||
|
Public
|
||||||
|
Procedure MyMethod;
|
||||||
|
Property MyX : Integer Read GetX Write SetX;
|
||||||
|
Case Integer of
|
||||||
|
1 : (X2,Y2 : Integer);
|
||||||
|
2 : (phi,Omega : Real);
|
||||||
|
end;
|
||||||
|
|
||||||
Var
|
Var
|
||||||
ASimpleVar : Integer;
|
ASimpleVar : Integer;
|
||||||
ATypedVar : TMethod;
|
ATypedVar : TMethod;
|
||||||
@ -276,4 +291,18 @@ begin
|
|||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Procedure TMethodRecord.SetX(AValue : Integer);
|
||||||
|
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
|
Function TMEthodRecord.GetX : Integer;
|
||||||
|
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
|
Procedure TMEthodRecord.MyMethod;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
@ -9,8 +9,9 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<module name="testunit">
|
<module name="testunit">
|
||||||
<short></short>
|
<short>This cannot be</short>
|
||||||
<descr>
|
<descr>
|
||||||
|
We have here a description
|
||||||
</descr>
|
</descr>
|
||||||
<notes>
|
<notes>
|
||||||
<note>Unit note</note>
|
<note>Unit note</note>
|
||||||
@ -18,7 +19,7 @@
|
|||||||
|
|
||||||
<!-- constant Visibility: default -->
|
<!-- constant Visibility: default -->
|
||||||
<element name="AnIntegerConst">
|
<element name="AnIntegerConst">
|
||||||
<short></short>
|
<short>Aha this is not me</short>
|
||||||
<descr>
|
<descr>
|
||||||
</descr>
|
</descr>
|
||||||
<version>
|
<version>
|
||||||
@ -206,7 +207,7 @@ Appears in 2.0
|
|||||||
|
|
||||||
<!-- record type Visibility: default -->
|
<!-- record type Visibility: default -->
|
||||||
<element name="TAVariantRecordType">
|
<element name="TAVariantRecordType">
|
||||||
<short></short>
|
<short>Some record with variants</short>
|
||||||
<descr>
|
<descr>
|
||||||
</descr>
|
</descr>
|
||||||
<seealso>
|
<seealso>
|
||||||
@ -215,7 +216,7 @@ Appears in 2.0
|
|||||||
|
|
||||||
<!-- variable Visibility: default -->
|
<!-- variable Visibility: default -->
|
||||||
<element name="TAVariantRecordType.A">
|
<element name="TAVariantRecordType.A">
|
||||||
<short></short>
|
<short>A short description for A </short>
|
||||||
<descr>
|
<descr>
|
||||||
</descr>
|
</descr>
|
||||||
<seealso>
|
<seealso>
|
||||||
@ -224,7 +225,7 @@ Appears in 2.0
|
|||||||
|
|
||||||
<!-- variable Visibility: default -->
|
<!-- variable Visibility: default -->
|
||||||
<element name="TAVariantRecordType.X">
|
<element name="TAVariantRecordType.X">
|
||||||
<short></short>
|
<short>A short description for X</short>
|
||||||
<descr>
|
<descr>
|
||||||
</descr>
|
</descr>
|
||||||
<seealso>
|
<seealso>
|
||||||
@ -233,7 +234,53 @@ Appears in 2.0
|
|||||||
|
|
||||||
<!-- variable Visibility: default -->
|
<!-- variable Visibility: default -->
|
||||||
<element name="TAVariantRecordType.Y">
|
<element name="TAVariantRecordType.Y">
|
||||||
<short></short>
|
<short>A short description for Y</short>
|
||||||
|
<descr>
|
||||||
|
</descr>
|
||||||
|
<seealso>
|
||||||
|
</seealso>
|
||||||
|
</element>
|
||||||
|
|
||||||
|
<!-- record type Visibility: default -->
|
||||||
|
<element name="TMethodRecord">
|
||||||
|
<short>Some record with variants</short>
|
||||||
|
<descr>
|
||||||
|
</descr>
|
||||||
|
<seealso>
|
||||||
|
</seealso>
|
||||||
|
</element>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- variable Visibility: default -->
|
||||||
|
<element name="TMethodRecord.MyMethod">
|
||||||
|
<short>A short description for MyMethod</short>
|
||||||
|
<descr>
|
||||||
|
</descr>
|
||||||
|
<seealso>
|
||||||
|
</seealso>
|
||||||
|
</element>
|
||||||
|
|
||||||
|
<!-- variable Visibility: default -->
|
||||||
|
<element name="TMethodRecord.A">
|
||||||
|
<short>A short description for A </short>
|
||||||
|
<descr>
|
||||||
|
</descr>
|
||||||
|
<seealso>
|
||||||
|
</seealso>
|
||||||
|
</element>
|
||||||
|
|
||||||
|
<!-- variable Visibility: default -->
|
||||||
|
<element name="TMethodRecord.X">
|
||||||
|
<short>A short description for X</short>
|
||||||
|
<descr>
|
||||||
|
</descr>
|
||||||
|
<seealso>
|
||||||
|
</seealso>
|
||||||
|
</element>
|
||||||
|
|
||||||
|
<!-- variable Visibility: default -->
|
||||||
|
<element name="TMethodRecord.Y">
|
||||||
|
<short>A short description for Y</short>
|
||||||
<descr>
|
<descr>
|
||||||
</descr>
|
</descr>
|
||||||
<seealso>
|
<seealso>
|
||||||
|
Loading…
Reference in New Issue
Block a user