You are here: Links of Interest » HEIG-VD » [PRO] Virtual Comics Library » Rapport » Implémentation » Application Desktop » Bibliothèque
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
heig:vcl:rapport:implementation:desktop:bibliotheque [2016/05/30 13:49] – [Filtrer un Catalogue] Laureline David | heig:vcl:rapport:implementation:desktop:bibliotheque [2016/05/31 23:28] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 3: | Line 3: | ||
{{ : | {{ : | ||
- | La bibliothèque est implémentés | + | La bibliothèque est implémentée |
===== Affichage des Catalogues ===== | ===== Affichage des Catalogues ===== | ||
- | L' | + | L' |
- | Ces objets proxy permettent d' | + | < |
+ | hide empty fields | ||
+ | hide empty methods | ||
- | ===== Filtrer un Catalogue ===== | + | TreeView -> " |
+ | RootCatalogItem -> " | ||
+ | CatalogItem --> " | ||
+ | CatalogItem --> CatalogNode | ||
+ | RootCatalogItem --> " | ||
+ | Catalog -> " | ||
+ | CatalogNode <|-- Category | ||
+ | CatalogNode <|-- Series | ||
+ | </ | ||
- | Une méthode '' | + | Ces objets proxy permettent d' |
+ | |||
+ | ==== Filtrer un Catalogue ==== | ||
+ | |||
+ | Une méthode '' | ||
+ | |||
+ | Ce fonctionnement permet d' | ||
+ | |||
+ | |||
+ | ===== Modification du Catalogue ===== | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | La bibliothèque présente des dialogues lors de la modification ou la création d' | ||
+ | |||
+ | < | ||
+ | hide empty fields | ||
+ | hide empty methods | ||
+ | |||
+ | abstract class Controller | ||
+ | |||
+ | Controller <|-- DialogController | ||
+ | abstract class DialogController< | ||
+ | + getTitle() | ||
+ | + getButtons() | ||
+ | + getResult(button) | ||
+ | } | ||
+ | |||
+ | DialogController <|-- ModalController | ||
+ | abstract class ModalController< | ||
+ | + setValue(value) | ||
+ | + getValue() | ||
+ | + commit() | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | |||
+ | Le '' | ||
+ | |||
+ | Le '' | ||
+ | |||
+ | Les différents contrôleurs d' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Affichage des Volumes ===== | ||
+ | |||
+ | Les volumes sont affichés dans une [[https:// | ||
- | public boolean applyFilter(CatalogFilter filter) { | ||
- | boolean hasMatch = false; | ||
- | if (filter.matches(getValue())) { | ||
- | setExpanded(true); | ||
- | hasMatch = true; | ||
- | } | ||
- | | ||
- | for (CatalogItem item : items.values()) { | ||
- | boolean childMatches = item.applyFilter(filter); | ||
- | if (childMatches && !getChildren().contains(item)) { | ||
- | getChildren().add(item); | ||
- | } else if (!childMatches && getChildren().contains(item)) { | ||
- | getChildren().remove(item); | ||
- | } | ||
- | hasMatch = hasMatch || childMatches; | ||
- | } | ||
- | sortChildren(); | ||
- | return hasMatch; | ||
- | } |