📄 pdb_format.txt
字号:
All the doc for Progect PDB format is in progect.h (ok, there's not a lot of
doc...).
Basically, you have a collection of TaskExtendedRecordType, each one having
three main fields :
(1) attr
(2) format
(3) fields
(1) is a struct with
- the level of the task
- four booleans telling if the task has a next one, a child,
a previous one, and if it's open.
This describes the hierarchy of the outline. If a task has a child, then the
next task in the database is this child, so the tasks are stored in the same
order as you see them on your screen.
(2) is also a struct informing of the type of the task, telling if it has a
note, if it has a link, what type it is (info, action, progress, numeric) and
if it has an extra block (XB) (+ some other things, look at progect.h, it's
commented)
(3) is a union of three possible structs. If the task has an XB (see 2),
you'll find it here, else you'll find the standard fields.
The XB is a data block, beginning with its size, then the data. It's splitted
in data chunks. Each chunk has :
(a) a type
(b) a subkey
(c) a size
(d) a body
The type is one of Extra_Link_ToDo, Link_Linkmaster, Icon or Numeric.
The subkey is not used, but would let us have more than one block of a
specific time.
The size is the size of the body.
The body contains the data.
There are two macros in xb.h that help to extract the chunks.
Please note that TaskRecordType is not used anymore, only
TaskExtendedRecordType is.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -