Skip to content

Commit 0e8f221

Browse files
REFACTORING: Removing the JPanelDtoFactory
1 parent 0f139e4 commit 0e8f221

File tree

3 files changed

+15
-35
lines changed

3 files changed

+15
-35
lines changed

invasionII/src/main/java/com/mgs/fantasi/driver/UIDriver.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import com.mgs.fantasi.driver.swing.JPanelRenderingManager;
44
import com.mgs.fantasi.driver.swing.SwingUIDisplayManager;
5-
import com.mgs.fantasi.driver.swing.jPanelCreation.JPanelDtoFactory;
65
import com.mgs.fantasi.driver.swing.jPanelCreation.JPanelLayoutTranslator;
76
import com.mgs.fantasi.profile.UIProfile;
87
import com.mgs.fantasi.properties.PaddingDecorator;
@@ -18,15 +17,14 @@ public class UIDriver<T> {
1817

1918

2019
public static UIDriver<JPanel> forSwing() {
21-
JPanelLayoutTranslator jPanelLayoutTranslator = new JPanelLayoutTranslator();
22-
JPanelDtoFactory jPanelDtoFactory = new JPanelDtoFactory(jPanelLayoutTranslator, new PaddingDecorator());
2320

2421
return new UIDriver<JPanel>
2522
(
2623
new SwingUIDisplayManager(),
2724
new JPanelRenderingManager(
28-
jPanelDtoFactory,
29-
new UIPropertiesManager()
25+
new UIPropertiesManager(),
26+
new JPanelLayoutTranslator(),
27+
new PaddingDecorator()
3028
)
3129
);
3230
}

invasionII/src/main/java/com/mgs/fantasi/driver/swing/JPanelRenderingManager.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
package com.mgs.fantasi.driver.swing;
22

33
import com.mgs.fantasi.driver.RenderingManager;
4-
import com.mgs.fantasi.driver.swing.jPanelCreation.JPanelDto;
5-
import com.mgs.fantasi.driver.swing.jPanelCreation.JPanelDtoFactory;
4+
import com.mgs.fantasi.driver.swing.jPanelCreation.*;
65
import com.mgs.fantasi.profile.UIProfile;
6+
import com.mgs.fantasi.properties.JPanelDecorator;
77
import com.mgs.fantasi.properties.UIPropertiesManager;
88
import com.mgs.fantasi.properties.UIPropertiesProvider;
9+
import com.mgs.fantasi.properties.data.Padding;
10+
import com.mgs.fantasi.properties.data.polygon.PolygonPointsIterator;
911
import com.mgs.fantasi.structure.CollocationInfo;
1012
import com.mgs.fantasi.structure.Structure;
1113
import com.mgs.fantasi.structure.treeAux.WireframeNode;
@@ -14,13 +16,15 @@
1416
import java.util.Map;
1517

1618
public class JPanelRenderingManager implements RenderingManager<JPanel> {
17-
private final JPanelDtoFactory jPanelDtoFactory;
1819
private final UIPropertiesManager uiPropertiesManager;
20+
private final JPanelLayoutTranslator jPanelLayoutTranslator;
21+
private final JPanelDecorator<Padding> paddingDecorator;
1922

2023

21-
public JPanelRenderingManager(JPanelDtoFactory jPanelDtoFactory, UIPropertiesManager uiPropertiesManager) {
22-
this.jPanelDtoFactory = jPanelDtoFactory;
24+
public JPanelRenderingManager(UIPropertiesManager uiPropertiesManager, JPanelLayoutTranslator jPanelLayoutTranslator, JPanelDecorator<Padding> paddingDecorator) {
2325
this.uiPropertiesManager = uiPropertiesManager;
26+
this.jPanelLayoutTranslator = jPanelLayoutTranslator;
27+
this.paddingDecorator = paddingDecorator;
2428
}
2529

2630
@Override
@@ -32,7 +36,9 @@ private JPanelDto createDto(Structure structure, UIProfile uiProfile) {
3236
WireframeNode root = structure.getRoot();
3337

3438
UIPropertiesProvider withStylesApplied = uiPropertiesManager.applyStyles(root.getUiProperties(), uiProfile.findStylesFor(root));
35-
JPanelDto containerJPanelDto = jPanelDtoFactory.forUIProperties(withStylesApplied, root.getShape());
39+
PolygonPointsIterator shape = root.getShape();
40+
JPanelFactory jPanelFactory = shape.isRectangular() ? new StandardJPanelFactory() : new NonRectangularJPanelFactory();
41+
JPanelDto containerJPanelDto = new JPanelDto(withStylesApplied, jPanelLayoutTranslator, shape, jPanelFactory, paddingDecorator);
3642

3743
for (Map.Entry<CollocationInfo, Structure> childNode : structure.getChildren().entrySet()) {
3844
JPanelDto childJPanelDto = createDto(childNode.getValue(), uiProfile);

invasionII/src/main/java/com/mgs/fantasi/driver/swing/jPanelCreation/JPanelDtoFactory.java

Lines changed: 0 additions & 24 deletions
This file was deleted.

0 commit comments

Comments
 (0)