Analyse et explore libreoffice

Architecture de Libreoffice - Une introduction

Presentation

LibreOffice est une suite bureautique open source.

La suite bureautique LibreOffice

La suite LibreOffice comprend les applications suivantes :

Un bref historique

Les sous-systèmes de Libreoffice

Applications

Les principales applications de Libreoffice sont Libreoffice writer, Libreoffice calc, Libreoffice draw, Libreoffice impress, Libreoffice base... : voir concepts / applications pour en savoir plus.

Ces applications se trouvent dans leur propre dossier au sommet du répertoire du code source.

Interface utilisateur, graphiques et bibliothèques graphiques tierces

L'interface utilisateur des applications utilise des composants communs :

Les applications et les composants de l'interface graphique reposent sur des composants communs:

Ces composants graphiques reposent sur des logiciels tiers tels que : harfbuzz, libeot, libpng, libwebp, skia...

Modèle objet des composants

Universal Network Objects (UNO) est la technologie des composants de LibreOffice.

Elle utilise :

Le Universal Content Broker (ucb) fournit une interface UNO pour accéder à différentes sources de données.

Scripting, API libreoffice

Libreoffice implémente

Formats de documents, Filtres

Libreoffice implémente de nombreux formats ou filtres de documents pour charger ou enregistrer des documents dans différents formats : xml office, microsoft office, writer perfect, etc.

Les couches inférieures

Les couches inférieures comprennent :

Aperçu de Libreoffice Writer

Dépendances des composants de swriter

Pour visualiser les dépendances de swriter :

SWriter est le composant exécutable, qui dépend de sw (logique applicative), swui (interface utilisateur) et winlauncher (lanceur).

Il s'appuie sur les sous-systèmes décrits ci-dessus:

swriter : le répertoire de code source

Aller dans l'explorateur de répertoires pour voir le contenu du code spécifique à swriter.

/sw          - Libreoffice writer
  /inc       - inclusions
  /qa        - tests unitaires, données de test
  /sdi       - description des slots / actions
  /source    - code source du module
    /core    - logique métier de base
    /filter  - filtres permettant de charger ou d'enregistrer des documents dans un format spécifique.
    /ui      - interface utilisateur
    /uibase  - code de base attaché à l'interface utilisateur
  /uiconfig  - descriptions XML de l'interface utilisateur
  /util      - description des composants

Generated by PFA software prototype