You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdesdk/kompare/DESIGN

36 lines
1.4 KiB

Kompare General design:
Kompare is split up into 4 parts:
- A shell around the parts
- A library with the modellist and the parser
- The navigation tree which uses the library
- The view part that also uses the library
The diffmodel is comparable to a document and the view part is comparable
to the view and the komparemodellist is comparable to a documentmanager.
The navtree can be viewed as a document view manager.
The model is fully separated from the view and all communication goes
through Q_SIGNALS and Q_SLOTS. The view gets a model that contains all differences
for the compared files A and B. The view gets this model from the modellist,
the central entity in the part.
There is an interface to the komparepart that can be used in other programs,
simply link to the libkompareinterface.la and call its methods after you have
instanciated a komparepart. There is also a "hidden" signal and slot interface
that can be connected to from the shell app to get some information, and an
interface for communication between the navigation part and the komparepart.
There is no need to use the interface for the communication between the
navigation and kompare parts in the shell app.
Kompare has some debug areas:
8100 kompare
8101 kompare (libs)
8102 kompare (shell)
8103 kompare (part)
8104 kompare (list view)
8105 kompare (nav view)
8106 kompare (connect widget)