Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
CityDoctor
CityDoctor2
Commits
d1ff5020
Commit
d1ff5020
authored
May 24, 2025
by
Beuster
Browse files
Merge remote-tracking branch 'origin/dev' into dev_cpp_code_conversion
parents
06ad5a8e
b50c5f13
Pipeline
#11130
passed with stage
in 1 minute and 28 seconds
Changes
179
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/BuildingUnitNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.BuildingUnit
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
BuildingUnitNode
extends
Renderable
{
private
final
BuildingUnit
buildingUnit
;
public
BuildingUnitNode
(
BuildingUnit
buildingUnit
)
{
this
.
buildingUnit
=
buildingUnit
;
}
@Override
public
String
getText
()
{
return
buildingUnit
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
buildingUnit
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
buildingUnit
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
buildingUnit
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/ErrorItemVisitor.java
View file @
d1ff5020
...
...
@@ -46,6 +46,11 @@ import de.hft.stuttgart.citydoctor2.datastructure.LinearRing.LinearRingType;
import
de.hft.stuttgart.citydoctor2.datastructure.Polygon
;
import
de.hft.stuttgart.citydoctor2.datastructure.Vertex
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.tree.node.EdgeNode
;
import
de.hft.stuttgart.citydoctor2.gui.tree.node.LinearRingNode
;
import
de.hft.stuttgart.citydoctor2.gui.tree.node.PolygonNode
;
import
de.hft.stuttgart.citydoctor2.gui.tree.node.TextNode
;
import
de.hft.stuttgart.citydoctor2.gui.tree.node.VertexNode
;
import
de.hft.stuttgart.citydoctor2.math.Triangle3d
;
import
de.hft.stuttgart.citydoctor2.utils.Localization
;
import
de.hft.stuttgart.citydoctor2.utils.PolygonIntersection
;
...
...
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/FeatureNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.CityObject
;
public
interface
FeatureNode
{
public
CityObject
getFeature
();
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/FurnitureNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.AbstractFurniture
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
FurnitureNode
extends
Renderable
{
private
final
AbstractFurniture
furniture
;
public
FurnitureNode
(
AbstractFurniture
furniture
)
{
this
.
furniture
=
furniture
;
}
@Override
public
String
getText
()
{
return
furniture
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
furniture
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
furniture
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
furniture
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/GenericCityObjectsNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.CityObject
;
import
de.hft.stuttgart.citydoctor2.datastructure.GenericCityObject
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
GenericCityObjectsNode
extends
Renderable
implements
FeatureNode
{
private
final
GenericCityObject
gcobject
;
public
GenericCityObjectsNode
(
GenericCityObject
gcobject
)
{
this
.
gcobject
=
gcobject
;
}
@Override
public
String
getText
()
{
return
gcobject
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
gcobject
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
gcobject
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
gcobject
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
@Override
public
CityObject
getFeature
()
{
return
gcobject
;
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/InstallationNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.Installation
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
InstallationNode
extends
Renderable
{
private
final
Installation
bi
;
public
InstallationNode
(
Installation
bi
)
{
this
.
bi
=
bi
;
}
@Override
public
String
getText
()
{
return
bi
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
bi
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
bi
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
bi
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
}
\ No newline at end of file
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/LandUseNode.java
deleted
100644 → 0
View file @
06ad5a8e
/*-
* Copyright 2022 Beuth Hochschule für Technik Berlin, Hochschule für Technik Stuttgart
*
* This file is part of CityDoctor2.
*
* CityDoctor2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* CityDoctor2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with CityDoctor2. If not, see <https://www.gnu.org/licenses/>.
*/
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.LandObject
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
LandUseNode
extends
Renderable
{
private
final
LandObject
landUse
;
public
LandUseNode
(
LandObject
landUse
)
{
this
.
landUse
=
landUse
;
}
@Override
public
void
refreshTextColor
()
{
if
(!
landUse
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
landUse
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
@Override
public
String
getText
()
{
return
"[LandUse] "
+
landUse
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
landUse
);
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/ReliefNode.java
deleted
100644 → 0
View file @
06ad5a8e
/*-
* Copyright 2022 Beuth Hochschule für Technik Berlin, Hochschule für Technik Stuttgart
*
* This file is part of CityDoctor2.
*
* CityDoctor2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* CityDoctor2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with CityDoctor2. If not, see <https://www.gnu.org/licenses/>.
*/
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.ReliefObject
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
ReliefNode
extends
Renderable
{
private
final
ReliefObject
relief
;
public
ReliefNode
(
ReliefObject
relief
)
{
this
.
relief
=
relief
;
}
@Override
public
void
refreshTextColor
()
{
if
(!
relief
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
relief
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
@Override
public
String
getText
()
{
return
"[ReliefFeature] "
+
relief
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
relief
);
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/Renderable.java
View file @
d1ff5020
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.MainWindow
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
import
de.hft.stuttgart.citydoctor2.utils.Localization
;
import
javafx.beans.property.ObjectProperty
;
import
javafx.beans.property.SimpleObjectProperty
;
import
javafx.scene.input.Clipboard
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
static
javafx
.
scene
.
input
.
Clipboard
.
getSystemClipboard
;
public
abstract
class
Renderable
{
private
final
ObjectProperty
<
CheckStatus
>
statusProperty
=
new
SimpleObjectProperty
<>();
private
static
Logger
logger
=
LogManager
.
getLogger
(
Renderable
.
class
);
/**
* @return the status
*/
...
...
@@ -31,4 +40,18 @@ public abstract class Renderable {
public
abstract
String
getText
();
public
abstract
void
visit
(
Renderer
renderer
);
public
void
getClipboardAction
(
MainWindow
mainWindow
)
{
Clipboard
clipboard
=
getSystemClipboard
();
clipboard
.
clear
();
if
(
logger
.
isInfoEnabled
())
{
logger
.
info
(
Localization
.
getText
(
"MainWindow.infoTopLevelCopyID"
));
}
}
public
void
getFeatureExportAction
(
MainWindow
mainWindow
)
{
if
(
logger
.
isInfoEnabled
())
{
logger
.
info
(
Localization
.
getText
(
"MainWindow.infoTopLevelExport"
));
}
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/RoomNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.AbstractRoom
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
RoomNode
extends
Renderable
{
private
final
AbstractRoom
room
;
public
RoomNode
(
AbstractRoom
room
)
{
this
.
room
=
room
;
}
@Override
public
String
getText
()
{
return
room
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
room
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
room
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
room
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/StoreyNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.Storey
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
StoreyNode
extends
Renderable
{
private
final
Storey
storey
;
public
StoreyNode
(
Storey
storey
)
{
this
.
storey
=
storey
;
}
@Override
public
String
getText
()
{
return
storey
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
storey
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
storey
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
storey
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/TinNode.java
deleted
100644 → 0
View file @
06ad5a8e
/*-
* Copyright 2022 Beuth Hochschule für Technik Berlin, Hochschule für Technik Stuttgart
*
* This file is part of CityDoctor2.
*
* CityDoctor2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* CityDoctor2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with CityDoctor2. If not, see <https://www.gnu.org/licenses/>.
*/
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.TinObject
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
TinNode
extends
Renderable
{
private
final
TinObject
tin
;
public
TinNode
(
TinObject
tin
)
{
this
.
tin
=
tin
;
}
@Override
public
void
refreshTextColor
()
{
if
(!
tin
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
tin
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
@Override
public
String
getText
()
{
return
"[TINRelief] "
+
tin
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
tin
);
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/TransportationObjectNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.TransportationObject
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
TransportationObjectNode
extends
Renderable
{
private
final
TransportationObject
to
;
public
TransportationObjectNode
(
TransportationObject
to
)
{
this
.
to
=
to
;
}
@Override
public
String
getText
()
{
return
to
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
to
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
to
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
to
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/TunnelConstructiveElementNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.TunnelConstructiveElement
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
TunnelConstructiveElementNode
extends
Renderable
{
private
final
TunnelConstructiveElement
tce
;
public
TunnelConstructiveElementNode
(
TunnelConstructiveElement
tce
)
{
this
.
tce
=
tce
;
}
@Override
public
String
getText
()
{
return
tce
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
tce
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
tce
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
tce
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/TunnelNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.CityObject
;
import
de.hft.stuttgart.citydoctor2.datastructure.Tunnel
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
TunnelNode
extends
Renderable
implements
FeatureNode
{
private
final
Tunnel
tunnel
;
public
TunnelNode
(
Tunnel
tunnel
)
{
this
.
tunnel
=
tunnel
;
}
@Override
public
String
getText
()
{
return
tunnel
.
getGmlId
().
getGmlString
();
}
public
Tunnel
getTunnel
()
{
return
tunnel
;
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
tunnel
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
tunnel
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
tunnel
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
@Override
public
CityObject
getFeature
()
{
return
tunnel
;
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/TunnelPartNode.java
deleted
100644 → 0
View file @
06ad5a8e
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.TunnelPart
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
TunnelPartNode
extends
Renderable
{
private
final
TunnelPart
tp
;
public
TunnelPartNode
(
TunnelPart
tp
)
{
this
.
tp
=
tp
;
}
@Override
public
String
getText
()
{
return
tp
.
getGmlId
().
getGmlString
();
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
tp
);
}
@Override
public
void
refreshTextColor
()
{
if
(!
tp
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
tp
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/VegetationNode.java
deleted
100644 → 0
View file @
06ad5a8e
/*-
* Copyright 2022 Beuth Hochschule für Technik Berlin, Hochschule für Technik Stuttgart
*
* This file is part of CityDoctor2.
*
* CityDoctor2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* CityDoctor2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with CityDoctor2. If not, see <https://www.gnu.org/licenses/>.
*/
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.datastructure.CityObject
;
import
de.hft.stuttgart.citydoctor2.datastructure.Vegetation
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
public
class
VegetationNode
extends
Renderable
implements
FeatureNode
{
private
final
Vegetation
veg
;
private
final
String
text
;
public
VegetationNode
(
Vegetation
veg
)
{
this
.
veg
=
veg
;
text
=
"["
+
veg
.
getVegetationType
()
+
"] "
+
veg
.
getGmlId
().
getGmlString
();
}
@Override
public
void
refreshTextColor
()
{
if
(!
veg
.
isValidated
())
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
veg
.
containsAnyError
())
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
@Override
public
String
getText
()
{
return
text
;
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
veg
);
}
@Override
public
CityObject
getFeature
()
{
return
veg
;
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/ZipEntryListCell.java
View file @
d1ff5020
package
de.hft.stuttgart.citydoctor2.gui.tree
;
import
de.hft.stuttgart.citydoctor2.gui.tree.node.ZipEntryNode
;
import
javafx.scene.control.ListCell
;
public
class
ZipEntryListCell
extends
ListCell
<
ZipEntryNode
>
{
...
...
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/
CityFurniture
Node.java
→
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/
node/CityObjectGroup
Node.java
View file @
d1ff5020
package
de.hft.stuttgart.citydoctor2.gui.tree
;
package
de.hft.stuttgart.citydoctor2.gui.tree
.node
;
import
de.hft.stuttgart.citydoctor2.
datastructure.CityFurnitur
e
;
import
de.hft.stuttgart.citydoctor2.
check.Checkabl
e
;
import
de.hft.stuttgart.citydoctor2.datastructure.CityObject
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
import
de.hft.stuttgart.citydoctor2.gui.tree.Renderable
;
import
javafx.scene.paint.Color
;
public
class
CityFurnitureNode
extends
Renderable
implements
FeatureNode
{
import
java.util.List
;
private
final
CityFurniture
cityFurniture
;
public
CityFurnitureNode
(
CityFurniture
cityFurniture
)
{
this
.
cityFurniture
=
cityFurniture
;
}
@Override
public
String
getText
()
{
return
cityFurniture
.
getGmlId
().
getGmlString
();
}
public
class
CityObjectGroupNode
extends
Renderable
{
private
final
List
<?
extends
CityObject
>
cityObjects
;
private
final
Color
renderColor
;
private
final
String
nodeText
;
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
render
(
cityFurniture
);
public
CityObjectGroupNode
(
List
<?
extends
CityObject
>
cityObjects
,
String
nodeText
,
Color
renderColor
)
{
this
.
cityObjects
=
cityObjects
;
this
.
nodeText
=
nodeText
;
this
.
renderColor
=
renderColor
;
}
@Override
public
void
refreshTextColor
()
{
if
(
!
city
Furniture
.
isValidated
())
{
if
(
city
Objects
.
stream
().
anyMatch
(
cityObject
->
!
cityObject
.
isValidated
())
)
{
setStatus
(
CheckStatus
.
NOT_CHECKED
);
}
else
if
(
city
Furniture
.
containsAnyError
(
))
{
}
else
if
(
city
Objects
.
stream
().
anyMatch
(
Checkable:
:
containsAnyError
))
{
setStatus
(
CheckStatus
.
ERROR
);
}
else
{
setStatus
(
CheckStatus
.
OK
);
}
}
@Override
public
CityObject
getFeature
()
{
return
cityFurniture
;
public
String
getText
()
{
return
nodeText
;
}
@Override
public
void
visit
(
Renderer
renderer
)
{
renderer
.
renderCityObjects
(
cityObjects
,
renderColor
);
}
}
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/CityObjectNode.java
→
CityDoctorParent/Extensions/CityDoctorGUI/src/main/java/de/hft/stuttgart/citydoctor2/gui/tree/
node/
CityObjectNode.java
View file @
d1ff5020
package
de.hft.stuttgart.citydoctor2.gui.tree
;
package
de.hft.stuttgart.citydoctor2.gui.tree
.node
;
import
de.hft.stuttgart.citydoctor2.datastructure.CityObject
;
import
de.hft.stuttgart.citydoctor2.gui.CheckStatus
;
import
de.hft.stuttgart.citydoctor2.gui.Renderer
;
import
de.hft.stuttgart.citydoctor2.gui.tree.Renderable
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
public
class
CityObjectNode
extends
Renderable
implements
FeatureNode
{
public
class
CityObjectNode
extends
Renderable
{
private
static
final
Logger
logger
=
LogManager
.
getLogger
(
CityObjectNode
.
class
);
private
final
CityObject
co
;
...
...
@@ -25,7 +30,7 @@ public class CityObjectNode extends Renderable implements FeatureNode{
@Override
public
String
getText
()
{
return
co
.
get
GmlId
().
getGmlString
();
return
co
.
get
DisplayText
();
}
@Override
...
...
@@ -33,7 +38,6 @@ public class CityObjectNode extends Renderable implements FeatureNode{
renderer
.
render
(
co
);
}
@Override
public
CityObject
getFeature
()
{
return
co
;
}
...
...
Prev
1
…
4
5
6
7
8
9
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment