User Tools

Site Tools


ptidej_ui_viewer

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
ptidej_ui_viewer [2013/06/13 05:48]
yann
ptidej_ui_viewer [2014/02/16 08:12]
yann
Line 1: Line 1:
-The Ptidej UI Viewer ​project provide interfaces and classes used by all the viewers. In particular, it provides the IRepresentation ​ interface that is the "​model"​ (as in the Model-View-Controller) of any viewer. This interface allows managing PADL models, Ptidej UI models, original sources, occurrences. It is essential that any viewer uses this interface for its model, as it allows extensions to the viewers to work seamlessly regardless of the viewer implementations.+====== ​Ptidej UI Viewer ​======
  
-This project ​also provides the IExtension ​interface that any extension ​to the viewers ​must implement. Differently from the IAnalysis interfaces defined ​in the PADL and Ptidej UI projects, this interfaces requires an extension to implement a invoke(IRepresentation) methodTherefore, it is possible for an extension to access ​the source paths from which a PADL model has been built, found occurrences,​ and so on.+The ''​Ptidej UI Viewer'' ​project ​provide interfaces and classes used by all the viewers. In particular, it provides the ''​ptidej.viewer.IRepresentation'' ​interface that is the "​model"​ (as in Model-View-Controller) of any viewer. This interface allows managing PADL models, Ptidej UI models, original sources, occurrences... It is essential that any viewer uses this interface for its model, as it allows extensions ​to the viewers ​to work seamlessly regardless of the viewer implementations. Extensions are available ​in the ''​[[Ptidej UI Viewer Extensions]]''​ projectThere are implementations of different viewers. The most usable currently ​is run through ​the class ''​ptidej.viewer.ProjectViewer''​ in project ''​[[Ptidej UI Viewer Standalone Swing]]''​
  
-There are implementations of different viewers. The most usable currently is ptidej.viewer.ProjectViewer in project Ptidej UI Viewer Standalone Swing. Here are some steps to use it: 
- 
-    - Starting-up the project viewer {{:​ptidej_ui_viewer_standalone_swing_1.png?​100|}} 
-    - Using the File menu to create a new model from some C++ source files {{:​ptidej_ui_viewer_standalone_swing_2.png?​100|}} 
-    - Giving a name to the model {{:​ptidej_ui_viewer_standalone_swing_3.png?​100|}} 
-    - Selecting a directory containing C++ source files {{:​ptidej_ui_viewer_standalone_swing_4.png?​100|}} 
-    - After reverse-engineering the C++ source code files, displaying the model {{:​ptidej_ui_viewer_standalone_swing_5.png?​100|}} {{:​ptidej_ui_viewer_standalone_swing_5.1.png?​100|}} 
-    - Selecting the Tools tab {{:​ptidej_ui_viewer_standalone_swing_6.png?​100|}} and showing the list of micro-architectures similar to some motifs (either from design patterns, design anti-patterns,​ code smells, or micro-patterns) {{:​ptidej_ui_viewer_standalone_swing_6.1.png?​100|}} 
-    - At first, the list is empty {{:​ptidej_ui_viewer_standalone_swing_5.png?​100|}} 
-    - But selecting the Code Smells tab and the AbstractClass code smell reveals some potential problems {{:​ptidej_ui_viewer_standalone_swing_8.png?​100|}} 
-    - These problem can be investigated by selecting the displayed occurrence in the list {{:​ptidej_ui_viewer_standalone_swing_9.png?​100|}} or in the model view {{:​ptidej_ui_viewer_standalone_swing_10.png?​100|}} {{:​ptidej_ui_viewer_standalone_swing_10.1.png?​100|}} 
ptidej_ui_viewer.txt ยท Last modified: 2019/10/06 20:37 (external edit)