LCOV - code coverage report
Current view: top level - src/utils/gui/images - GUIIconSubSys.cpp (source / functions) Coverage Total Hit
Test: lcov.info Lines: 99.2 % 508 504
Test Date: 2024-10-17 15:44:51 Functions: 100.0 % 5 5

            Line data    Source code
       1              : /****************************************************************************/
       2              : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
       3              : // Copyright (C) 2001-2024 German Aerospace Center (DLR) and others.
       4              : // This program and the accompanying materials are made available under the
       5              : // terms of the Eclipse Public License 2.0 which is available at
       6              : // https://www.eclipse.org/legal/epl-2.0/
       7              : // This Source Code may also be made available under the following Secondary
       8              : // Licenses when the conditions for such availability set forth in the Eclipse
       9              : // Public License 2.0 are satisfied: GNU General Public License, version 2
      10              : // or later which is available at
      11              : // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
      12              : // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
      13              : /****************************************************************************/
      14              : /// @file    GUIIconSubSys.cpp
      15              : /// @author  Daniel Krajzewicz
      16              : /// @author  Jakob Erdmann
      17              : /// @author  Andreas Gaubatz
      18              : /// @date    Mon, 08.03.2004
      19              : ///
      20              : // Helper for icons loading and usage
      21              : /****************************************************************************/
      22              : #include <config.h>
      23              : 
      24              : #include <utils/common/UtilExceptions.h>
      25              : 
      26              : #include "GUIIcons.h"
      27              : #include "GUIIconSubSys.h"
      28              : 
      29              : #include "icons/sumo_icon64.xpm"
      30              : #include "icons/sumo_icon16.xpm"
      31              : #include "icons/sumo_logo.xpm"
      32              : 
      33              : #include "icons/netgenerate.xpm"
      34              : #include "icons/netedit_icon64.xpm"
      35              : #include "icons/netedit_icon16.xpm"
      36              : 
      37              : #include "icons/netgenerate_grid.xpm"
      38              : #include "icons/netgenerate_spider.xpm"
      39              : #include "icons/netgenerate_randomgrid.xpm"
      40              : #include "icons/netgenerate_random.xpm"
      41              : 
      42              : #include "icons/empty.xpm"
      43              : #include "icons/newnet.xpm"
      44              : #include "icons/play.xpm"
      45              : #include "icons/stop.xpm"
      46              : #include "icons/step.xpm"
      47              : #include "icons/new_window.xpm"
      48              : #include "icons/new_window_3d.xpm"
      49              : 
      50              : #include "icons/open.xpm"
      51              : #include "icons/openadditionals.xpm"
      52              : #include "icons/openbmpdialog.xpm"
      53              : #include "icons/opennet.xpm"
      54              : #include "icons/openmeandatas.xpm"
      55              : #include "icons/openneteditconfig.xpm"
      56              : #include "icons/openshapes.xpm"
      57              : #include "icons/opensumoconfig.xpm"
      58              : #include "icons/opentls.xpm"
      59              : 
      60              : #include "icons/save.xpm"
      61              : #include "icons/save_sumoconfig.xpm"
      62              : #include "icons/save_neteditconfig.xpm"
      63              : #include "icons/save_multiple.xpm"
      64              : #include "icons/save_networkelements.xpm"
      65              : #include "icons/save_aditionalelements.xpm"
      66              : #include "icons/save_jupedsimelements.xpm"
      67              : #include "icons/save_demandelements.xpm"
      68              : #include "icons/save_dataelements.xpm"
      69              : #include "icons/save_meandataelements.xpm"
      70              : #include "icons/save_database.xpm"
      71              : 
      72              : #include "icons/app_tracker.xpm"
      73              : #include "icons/app_finder.xpm"
      74              : #include "icons/app_breakpoints.xpm"
      75              : #include "icons/app_tlstracker.xpm"
      76              : #include "icons/app_table.xpm"
      77              : #include "icons/app_selector.xpm"
      78              : 
      79              : #include "icons/locate.xpm"
      80              : #include "icons/locate_junction.xpm"
      81              : #include "icons/locate_edge.xpm"
      82              : #include "icons/locate_walkingarea.xpm"
      83              : #include "icons/locate_vehicle.xpm"
      84              : #include "icons/locate_route.xpm"
      85              : #include "icons/locate_stop.xpm"
      86              : #include "icons/locate_person.xpm"
      87              : #include "icons/locate_container.xpm"
      88              : #include "icons/locate_tls.xpm"
      89              : #include "icons/locate_add.xpm"
      90              : #include "icons/locate_poi.xpm"
      91              : #include "icons/locate_poly.xpm"
      92              : 
      93              : #include "icons/tool_python.xpm"
      94              : #include "icons/tool_emissions.xpm"
      95              : #include "icons/tool_citybrain.xpm"
      96              : #include "icons/tool_gtfs.xpm"
      97              : #include "icons/tool_vissim.xpm"
      98              : #include "icons/tool_visum.xpm"
      99              : #include "icons/tool_import.xpm"
     100              : #include "icons/tool_output.xpm"
     101              : #include "icons/tool_turndefs.xpm"
     102              : #include "icons/tool_xml.xpm"
     103              : 
     104              : #include "icons/green_container.xpm"
     105              : #include "icons/yellow_container.xpm"
     106              : #include "icons/green_edge.xpm"
     107              : #include "icons/yellow_edge.xpm"
     108              : #include "icons/green_vehicle.xpm"
     109              : #include "icons/yellow_vehicle.xpm"
     110              : #include "icons/green_person.xpm"
     111              : #include "icons/yellow_person.xpm"
     112              : 
     113              : #include "icons/colorwheel.xpm"
     114              : #include "icons/removedb.xpm"
     115              : #include "icons/recenter_view.xpm"
     116              : #include "icons/allow_rotation.xpm"
     117              : #include "icons/show_tooltips_view.xpm"
     118              : #include "icons/show_tooltips_menu.xpm"
     119              : #include "icons/magnify.xpm"
     120              : #include "icons/zoomstyle.xpm"
     121              : #include "icons/yes.xpm"
     122              : #include "icons/no.xpm"
     123              : 
     124              : #include "icons/extract_streets.xpm"
     125              : #include "icons/dilate.xpm"
     126              : #include "icons/erode.xpm"
     127              : #include "icons/opening.xpm"
     128              : #include "icons/closing.xpm"
     129              : #include "icons/erase_stains.xpm"
     130              : #include "icons/close_gaps.xpm"
     131              : #include "icons/skeletonize.xpm"
     132              : #include "icons/rarify.xpm"
     133              : #include "icons/create_graph.xpm"
     134              : #include "icons/eyedrop.xpm"
     135              : #include "icons/rubber1x.xpm"
     136              : #include "icons/rubber2x.xpm"
     137              : #include "icons/rubber3x.xpm"
     138              : #include "icons/rubber4x.xpm"
     139              : #include "icons/rubber5x.xpm"
     140              : #include "icons/paintbrush1x.xpm"
     141              : #include "icons/paintbrush2x.xpm"
     142              : #include "icons/paintbrush3x.xpm"
     143              : #include "icons/paintbrush4x.xpm"
     144              : #include "icons/paintbrush5x.xpm"
     145              : #include "icons/edit_graph.xpm"
     146              : #include "icons/full_screen.xpm"
     147              : 
     148              : #include "icons/flag.xpm"
     149              : #include "icons/flag_plus.xpm"
     150              : #include "icons/flag_minus.xpm"
     151              : #include "icons/windows_cascade.xpm"
     152              : #include "icons/windows_tile_vertically.xpm"
     153              : #include "icons/windows_tile_horizontally.xpm"
     154              : #include "icons/reload.xpm"
     155              : #include "icons/manip.xpm"
     156              : #include "icons/camera.xpm"
     157              : 
     158              : #include "icons/undo.xpm"
     159              : #include "icons/redo.xpm"
     160              : #include "icons/undolist.xpm"
     161              : #include "icons/lock.xpm"
     162              : #include "icons/unlock.xpm"
     163              : #include "icons/lock_selected.xpm"
     164              : #include "icons/unlock_selected.xpm"
     165              : #include "icons/add.xpm"
     166              : #include "icons/remove.xpm"
     167              : #include "icons/collapse.xpm"
     168              : #include "icons/uncollapse.xpm"
     169              : #include "icons/extend.xpm"
     170              : #include "icons/current.xpm"
     171              : #include "icons/search.xpm"
     172              : #include "icons/allow.xpm"
     173              : 
     174              : #include "icons/arrowup.xpm"
     175              : #include "icons/arrowdown.xpm"
     176              : #include "icons/arrowleft.xpm"
     177              : #include "icons/arrowright.xpm"
     178              : 
     179              : #include "icons/bigarrowleft.xpm"
     180              : #include "icons/bigarrowright.xpm"
     181              : 
     182              : #include "icons/frontelement.xpm"
     183              : #include "icons/simplifynetwork.xpm"
     184              : #include "icons/computepathmanager.xpm"
     185              : 
     186              : #include "icons/checkboxes/checkbox_applytoallphases.xpm"
     187              : #include "icons/checkboxes/checkbox_askformerge.xpm"
     188              : #include "icons/checkboxes/checkbox_autoselectjunctions.xpm"
     189              : #include "icons/checkboxes/checkbox_bubbles.xpm"
     190              : #include "icons/checkboxes/checkbox_chain.xpm"
     191              : #include "icons/checkboxes/checkbox_elevation.xpm"
     192              : #include "icons/checkboxes/checkbox_grid.xpm"
     193              : #include "icons/checkboxes/checkbox_drawjunctionshapes.xpm"
     194              : #include "icons/checkboxes/checkbox_hideconnections.xpm"
     195              : #include "icons/checkboxes/checkbox_showsubadditionals.xpm"
     196              : #include "icons/checkboxes/checkbox_showtazelements.xpm"
     197              : #include "icons/checkboxes/checkbox_hidenoninspecteddemandelements.xpm"
     198              : #include "icons/checkboxes/checkbox_hideshapes.xpm"
     199              : #include "icons/checkboxes/checkbox_lockcontainer.xpm"
     200              : #include "icons/checkboxes/checkbox_lockperson.xpm"
     201              : #include "icons/checkboxes/checkbox_selectededges.xpm"
     202              : #include "icons/checkboxes/checkbox_showadditionals.xpm"
     203              : #include "icons/checkboxes/checkbox_showconnections.xpm"
     204              : #include "icons/checkboxes/checkbox_showcontainerplans.xpm"
     205              : #include "icons/checkboxes/checkbox_showdemandelements.xpm"
     206              : #include "icons/checkboxes/checkbox_showoverlappedroutes.xpm"
     207              : #include "icons/checkboxes/checkbox_showpersonplans.xpm"
     208              : #include "icons/checkboxes/checkbox_showshapes.xpm"
     209              : #include "icons/checkboxes/checkbox_showtrips.xpm"
     210              : #include "icons/checkboxes/checkbox_spreadvehicle.xpm"
     211              : #include "icons/checkboxes/checkbox_tazdrawfill.xpm"
     212              : #include "icons/checkboxes/checkbox_tazreldrawing.xpm"
     213              : #include "icons/checkboxes/checkbox_tazrelonlyfrom.xpm"
     214              : #include "icons/checkboxes/checkbox_tazrelonlyto.xpm"
     215              : #include "icons/checkboxes/checkbox_twoway.xpm"
     216              : 
     217              : #include "icons/lanebike.xpm"
     218              : #include "icons/lanebus.xpm"
     219              : #include "icons/lanepedestrian.xpm"
     220              : #include "icons/lanegreenverge.xpm"
     221              : 
     222              : #include "icons/cut.xpm"
     223              : #include "icons/copy.xpm"
     224              : #include "icons/paste.xpm"
     225              : 
     226              : #include "icons/select.xpm"
     227              : #include "icons/unselect.xpm"
     228              : 
     229              : #include "icons/join.xpm"
     230              : #include "icons/disjoin.xpm"
     231              : 
     232              : #include "icons/ext.xpm"
     233              : #include "icons/tracker.xpm"
     234              : #include "icons/hall_of_fame.xpm"
     235              : #include "icons/clear_message_window.xpm"
     236              : 
     237              : #include "icons/viewdefault.xpm"
     238              : #include "icons/viewjupedsim.xpm"
     239              : 
     240              : #include "icons/supermodenetwork.xpm"
     241              : #include "icons/supermodedemand.xpm"
     242              : #include "icons/supermodedata.xpm"
     243              : 
     244              : #include "icons/modeadditional.xpm"
     245              : #include "icons/modeconnection.xpm"
     246              : #include "icons/modecreateedge.xpm"
     247              : #include "icons/modecrossing.xpm"
     248              : #include "icons/modetaz.xpm"
     249              : #include "icons/modedelete.xpm"
     250              : #include "icons/modeinspect.xpm"
     251              : #include "icons/modemove.xpm"
     252              : #include "icons/modeselect.xpm"
     253              : #include "icons/modetrafficlight.xpm"
     254              : #include "icons/modeshape.xpm"
     255              : #include "icons/modeprohibition.xpm"
     256              : #include "icons/modewire.xpm"
     257              : #include "icons/modedecal.xpm"
     258              : 
     259              : #include "icons/modecontainer.xpm"
     260              : #include "icons/modecontainerplan.xpm"
     261              : #include "icons/modeperson.xpm"
     262              : #include "icons/modepersonplan.xpm"
     263              : #include "icons/moderoute.xpm"
     264              : #include "icons/moderoutedistribution.xpm"
     265              : #include "icons/modestop.xpm"
     266              : #include "icons/modevehicle.xpm"
     267              : #include "icons/modetype.xpm"
     268              : #include "icons/modetypedistribution.xpm"
     269              : 
     270              : #include "icons/modeedgedata.xpm"
     271              : #include "icons/modeedgereldata.xpm"
     272              : #include "icons/modetazreldata.xpm"
     273              : #include "icons/modemeandata.xpm"
     274              : #include "icons/meandataedge.xpm"
     275              : #include "icons/meandatalane.xpm"
     276              : 
     277              : #include "icons/tlsphasedefault.xpm"
     278              : #include "icons/tlsphasecopy.xpm"
     279              : #include "icons/tlsphaseallred.xpm"
     280              : #include "icons/tlsphaseallyellow.xpm"
     281              : #include "icons/tlsphaseallgreen.xpm"
     282              : #include "icons/tlsphaseallgreenpriority.xpm"
     283              : 
     284              : #include "icons/computejunctions.xpm"
     285              : #include "icons/cleanjunctions.xpm"
     286              : #include "icons/joinjunctions.xpm"
     287              : #include "icons/computedemand.xpm"
     288              : #include "icons/cleanroutes.xpm"
     289              : #include "icons/joinroutes.xpm"
     290              : #include "icons/adjustpersonplans.xpm"
     291              : #include "icons/options.xpm"
     292              : 
     293              : #include "icons/junction.xpm"
     294              : #include "icons/edgetype.xpm"
     295              : #include "icons/lanetype.xpm"
     296              : #include "icons/edge.xpm"
     297              : #include "icons/lane.xpm"
     298              : #include "icons/connection.xpm"
     299              : #include "icons/prohibition.xpm"
     300              : #include "icons/crossing.xpm"
     301              : #include "icons/walkingarea.xpm"
     302              : 
     303              : #include "icons/busstop.xpm"
     304              : #include "icons/trainstop.xpm"
     305              : #include "icons/access.xpm"
     306              : #include "icons/chargingstation.xpm"
     307              : #include "icons/containerstop.xpm"
     308              : #include "icons/parkingarea.xpm"
     309              : #include "icons/parkingspace.xpm"
     310              : #include "icons/e1.xpm"
     311              : #include "icons/e1instant.xpm"
     312              : #include "icons/e2.xpm"
     313              : #include "icons/e3.xpm"
     314              : #include "icons/e3entry.xpm"
     315              : #include "icons/e3exit.xpm"
     316              : #include "icons/rerouter.xpm"
     317              : #include "icons/routeprobe.xpm"
     318              : #include "icons/vaporizer.xpm"
     319              : #include "icons/variablespeedsign.xpm"
     320              : #include "icons/calibrator.xpm"
     321              : #include "icons/rerouterinterval.xpm"
     322              : #include "icons/vssstep.xpm"
     323              : #include "icons/closingreroute.xpm"
     324              : #include "icons/closinglanereroute.xpm"
     325              : #include "icons/destprobreroute.xpm"
     326              : #include "icons/parkingzonereroute.xpm"
     327              : #include "icons/routeprobreroute.xpm"
     328              : 
     329              : #include "icons/tractionsubstation.xpm"
     330              : #include "icons/overheadwire.xpm"
     331              : #include "icons/overheadwire_clamp.xpm"
     332              : 
     333              : #include "icons/poly.xpm"
     334              : #include "icons/poi.xpm"
     335              : #include "icons/poilane.xpm"
     336              : #include "icons/poigeo.xpm"
     337              : 
     338              : #include "icons/poiicons/poiicon_pin.xpm"
     339              : #include "icons/poiicons/poiicon_hotel.xpm"
     340              : #include "icons/poiicons/poiicon_nature.xpm"
     341              : #include "icons/poiicons/poiicon_fuel.xpm"
     342              : #include "icons/poiicons/poiicon_charging_station.xpm"
     343              : 
     344              : #include "icons/jps.xpm"
     345              : #include "icons/jps_walkablearea.xpm"
     346              : #include "icons/jps_obstacle.xpm"
     347              : 
     348              : #include "icons/taz.xpm"
     349              : #include "icons/tazedge.xpm"
     350              : 
     351              : #include "icons/container.xpm"
     352              : #include "icons/containerflow.xpm"
     353              : #include "icons/flow.xpm"
     354              : #include "icons/flowjunctions.xpm"
     355              : #include "icons/flowtazs.xpm"
     356              : #include "icons/person.xpm"
     357              : #include "icons/personflow.xpm"
     358              : #include "icons/persontripbusstop.xpm"
     359              : #include "icons/persontripchargingstation.xpm"
     360              : #include "icons/persontripcontainerstop.xpm"
     361              : #include "icons/persontripedge.xpm"
     362              : #include "icons/persontripjunction.xpm"
     363              : #include "icons/persontripparkingarea.xpm"
     364              : #include "icons/persontriptaz.xpm"
     365              : #include "icons/persontriptrainstop.xpm"
     366              : #include "icons/ridebusstop.xpm"
     367              : #include "icons/ridechargingstation.xpm"
     368              : #include "icons/ridecontainerstop.xpm"
     369              : #include "icons/rideedge.xpm"
     370              : #include "icons/ridejunction.xpm"
     371              : #include "icons/rideparkingarea.xpm"
     372              : #include "icons/ridetaz.xpm"
     373              : #include "icons/ridetrainstop.xpm"
     374              : #include "icons/route.xpm"
     375              : #include "icons/routedistribution.xpm"
     376              : #include "icons/routeflow.xpm"
     377              : #include "icons/stopelement.xpm"
     378              : #include "icons/transhipbusstop.xpm"
     379              : #include "icons/transhipchargingstation.xpm"
     380              : #include "icons/transhipcontainerstop.xpm"
     381              : #include "icons/transhipedge.xpm"
     382              : #include "icons/transhipedges.xpm"
     383              : #include "icons/transhipjunction.xpm"
     384              : #include "icons/transhipparkingarea.xpm"
     385              : #include "icons/transhiptaz.xpm"
     386              : #include "icons/transhiptrainstop.xpm"
     387              : #include "icons/transportbusstop.xpm"
     388              : #include "icons/transportchargingstation.xpm"
     389              : #include "icons/transportcontainerstop.xpm"
     390              : #include "icons/transportedge.xpm"
     391              : #include "icons/transportjunction.xpm"
     392              : #include "icons/transportparkingarea.xpm"
     393              : #include "icons/transporttaz.xpm"
     394              : #include "icons/transporttrainstop.xpm"
     395              : #include "icons/trip.xpm"
     396              : #include "icons/tripjunctions.xpm"
     397              : #include "icons/triptazs.xpm"
     398              : #include "icons/vehicle.xpm"
     399              : #include "icons/vtype.xpm"
     400              : #include "icons/vtype_bike.xpm"
     401              : #include "icons/vtype_container.xpm"
     402              : #include "icons/vtype_default.xpm"
     403              : #include "icons/vtype_pedestrian.xpm"
     404              : #include "icons/vtype_rail.xpm"
     405              : #include "icons/vtype_taxi.xpm"
     406              : #include "icons/vtypedistribution.xpm"
     407              : #include "icons/walkbusstop.xpm"
     408              : #include "icons/walkchargingstation.xpm"
     409              : #include "icons/walkcontainerstop.xpm"
     410              : #include "icons/walkedge.xpm"
     411              : #include "icons/walkedges.xpm"
     412              : #include "icons/walkjunction.xpm"
     413              : #include "icons/walkparkingarea.xpm"
     414              : #include "icons/walkroute.xpm"
     415              : #include "icons/walktaz.xpm"
     416              : #include "icons/walktrainstop.xpm"
     417              : #include "icons/waypoint.xpm"
     418              : 
     419              : #include "icons/dataset.xpm"
     420              : #include "icons/datainterval.xpm"
     421              : #include "icons/edgedata.xpm"
     422              : #include "icons/edgereldata.xpm"
     423              : #include "icons/tazreldata.xpm"
     424              : 
     425              : #include "icons/vclasses/vclass_ignoring.xpm"
     426              : #include "icons/vclasses/vclass_private.xpm"
     427              : #include "icons/vclasses/vclass_emergency.xpm"
     428              : #include "icons/vclasses/vclass_authority.xpm"
     429              : #include "icons/vclasses/vclass_army.xpm"
     430              : #include "icons/vclasses/vclass_vip.xpm"
     431              : #include "icons/vclasses/vclass_passenger.xpm"
     432              : #include "icons/vclasses/vclass_hov.xpm"
     433              : #include "icons/vclasses/vclass_taxi.xpm"
     434              : #include "icons/vclasses/vclass_bus.xpm"
     435              : #include "icons/vclasses/vclass_coach.xpm"
     436              : #include "icons/vclasses/vclass_delivery.xpm"
     437              : #include "icons/vclasses/vclass_truck.xpm"
     438              : #include "icons/vclasses/vclass_trailer.xpm"
     439              : #include "icons/vclasses/vclass_tram.xpm"
     440              : #include "icons/vclasses/vclass_rail_urban.xpm"
     441              : #include "icons/vclasses/vclass_rail.xpm"
     442              : #include "icons/vclasses/vclass_rail_electric.xpm"
     443              : #include "icons/vclasses/vclass_rail_fast.xpm"
     444              : #include "icons/vclasses/vclass_motorcycle.xpm"
     445              : #include "icons/vclasses/vclass_moped.xpm"
     446              : #include "icons/vclasses/vclass_bicycle.xpm"
     447              : #include "icons/vclasses/vclass_pedestrian.xpm"
     448              : #include "icons/vclasses/vclass_evehicle.xpm"
     449              : #include "icons/vclasses/vclass_ship.xpm"
     450              : #include "icons/vclasses/vclass_container.xpm"
     451              : #include "icons/vclasses/vclass_cable_car.xpm"
     452              : #include "icons/vclasses/vclass_subway.xpm"
     453              : #include "icons/vclasses/vclass_aircraft.xpm"
     454              : #include "icons/vclasses/vclass_wheelchair.xpm"
     455              : #include "icons/vclasses/vclass_scooter.xpm"
     456              : #include "icons/vclasses/vclass_drone.xpm"
     457              : #include "icons/vclasses/vclass_custom1.xpm"
     458              : #include "icons/vclasses/vclass_custom2.xpm"
     459              : 
     460              : #include "icons/vclasses/vclass_small_ignoring.xpm"
     461              : #include "icons/vclasses/vclass_small_private.xpm"
     462              : #include "icons/vclasses/vclass_small_emergency.xpm"
     463              : #include "icons/vclasses/vclass_small_authority.xpm"
     464              : #include "icons/vclasses/vclass_small_army.xpm"
     465              : #include "icons/vclasses/vclass_small_vip.xpm"
     466              : #include "icons/vclasses/vclass_small_passenger.xpm"
     467              : #include "icons/vclasses/vclass_small_hov.xpm"
     468              : #include "icons/vclasses/vclass_small_taxi.xpm"
     469              : #include "icons/vclasses/vclass_small_bus.xpm"
     470              : #include "icons/vclasses/vclass_small_coach.xpm"
     471              : #include "icons/vclasses/vclass_small_delivery.xpm"
     472              : #include "icons/vclasses/vclass_small_truck.xpm"
     473              : #include "icons/vclasses/vclass_small_trailer.xpm"
     474              : #include "icons/vclasses/vclass_small_tram.xpm"
     475              : #include "icons/vclasses/vclass_small_rail_urban.xpm"
     476              : #include "icons/vclasses/vclass_small_rail.xpm"
     477              : #include "icons/vclasses/vclass_small_rail_electric.xpm"
     478              : #include "icons/vclasses/vclass_small_rail_fast.xpm"
     479              : #include "icons/vclasses/vclass_small_motorcycle.xpm"
     480              : #include "icons/vclasses/vclass_small_moped.xpm"
     481              : #include "icons/vclasses/vclass_small_bicycle.xpm"
     482              : #include "icons/vclasses/vclass_small_pedestrian.xpm"
     483              : #include "icons/vclasses/vclass_small_evehicle.xpm"
     484              : #include "icons/vclasses/vclass_small_ship.xpm"
     485              : #include "icons/vclasses/vclass_small_container.xpm"
     486              : #include "icons/vclasses/vclass_small_cable_car.xpm"
     487              : #include "icons/vclasses/vclass_small_subway.xpm"
     488              : #include "icons/vclasses/vclass_small_aircraft.xpm"
     489              : #include "icons/vclasses/vclass_small_wheelchair.xpm"
     490              : #include "icons/vclasses/vclass_small_scooter.xpm"
     491              : #include "icons/vclasses/vclass_small_drone.xpm"
     492              : #include "icons/vclasses/vclass_small_custom1.xpm"
     493              : #include "icons/vclasses/vclass_small_custom2.xpm"
     494              : 
     495              : #include "icons/vshapes/vshape_pedestrian.xpm"
     496              : #include "icons/vshapes/vshape_bicycle.xpm"
     497              : #include "icons/vshapes/vshape_moped.xpm"
     498              : #include "icons/vshapes/vshape_motorcycle.xpm"
     499              : #include "icons/vshapes/vshape_passenger.xpm"
     500              : #include "icons/vshapes/vshape_passenger_sedan.xpm"
     501              : #include "icons/vshapes/vshape_passenger_hatchback.xpm"
     502              : #include "icons/vshapes/vshape_passenger_wagon.xpm"
     503              : #include "icons/vshapes/vshape_passenger_van.xpm"
     504              : #include "icons/vshapes/vshape_taxi.xpm"
     505              : #include "icons/vshapes/vshape_delivery.xpm"
     506              : #include "icons/vshapes/vshape_truck.xpm"
     507              : #include "icons/vshapes/vshape_truck_semitrailer.xpm"
     508              : #include "icons/vshapes/vshape_truck_1trailer.xpm"
     509              : #include "icons/vshapes/vshape_bus.xpm"
     510              : #include "icons/vshapes/vshape_bus_coach.xpm"
     511              : #include "icons/vshapes/vshape_bus_flexible.xpm"
     512              : #include "icons/vshapes/vshape_bus_trolley.xpm"
     513              : #include "icons/vshapes/vshape_rail.xpm"
     514              : #include "icons/vshapes/vshape_rail_car.xpm"
     515              : #include "icons/vshapes/vshape_rail_cargo.xpm"
     516              : #include "icons/vshapes/vshape_e_vehicle.xpm"
     517              : #include "icons/vshapes/vshape_ant.xpm"
     518              : #include "icons/vshapes/vshape_ship.xpm"
     519              : #include "icons/vshapes/vshape_emergency.xpm"
     520              : #include "icons/vshapes/vshape_firebrigade.xpm"
     521              : #include "icons/vshapes/vshape_police.xpm"
     522              : #include "icons/vshapes/vshape_rickshaw.xpm"
     523              : #include "icons/vshapes/vshape_scooter.xpm"
     524              : #include "icons/vshapes/vshape_aircraft.xpm"
     525              : #include "icons/vshapes/vshape_unknown.xpm"
     526              : 
     527              : #include "icons/accept.xpm"
     528              : #include "icons/cancel.xpm"
     529              : #include "icons/correct.xpm"
     530              : #include "icons/incorrect.xpm"
     531              : #include "icons/reset.xpm"
     532              : #include "icons/warning.xpm"
     533              : #include "icons/danger.xpm"
     534              : #include "icons/sum.xpm"
     535              : #include "icons/back.xpm"
     536              : 
     537              : #include "icons/grid.xpm"
     538              : #include "icons/grid1.xpm"
     539              : #include "icons/grid2.xpm"
     540              : #include "icons/grid3.xpm"
     541              : 
     542              : #include "icons/geohack.xpm"
     543              : #include "icons/googlemaps.xpm"
     544              : #include "icons/osm.xpm"
     545              : 
     546              : #include "icons/languages/de.xpm"
     547              : #include "icons/languages/es.xpm"
     548              : #include "icons/languages/fr.xpm"
     549              : #include "icons/languages/it.xpm"
     550              : #include "icons/languages/en.xpm"
     551              : #include "icons/languages/hu.xpm"
     552              : #include "icons/languages/tr.xpm"
     553              : #include "icons/languages/zh.xpm"
     554              : #include "icons/languages/zht.xpm"
     555              : 
     556              : // ===========================================================================
     557              : // static member variable definitions
     558              : // ===========================================================================
     559              : 
     560              : GUIIconSubSys* GUIIconSubSys::myInstance = nullptr;
     561              : 
     562              : // ===========================================================================
     563              : // member definitions
     564              : // ===========================================================================
     565              : 
     566         7496 : GUIIconSubSys::GUIIconSubSys(FXApp* a) {
     567              :     // build icons
     568         7496 :     myIcons[GUIIcon::SUMO] = new FXXPMIcon(a, sumo_icon64_xpm);
     569         7496 :     myIcons[GUIIcon::SUMO_MINI] = new FXXPMIcon(a, sumo_icon16_xpm);
     570         7496 :     myIcons[GUIIcon::SUMO_LOGO] = new FXXPMIcon(a, sumo_logo_xpm);
     571              : 
     572         7496 :     myIcons[GUIIcon::NETGENERATE] = new FXXPMIcon(a, netgenerate_xpm);
     573         7496 :     myIcons[GUIIcon::NETEDIT] = new FXXPMIcon(a, netedit_icon64_xpm);
     574         7496 :     myIcons[GUIIcon::NETEDIT_MINI] = new FXXPMIcon(a, netedit_icon16_xpm);
     575              : 
     576         7496 :     myIcons[GUIIcon::NETGENERATE_GRID] = new FXXPMIcon(a, netgenerate_grid_xpm);
     577         7496 :     myIcons[GUIIcon::NETGENERATE_SPIDER] = new FXXPMIcon(a, netgenerate_spider_xpm);
     578         7496 :     myIcons[GUIIcon::NETGENERATE_RANDOMGRID] = new FXXPMIcon(a, netgenerate_randomgrid_xpm);
     579         7496 :     myIcons[GUIIcon::NETGENERATE_RANDOM] = new FXXPMIcon(a, netgenerate_random_xpm);
     580              : 
     581         7496 :     myIcons[GUIIcon::EMPTY] = new FXXPMIcon(a, empty_xpm);
     582         7496 :     myIcons[GUIIcon::NEW_NET] = new FXXPMIcon(a, newnet_xpm);
     583         7496 :     myIcons[GUIIcon::RELOAD] = new FXXPMIcon(a, reload_xpm);
     584         7496 :     myIcons[GUIIcon::CLOSE] = new FXXPMIcon(a, empty_xpm);  /** temporal **/
     585         7496 :     myIcons[GUIIcon::HELP] = new FXXPMIcon(a, empty_xpm);   /** temporal **/
     586         7496 :     myIcons[GUIIcon::START] = new FXXPMIcon(a, play_xpm);
     587         7496 :     myIcons[GUIIcon::STOP] = new FXXPMIcon(a, stop_xpm);
     588         7496 :     myIcons[GUIIcon::STEP] = new FXXPMIcon(a, step_xpm);
     589         7496 :     myIcons[GUIIcon::MICROVIEW] = new FXXPMIcon(a, new_window_xpm);
     590         7496 :     myIcons[GUIIcon::OSGVIEW] = new FXXPMIcon(a, new_window_3d_xpm);
     591         7496 :     myIcons[GUIIcon::RECENTERVIEW] = new FXXPMIcon(a, recenter_view_xpm);
     592         7496 :     myIcons[GUIIcon::ALLOWROTATION] = new FXXPMIcon(a, allow_rotation_xpm);
     593         7496 :     myIcons[GUIIcon::EDITVIEWPORT] = new FXXPMIcon(a, magnify_xpm);
     594         7496 :     myIcons[GUIIcon::ZOOMSTYLE] = new FXXPMIcon(a, zoomstyle_xpm);
     595         7496 :     myIcons[GUIIcon::FULL_SCREEN] = new FXXPMIcon(a, full_screen_xpm);
     596         7496 :     myIcons[GUIIcon::HALL_OF_FAME] = new FXXPMIcon(a, hall_of_fame_xpm);   /** temporal? **/
     597         7496 :     myIcons[GUIIcon::CLEARMESSAGEWINDOW] = new FXXPMIcon(a, clear_message_window_xpm);
     598              : 
     599         7496 :     myIcons[GUIIcon::VIEWDEFAULT] = new FXXPMIcon(a, viewdefault_xpm);
     600         7496 :     myIcons[GUIIcon::VIEWJUPEDSIM] = new FXXPMIcon(a, viewjupedsim_xpm);
     601              : 
     602         7496 :     myIcons[GUIIcon::OPEN] = new FXXPMIcon(a, open_xpm);
     603         7496 :     myIcons[GUIIcon::OPEN_NETEDITCONFIG] = new FXXPMIcon(a, open_neteditconfig_xpm);
     604         7496 :     myIcons[GUIIcon::OPEN_SUMOCONFIG] = new FXXPMIcon(a, open_sumoconfig_xpm);
     605         7496 :     myIcons[GUIIcon::OPEN_NET] = new FXXPMIcon(a, open_net_xpm);
     606         7496 :     myIcons[GUIIcon::OPEN_SHAPES] = new FXXPMIcon(a, open_shapes_xpm);
     607         7496 :     myIcons[GUIIcon::OPEN_ADDITIONALS] = new FXXPMIcon(a, open_additionals_xpm);
     608         7496 :     myIcons[GUIIcon::OPEN_MEANDATAS] = new FXXPMIcon(a, open_meandatas_xpm);
     609         7496 :     myIcons[GUIIcon::OPEN_TLSPROGRAMS] = new FXXPMIcon(a, open_tls_xpm);
     610         7496 :     myIcons[GUIIcon::OPEN_BMPDIALOG] = new FXXPMIcon(a, open_bmpdialog_xpm);
     611              : 
     612         7496 :     myIcons[GUIIcon::SAVE] = new FXXPMIcon(a, save_xpm);
     613         7496 :     myIcons[GUIIcon::SAVE_SUMOCONFIG] = new FXXPMIcon(a, save_sumoconfig_xpm);
     614         7496 :     myIcons[GUIIcon::SAVE_NETEDITCONFIG] = new FXXPMIcon(a, save_neteditconfig_xpm);
     615         7496 :     myIcons[GUIIcon::SAVE_MULTIPLE] = new FXXPMIcon(a, save_multiple_xpm);
     616         7496 :     myIcons[GUIIcon::SAVE_NETWORKELEMENTS] = new FXXPMIcon(a, save_networkelements_xpm);
     617         7496 :     myIcons[GUIIcon::SAVE_ADDITIONALELEMENTS] = new FXXPMIcon(a, save_additionalelements_xpm);
     618         7496 :     myIcons[GUIIcon::SAVE_JUPEDSIMELEMENTS] = new FXXPMIcon(a, save_jupedsimelements_xpm);
     619         7496 :     myIcons[GUIIcon::SAVE_DEMANDELEMENTS] = new FXXPMIcon(a, save_demandelements_xpm);
     620         7496 :     myIcons[GUIIcon::SAVE_DATAELEMENTS] = new FXXPMIcon(a, save_dataelements_xpm);
     621         7496 :     myIcons[GUIIcon::SAVE_MEANDATAELEMENTS] = new FXXPMIcon(a, save_meandataelements_xpm);
     622         7496 :     myIcons[GUIIcon::SAVE_DATABASE] = new FXXPMIcon(a, save_database_xpm);
     623              : 
     624         7496 :     myIcons[GUIIcon::CUT] = new FXXPMIcon(a, cut_xpm);
     625         7496 :     myIcons[GUIIcon::COPY] = new FXXPMIcon(a, copy_xpm);
     626         7496 :     myIcons[GUIIcon::PASTE] = new FXXPMIcon(a, paste_xpm);
     627              : 
     628         7496 :     myIcons[GUIIcon::SELECT] = new FXXPMIcon(a, select_xpm);
     629         7496 :     myIcons[GUIIcon::UNSELECT] = new FXXPMIcon(a, unselect_xpm);
     630              : 
     631         7496 :     myIcons[GUIIcon::JOIN] = new FXXPMIcon(a, join_xpm);
     632         7496 :     myIcons[GUIIcon::DISJOIN] = new FXXPMIcon(a, disjoin_xpm);
     633              : 
     634         7496 :     myIcons[GUIIcon::APP_TRACKER] = new FXXPMIcon(a, app_tracker_xpm);
     635         7496 :     myIcons[GUIIcon::APP_FINDER] = new FXXPMIcon(a, app_finder_xpm);
     636         7496 :     myIcons[GUIIcon::APP_BREAKPOINTS] = new FXXPMIcon(a, app_breakpoints_xpm);
     637         7496 :     myIcons[GUIIcon::APP_TLSTRACKER] = new FXXPMIcon(a, app_tlstracker_xpm);
     638         7496 :     myIcons[GUIIcon::APP_TABLE] = new FXXPMIcon(a, app_table_xpm);
     639         7496 :     myIcons[GUIIcon::APP_SELECTOR] = new FXXPMIcon(a, app_selector_xpm);
     640              : 
     641         7496 :     myIcons[GUIIcon::LOCATE] = new FXXPMIcon(a, locate_xpm);
     642         7496 :     myIcons[GUIIcon::LOCATEJUNCTION] = new FXXPMIcon(a, locate_junction_xpm);
     643         7496 :     myIcons[GUIIcon::LOCATEEDGE] = new FXXPMIcon(a, locate_edge_xpm);
     644         7496 :     myIcons[GUIIcon::LOCATEWALKINGAREA] = new FXXPMIcon(a, locate_walkingarea_xpm);
     645         7496 :     myIcons[GUIIcon::LOCATEVEHICLE] = new FXXPMIcon(a, locate_vehicle_xpm);
     646         7496 :     myIcons[GUIIcon::LOCATEROUTE] = new FXXPMIcon(a, locate_route_xpm);
     647         7496 :     myIcons[GUIIcon::LOCATESTOP] = new FXXPMIcon(a, locate_stop_xpm);
     648         7496 :     myIcons[GUIIcon::LOCATEPERSON] = new FXXPMIcon(a, locate_person_xpm);
     649         7496 :     myIcons[GUIIcon::LOCATECONTAINER] = new FXXPMIcon(a, locate_container_xpm);
     650         7496 :     myIcons[GUIIcon::LOCATETLS] = new FXXPMIcon(a, locate_tls_xpm);
     651         7496 :     myIcons[GUIIcon::LOCATEADD] = new FXXPMIcon(a, locate_add_xpm);
     652         7496 :     myIcons[GUIIcon::LOCATEPOI] = new FXXPMIcon(a, locate_poi_xpm);
     653         7496 :     myIcons[GUIIcon::LOCATEPOLY] = new FXXPMIcon(a, locate_poly_xpm);
     654              : 
     655         7496 :     myIcons[GUIIcon::TOOL_PYTHON] = new FXXPMIcon(a, tool_python_xpm);
     656         7496 :     myIcons[GUIIcon::TOOL_EMISSIONS] = new FXXPMIcon(a, tool_emissions_xpm);
     657         7496 :     myIcons[GUIIcon::TOOL_CITYBRAIN] = new FXXPMIcon(a, tool_citybrain_xpm);
     658         7496 :     myIcons[GUIIcon::TOOL_GTFS] = new FXXPMIcon(a, tool_gtfs_xpm);
     659         7496 :     myIcons[GUIIcon::TOOL_VISSIM] = new FXXPMIcon(a, tool_vissim_xpm);
     660         7496 :     myIcons[GUIIcon::TOOL_VISUM] = new FXXPMIcon(a, tool_visum_xpm);
     661         7496 :     myIcons[GUIIcon::TOOL_IMPORT] = new FXXPMIcon(a, tool_import_xpm);
     662         7496 :     myIcons[GUIIcon::TOOL_OUTPUT] = new FXXPMIcon(a, tool_output_xpm);
     663         7496 :     myIcons[GUIIcon::TOOL_TURNDEFS] = new FXXPMIcon(a, tool_turndefs_xpm);
     664         7496 :     myIcons[GUIIcon::TOOL_XML] = new FXXPMIcon(a, tool_xml_xpm);
     665              : 
     666         7496 :     myIcons[GUIIcon::GREENCONTAINER] = new FXXPMIcon(a, green_container_xpm);
     667         7496 :     myIcons[GUIIcon::GREENEDGE] = new FXXPMIcon(a, green_edge_xpm);
     668         7496 :     myIcons[GUIIcon::GREENVEHICLE] = new FXXPMIcon(a, green_vehicle_xpm);
     669         7496 :     myIcons[GUIIcon::GREENPERSON] = new FXXPMIcon(a, green_person_xpm);
     670         7496 :     myIcons[GUIIcon::YELLOWCONTAINER] = new FXXPMIcon(a, yellow_container_xpm);
     671         7496 :     myIcons[GUIIcon::YELLOWEDGE] = new FXXPMIcon(a, yellow_edge_xpm);
     672         7496 :     myIcons[GUIIcon::YELLOWVEHICLE] = new FXXPMIcon(a, yellow_vehicle_xpm);
     673         7496 :     myIcons[GUIIcon::YELLOWPERSON] = new FXXPMIcon(a, yellow_person_xpm);
     674              : 
     675         7496 :     myIcons[GUIIcon::COLORWHEEL] = new FXXPMIcon(a, colorwheel_xpm);
     676         7496 :     myIcons[GUIIcon::REMOVEDB] = new FXXPMIcon(a, removedb_xpm);
     677         7496 :     myIcons[GUIIcon::SHOWTOOLTIPS_VIEW] = new FXXPMIcon(a, show_tooltips_view_xpm);
     678         7496 :     myIcons[GUIIcon::SHOWTOOLTIPS_MENU] = new FXXPMIcon(a, show_tooltips_menu_xpm);
     679         7496 :     myIcons[GUIIcon::YES] = new FXXPMIcon(a, yes_xpm);
     680         7496 :     myIcons[GUIIcon::NO] = new FXXPMIcon(a, no_xpm);
     681         7496 :     myIcons[GUIIcon::FLAG] = new FXXPMIcon(a, flag_xpm);
     682         7496 :     myIcons[GUIIcon::FLAG_PLUS] = new FXXPMIcon(a, flag_plus_xpm);
     683         7496 :     myIcons[GUIIcon::FLAG_MINUS] = new FXXPMIcon(a, flag_minus_xpm);
     684              :     // window arrangements
     685         7496 :     myIcons[GUIIcon::WINDOWS_CASCADE] = new FXXPMIcon(a, windows_cascade_xpm);
     686         7496 :     myIcons[GUIIcon::WINDOWS_TILE_VERT] = new FXXPMIcon(a, windows_tile_vertically_xpm);
     687         7496 :     myIcons[GUIIcon::WINDOWS_TILE_HORI] = new FXXPMIcon(a, windows_tile_horizontally_xpm);
     688              :     // manipulate
     689         7496 :     myIcons[GUIIcon::MANIP] = new FXXPMIcon(a, manip_xpm);
     690         7496 :     myIcons[GUIIcon::CAMERA] = new FXXPMIcon(a, camera_xpm);
     691         7496 :     myIcons[GUIIcon::EXTRACT] = new FXXPMIcon(a, extract_streets_xpm);
     692         7496 :     myIcons[GUIIcon::DILATE] = new FXXPMIcon(a, dilate_xpm);
     693         7496 :     myIcons[GUIIcon::ERODE] = new FXXPMIcon(a, erode_xpm);
     694         7496 :     myIcons[GUIIcon::OPENING] = new FXXPMIcon(a, opening_xpm);
     695         7496 :     myIcons[GUIIcon::CLOSING] = new FXXPMIcon(a, closing_xpm);
     696         7496 :     myIcons[GUIIcon::ERASE_STAINS] = new FXXPMIcon(a, erase_stains_xpm);
     697         7496 :     myIcons[GUIIcon::CLOSE_GAPS] = new FXXPMIcon(a, close_gaps_xpm);
     698         7496 :     myIcons[GUIIcon::SKELETONIZE] = new FXXPMIcon(a, skeletonize_xpm);
     699         7496 :     myIcons[GUIIcon::RARIFY] = new FXXPMIcon(a, rarify_xpm);
     700         7496 :     myIcons[GUIIcon::CREATE_GRAPH] = new FXXPMIcon(a, create_graph_xpm);
     701         7496 :     myIcons[GUIIcon::EYEDROP] = new FXXPMIcon(a, eyedrop_xpm);
     702         7496 :     myIcons[GUIIcon::PAINTBRUSH1X] = new FXXPMIcon(a, paintbrush1x_xpm);
     703         7496 :     myIcons[GUIIcon::PAINTBRUSH2X] = new FXXPMIcon(a, paintbrush2x_xpm);
     704         7496 :     myIcons[GUIIcon::PAINTBRUSH3X] = new FXXPMIcon(a, paintbrush3x_xpm);
     705         7496 :     myIcons[GUIIcon::PAINTBRUSH4X] = new FXXPMIcon(a, paintbrush4x_xpm);
     706         7496 :     myIcons[GUIIcon::PAINTBRUSH5X] = new FXXPMIcon(a, paintbrush5x_xpm);
     707         7496 :     myIcons[GUIIcon::RUBBER1X] = new FXXPMIcon(a, rubber1x_xpm);
     708         7496 :     myIcons[GUIIcon::RUBBER2X] = new FXXPMIcon(a, rubber2x_xpm);
     709         7496 :     myIcons[GUIIcon::RUBBER3X] = new FXXPMIcon(a, rubber3x_xpm);
     710         7496 :     myIcons[GUIIcon::RUBBER4X] = new FXXPMIcon(a, rubber4x_xpm);
     711         7496 :     myIcons[GUIIcon::RUBBER5X] = new FXXPMIcon(a, rubber5x_xpm);
     712         7496 :     myIcons[GUIIcon::EDITGRAPH] = new FXXPMIcon(a, edit_graph_xpm);
     713              : 
     714         7496 :     myIcons[GUIIcon::UNDO] = new FXXPMIcon(a, undo_xpm);
     715         7496 :     myIcons[GUIIcon::REDO] = new FXXPMIcon(a, redo_xpm);
     716         7496 :     myIcons[GUIIcon::UNDOLIST] = new FXXPMIcon(a, undolist_xpm);
     717         7496 :     myIcons[GUIIcon::LOCK] = new FXXPMIcon(a, lock_xpm);
     718         7496 :     myIcons[GUIIcon::UNLOCK] = new FXXPMIcon(a, unlock_xpm);
     719         7496 :     myIcons[GUIIcon::LOCK_SELECTED] = new FXXPMIcon(a, lockselected_xpm);
     720         7496 :     myIcons[GUIIcon::UNLOCK_SELECTED] = new FXXPMIcon(a, unlockselected_xpm);
     721         7496 :     myIcons[GUIIcon::ADD] = new FXXPMIcon(a, add_xpm);
     722         7496 :     myIcons[GUIIcon::REMOVE] = new FXXPMIcon(a, remove_xpm);
     723         7496 :     myIcons[GUIIcon::BIGARROWLEFT] = new FXXPMIcon(a, bigarrowleft_xpm);
     724         7496 :     myIcons[GUIIcon::BIGARROWRIGHT] = new FXXPMIcon(a, bigarrowright_xpm);
     725         7496 :     myIcons[GUIIcon::FRONTELEMENT] = new FXXPMIcon(a, frontelement_xpm);
     726         7496 :     myIcons[GUIIcon::SIMPLIFYNETWORK] = new FXXPMIcon(a, simplifynetwork_xpm);
     727         7496 :     myIcons[GUIIcon::COMPUTEPATHMANAGER] = new FXXPMIcon(a, computepathmanager_xpm);
     728         7496 :     myIcons[GUIIcon::COLLAPSE] = new FXXPMIcon(a, collapse_xpm);
     729         7496 :     myIcons[GUIIcon::UNCOLLAPSE] = new FXXPMIcon(a, uncollapse_xpm);
     730         7496 :     myIcons[GUIIcon::EXTEND] = new FXXPMIcon(a, extend_xpm);
     731         7496 :     myIcons[GUIIcon::CURRENT] = new FXXPMIcon(a, current_xpm);
     732         7496 :     myIcons[GUIIcon::SEARCH] = new FXXPMIcon(a, search_xpm);
     733         7496 :     myIcons[GUIIcon::ALLOW] = new FXXPMIcon(a, allow_xpm);
     734              : 
     735         7496 :     myIcons[GUIIcon::COMMONMODE_CHECKBOX_TOGGLEGRID] = new FXXPMIcon(a, checkbox_grid_xpm);
     736         7496 :     myIcons[GUIIcon::COMMONMODE_CHECKBOX_TOGGLEDRAWJUNCTIONSHAPE] = new FXXPMIcon(a, checkbox_drawjunctionshapes_xpm);
     737         7496 :     myIcons[GUIIcon::COMMONMODE_CHECKBOX_SPREADVEHICLE] = new FXXPMIcon(a, checkbox_spreadvehicle_xpm);
     738         7496 :     myIcons[GUIIcon::COMMONMODE_CHECKBOX_SHOWDEMANDELEMENTS] = new FXXPMIcon(a, checkbox_showdemandelements_xpm);
     739              : 
     740         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_SELECTEDGES] = new FXXPMIcon(a, checkbox_selectededges_xpm);
     741         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_SHOWCONNECTIONS] = new FXXPMIcon(a, checkbox_showconnections_xpm);
     742         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_AUTOSELECTJUNCTIONS] = new FXXPMIcon(a, checkbox_autoselectjunctions_xpm);
     743         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_ASKFORMERGE] = new FXXPMIcon(a, checkbox_askformerge_xpm);
     744         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_BUBBLES] = new FXXPMIcon(a, checkbox_bubbles_xpm);
     745         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_ELEVATION] = new FXXPMIcon(a, checkbox_elevation_xpm);
     746         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_CHAIN] = new FXXPMIcon(a, checkbox_chain_xpm);
     747         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_TWOWAY] = new FXXPMIcon(a, checkbox_twoway_xpm);
     748         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_HIDECONNECTIONS] = new FXXPMIcon(a, checkbox_hideconnections_xpm);
     749         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_SHOWSUBADDITIONALS] = new FXXPMIcon(a, checkbox_showsubadditionals_xpm);
     750         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_SHOWTAZELEMENTS] = new FXXPMIcon(a, checkbox_showtazelements_xpm);
     751         7496 :     myIcons[GUIIcon::NETWORKMODE_CHECKBOX_APPLYTOALLPHASES] = new FXXPMIcon(a, checkbox_applytoallphases_xpm);
     752              : 
     753         7496 :     myIcons[GUIIcon::DEMANDMODE_CHECKBOX_HIDESHAPES] = new FXXPMIcon(a, checkbox_hideshapes_xpm);
     754         7496 :     myIcons[GUIIcon::DEMANDMODE_CHECKBOX_SHOWTRIPS] = new FXXPMIcon(a, checkbox_showtrips_xpm);
     755         7496 :     myIcons[GUIIcon::DEMANDMODE_CHECKBOX_HIDENONINSPECTEDDEMANDELEMENTS] = new FXXPMIcon(a, checkbox_hidenoninspecteddemandelements_xpm);
     756         7496 :     myIcons[GUIIcon::DEMANDMODE_CHECKBOX_SHOWPERSONPLANS] = new FXXPMIcon(a, checkbox_showpersonplans_xpm);
     757         7496 :     myIcons[GUIIcon::DEMANDMODE_CHECKBOX_LOCKPERSON] = new FXXPMIcon(a, checkbox_lockperson_xpm);
     758         7496 :     myIcons[GUIIcon::DEMANDMODE_CHECKBOX_SHOWCONTAINERPLANS] = new FXXPMIcon(a, checkbox_showcontainerplans_xpm);
     759         7496 :     myIcons[GUIIcon::DEMANDMODE_CHECKBOX_LOCKCONTAINER] = new FXXPMIcon(a, checkbox_lockcontainer_xpm);
     760         7496 :     myIcons[GUIIcon::DEMANDMODE_CHECKBOX_SHOWOVERLAPPEDROUTES] = new FXXPMIcon(a, checkbox_showoverlappedroutes_xpm);
     761              : 
     762         7496 :     myIcons[GUIIcon::DATAMODE_CHECKBOX_SHOWADDITIONALS] = new FXXPMIcon(a, checkbox_showadditionals_xpm);
     763         7496 :     myIcons[GUIIcon::DATAMODE_CHECKBOX_SHOWSHAPES] = new FXXPMIcon(a, checkbox_showshapes_xpm);
     764         7496 :     myIcons[GUIIcon::DATAMODE_CHECKBOX_TAZRELDRAWING] = new FXXPMIcon(a, checkbox_tazreldrawing_xpm);
     765         7496 :     myIcons[GUIIcon::DATAMODE_CHECKBOX_TAZDRAWFILL] = new FXXPMIcon(a, checkbox_tazdrawfill_xpm);
     766         7496 :     myIcons[GUIIcon::DATAMODE_CHECKBOX_TAZRELONLYFROM] = new FXXPMIcon(a, checkbox_tazrelonlyfrom_xpm);
     767         7496 :     myIcons[GUIIcon::DATAMODE_CHECKBOX_TAZRELONLYTO] = new FXXPMIcon(a, checkbox_tazrelonlyto_xpm);
     768              : 
     769         7496 :     myIcons[GUIIcon::ARROW_UP] = new FXXPMIcon(a, arrowup_xpm);
     770         7496 :     myIcons[GUIIcon::ARROW_DOWN] = new FXXPMIcon(a, arrowdown_xpm);
     771         7496 :     myIcons[GUIIcon::ARROW_LEFT] = new FXXPMIcon(a, arrowleft_xpm);
     772         7496 :     myIcons[GUIIcon::ARROW_RIGHT] = new FXXPMIcon(a, arrowright_xpm);
     773              : 
     774         7496 :     myIcons[GUIIcon::LANE_PEDESTRIAN] = new FXXPMIcon(a, lanepedestrian);
     775         7496 :     myIcons[GUIIcon::LANE_BUS] = new FXXPMIcon(a, lanebus);
     776         7496 :     myIcons[GUIIcon::LANE_BIKE] = new FXXPMIcon(a, lanebike);
     777         7496 :     myIcons[GUIIcon::LANEGREENVERGE] = new FXXPMIcon(a, lanegreenverge);
     778              : 
     779         7496 :     myIcons[GUIIcon::EXT] = new FXXPMIcon(a, ext_xpm);
     780         7496 :     myIcons[GUIIcon::CUT_SWELL] = new FXXPMIcon(a, cut_xpm);
     781         7496 :     myIcons[GUIIcon::TRACKER] = new FXXPMIcon(a, tracker_xpm);
     782              : 
     783         7496 :     myIcons[GUIIcon::SUPERMODENETWORK] = new FXXPMIcon(a, supermodenetwork_xpm);
     784         7496 :     myIcons[GUIIcon::SUPERMODEDEMAND] = new FXXPMIcon(a, supermodedemand_xpm);
     785         7496 :     myIcons[GUIIcon::SUPERMODEDATA] = new FXXPMIcon(a, supermodedata_xpm);
     786              : 
     787         7496 :     myIcons[GUIIcon::MODEADDITIONAL] = new FXXPMIcon(a, modeadditional_xpm);
     788         7496 :     myIcons[GUIIcon::MODECONNECTION] = new FXXPMIcon(a, modeconnection_xpm);
     789         7496 :     myIcons[GUIIcon::MODECREATEEDGE] = new FXXPMIcon(a, modecreateedge_xpm);
     790         7496 :     myIcons[GUIIcon::MODECROSSING] = new FXXPMIcon(a, modecrossing_xpm);
     791         7496 :     myIcons[GUIIcon::MODETAZ] = new FXXPMIcon(a, modetaz_xpm);
     792         7496 :     myIcons[GUIIcon::MODEDELETE] = new FXXPMIcon(a, modedelete_xpm);
     793         7496 :     myIcons[GUIIcon::MODEINSPECT] = new FXXPMIcon(a, modeinspect_xpm);
     794         7496 :     myIcons[GUIIcon::MODEMOVE] = new FXXPMIcon(a, modemove_xpm);
     795         7496 :     myIcons[GUIIcon::MODESELECT] = new FXXPMIcon(a, modeselect_xpm);
     796         7496 :     myIcons[GUIIcon::MODETLS] = new FXXPMIcon(a, modetrafficlight_xpm);
     797         7496 :     myIcons[GUIIcon::MODESHAPE] = new FXXPMIcon(a, modeshape_xpm);
     798         7496 :     myIcons[GUIIcon::MODEPROHIBITION] = new FXXPMIcon(a, modeprohibition_xpm);
     799         7496 :     myIcons[GUIIcon::MODEWIRE] = new FXXPMIcon(a, modewire_xpm);
     800         7496 :     myIcons[GUIIcon::MODEDECAL] = new FXXPMIcon(a, modedecal_xpm);
     801              : 
     802         7496 :     myIcons[GUIIcon::MODEROUTE] = new FXXPMIcon(a, moderoute_xpm);
     803         7496 :     myIcons[GUIIcon::MODEROUTEDISTRIBUTION] = new FXXPMIcon(a, moderoutedistribution_xpm);
     804         7496 :     myIcons[GUIIcon::MODEVEHICLE] = new FXXPMIcon(a, modevehicle_xpm);
     805         7496 :     myIcons[GUIIcon::MODETYPE] = new FXXPMIcon(a, modetype_xpm);
     806         7496 :     myIcons[GUIIcon::MODETYPEDISTRIBUTION] = new FXXPMIcon(a, modetypedistribution_xpm);
     807         7496 :     myIcons[GUIIcon::MODESTOP] = new FXXPMIcon(a, modestop_xpm);
     808         7496 :     myIcons[GUIIcon::MODEPERSON] = new FXXPMIcon(a, modeperson_xpm);
     809         7496 :     myIcons[GUIIcon::MODEPERSONPLAN] = new FXXPMIcon(a, modepersonplan_xpm);
     810         7496 :     myIcons[GUIIcon::MODECONTAINER] = new FXXPMIcon(a, modecontainer_xpm);
     811         7496 :     myIcons[GUIIcon::MODECONTAINERPLAN] = new FXXPMIcon(a, modecontainerplan_xpm);
     812              : 
     813         7496 :     myIcons[GUIIcon::MODEEDGEDATA] = new FXXPMIcon(a, modeedgedata_xpm);
     814         7496 :     myIcons[GUIIcon::MODEEDGERELDATA] = new FXXPMIcon(a, modeedgereldata_xpm);
     815         7496 :     myIcons[GUIIcon::MODETAZRELDATA] = new FXXPMIcon(a, modetazreldata_xpm);
     816         7496 :     myIcons[GUIIcon::MODEMEANDATA] = new FXXPMIcon(a, modemeandata_xpm);
     817         7496 :     myIcons[GUIIcon::MEANDATAEDGE] = new FXXPMIcon(a, meandataedge_xpm);
     818         7496 :     myIcons[GUIIcon::MEANDATALANE] = new FXXPMIcon(a, meandatalane_xpm);
     819              : 
     820         7496 :     myIcons[GUIIcon::COMPUTEJUNCTIONS] = new FXXPMIcon(a, computejunctions_xpm);
     821         7496 :     myIcons[GUIIcon::CLEANJUNCTIONS] = new FXXPMIcon(a, cleanjunctions_xpm);
     822         7496 :     myIcons[GUIIcon::JOINJUNCTIONS] = new FXXPMIcon(a, joinjunctions_xpm);
     823         7496 :     myIcons[GUIIcon::COMPUTEDEMAND] = new FXXPMIcon(a, computedemand_xpm);
     824         7496 :     myIcons[GUIIcon::CLEANROUTES] = new FXXPMIcon(a, cleanroutes_xpm);
     825         7496 :     myIcons[GUIIcon::JOINROUTES] = new FXXPMIcon(a, joinroutes_xpm);
     826         7496 :     myIcons[GUIIcon::ADJUSTPERSONPLANS] = new FXXPMIcon(a, adjustpersonplans_xpm);
     827              : 
     828         7496 :     myIcons[GUIIcon::OPTIONS] = new FXXPMIcon(a, options_xpm);
     829              : 
     830         7496 :     myIcons[GUIIcon::JUNCTION] = new FXXPMIcon(a, junction_xpm);
     831         7496 :     myIcons[GUIIcon::EDGETYPE] = new FXXPMIcon(a, edgetype_xpm);
     832         7496 :     myIcons[GUIIcon::LANETYPE] = new FXXPMIcon(a, lanetype_xpm);
     833         7496 :     myIcons[GUIIcon::EDGE] = new FXXPMIcon(a, edge_xpm);
     834         7496 :     myIcons[GUIIcon::LANE] = new FXXPMIcon(a, lane_xpm);
     835         7496 :     myIcons[GUIIcon::CONNECTION] = new FXXPMIcon(a, connection_xpm);
     836         7496 :     myIcons[GUIIcon::PROHIBITION] = new FXXPMIcon(a, prohibition_xpm);
     837         7496 :     myIcons[GUIIcon::CROSSING] = new FXXPMIcon(a, crossing_xpm);
     838         7496 :     myIcons[GUIIcon::WALKINGAREA] = new FXXPMIcon(a, walkingarea_xpm);
     839              : 
     840         7496 :     myIcons[GUIIcon::BUSSTOP] = new FXXPMIcon(a, busstop_xpm);
     841         7496 :     myIcons[GUIIcon::TRAINSTOP] = new FXXPMIcon(a, trainstop_xpm);
     842         7496 :     myIcons[GUIIcon::ACCESS] = new FXXPMIcon(a, access_xpm);
     843         7496 :     myIcons[GUIIcon::CONTAINERSTOP] = new FXXPMIcon(a, containerstop_xpm);
     844         7496 :     myIcons[GUIIcon::CHARGINGSTATION] = new FXXPMIcon(a, chargingstation_xpm);
     845         7496 :     myIcons[GUIIcon::PARKINGAREA] = new FXXPMIcon(a, parkingarea_xpm);
     846         7496 :     myIcons[GUIIcon::PARKINGSPACE] = new FXXPMIcon(a, parkingspace_xpm);
     847         7496 :     myIcons[GUIIcon::E1] = new FXXPMIcon(a, e1_xpm);
     848         7496 :     myIcons[GUIIcon::E2] = new FXXPMIcon(a, e2_xpm);
     849         7496 :     myIcons[GUIIcon::E3] = new FXXPMIcon(a, e3_xpm);
     850         7496 :     myIcons[GUIIcon::E3ENTRY] = new FXXPMIcon(a, e3entry_xpm);
     851         7496 :     myIcons[GUIIcon::E3EXIT] = new FXXPMIcon(a, e3exit_xpm);
     852         7496 :     myIcons[GUIIcon::E1INSTANT] = new FXXPMIcon(a, e1instant_xpm);
     853         7496 :     myIcons[GUIIcon::REROUTER] = new FXXPMIcon(a, rerouter_xpm);
     854         7496 :     myIcons[GUIIcon::ROUTEPROBE] = new FXXPMIcon(a, routeprobe_xpm);
     855         7496 :     myIcons[GUIIcon::VAPORIZER] = new FXXPMIcon(a, vaporizer_xpm);
     856         7496 :     myIcons[GUIIcon::VARIABLESPEEDSIGN] = new FXXPMIcon(a, variablespeedsign_xpm);
     857         7496 :     myIcons[GUIIcon::CALIBRATOR] = new FXXPMIcon(a, calibrator_xpm);
     858         7496 :     myIcons[GUIIcon::REROUTERINTERVAL] = new FXXPMIcon(a, rerouterinterval_xpm);
     859         7496 :     myIcons[GUIIcon::VSSSTEP] = new FXXPMIcon(a, vssstep_xpm);
     860         7496 :     myIcons[GUIIcon::CLOSINGREROUTE] = new FXXPMIcon(a, closingreroute_xpm);
     861         7496 :     myIcons[GUIIcon::CLOSINGLANEREROUTE] = new FXXPMIcon(a, closinglanereroute_xpm);
     862         7496 :     myIcons[GUIIcon::DESTPROBREROUTE] = new FXXPMIcon(a, destprobreroute_xpm);
     863         7496 :     myIcons[GUIIcon::PARKINGZONEREROUTE] = new FXXPMIcon(a, parkingzonereroute_xpm);
     864         7496 :     myIcons[GUIIcon::ROUTEPROBREROUTE] = new FXXPMIcon(a, routeprobreroute_xpm);
     865              : 
     866         7496 :     myIcons[GUIIcon::TRACTION_SUBSTATION] = new FXXPMIcon(a, tractionsubstation_xpm);
     867         7496 :     myIcons[GUIIcon::OVERHEADWIRE] = new FXXPMIcon(a, overheadwire_xpm);
     868         7496 :     myIcons[GUIIcon::OVERHEADWIRE_CLAMP] = new FXXPMIcon(a, overheadwire_clamp_xpm);
     869              : 
     870         7496 :     myIcons[GUIIcon::POLY] = new FXXPMIcon(a, poly_xpm);
     871         7496 :     myIcons[GUIIcon::POI] = new FXXPMIcon(a, poi_xpm);
     872         7496 :     myIcons[GUIIcon::POILANE] = new FXXPMIcon(a, poilane_xpm);
     873         7496 :     myIcons[GUIIcon::POIGEO] = new FXXPMIcon(a, poigeo_xpm);
     874              : 
     875         7496 :     myIcons[GUIIcon::POIICON_PIN] = new FXXPMIcon(a, poiicon_pin_xpm);
     876         7496 :     myIcons[GUIIcon::POIICON_NATURE] = new FXXPMIcon(a, poiicon_nature_xpm);
     877         7496 :     myIcons[GUIIcon::POIICON_HOTEL] = new FXXPMIcon(a, poiicon_hotel_xpm);
     878         7496 :     myIcons[GUIIcon::POIICON_FUEL] = new FXXPMIcon(a, poiicon_fuel_xpm);
     879         7496 :     myIcons[GUIIcon::POIICON_CHARGING_STATION] = new FXXPMIcon(a, poiicon_charging_station_xpm);
     880              : 
     881         7496 :     myIcons[GUIIcon::JPS] = new FXXPMIcon(a, jps_xpm);
     882         7496 :     myIcons[GUIIcon::JPS_WALKABLEAREA] = new FXXPMIcon(a, jps_walkablearea_xpm);
     883         7496 :     myIcons[GUIIcon::JPS_OBSTACLE] = new FXXPMIcon(a, jps_obstacle_xpm);
     884              : 
     885         7496 :     myIcons[GUIIcon::TAZ] = new FXXPMIcon(a, taz_xpm);
     886         7496 :     myIcons[GUIIcon::TAZEDGE] = new FXXPMIcon(a, tazedge_xpm);
     887              : 
     888         7496 :     myIcons[GUIIcon::ROUTE] = new FXXPMIcon(a, route_xpm);
     889         7496 :     myIcons[GUIIcon::ROUTEDISTRIBUTION] = new FXXPMIcon(a, routedistribution_xpm);
     890         7496 :     myIcons[GUIIcon::VTYPE] = new FXXPMIcon(a, vtype_xpm);
     891         7496 :     myIcons[GUIIcon::VTYPE_DEFAULT] = new FXXPMIcon(a, vtype_default_xpm);
     892         7496 :     myIcons[GUIIcon::VTYPE_BIKE] = new FXXPMIcon(a, vtype_bike_xpm);
     893         7496 :     myIcons[GUIIcon::VTYPE_TAXI] = new FXXPMIcon(a, vtype_taxi_xpm);
     894         7496 :     myIcons[GUIIcon::VTYPE_RAIL] = new FXXPMIcon(a, vtype_rail_xpm);
     895         7496 :     myIcons[GUIIcon::VTYPE_PEDESTRIAN] = new FXXPMIcon(a, vtype_pedestrian_xpm);
     896         7496 :     myIcons[GUIIcon::VTYPE_CONTAINER] = new FXXPMIcon(a, vtype_container_xpm);
     897         7496 :     myIcons[GUIIcon::VTYPEDISTRIBUTION] = new FXXPMIcon(a, vtypedistribution_xpm);
     898         7496 :     myIcons[GUIIcon::VEHICLE] = new FXXPMIcon(a, vehicle_xpm);
     899         7496 :     myIcons[GUIIcon::TRIP] = new FXXPMIcon(a, trip_xpm);
     900         7496 :     myIcons[GUIIcon::TRIP_JUNCTIONS] = new FXXPMIcon(a, tripjunctions_xpm);
     901         7496 :     myIcons[GUIIcon::TRIP_TAZS] = new FXXPMIcon(a, triptazs_xpm);
     902         7496 :     myIcons[GUIIcon::FLOW] = new FXXPMIcon(a, flow_xpm);
     903         7496 :     myIcons[GUIIcon::FLOW_JUNCTIONS] = new FXXPMIcon(a, flowjunctions_xpm);
     904         7496 :     myIcons[GUIIcon::FLOW_TAZS] = new FXXPMIcon(a, flowtazs_xpm);
     905         7496 :     myIcons[GUIIcon::ROUTEFLOW] = new FXXPMIcon(a, routeflow_xpm);
     906         7496 :     myIcons[GUIIcon::STOPELEMENT] = new FXXPMIcon(a, stopelement_xpm);
     907         7496 :     myIcons[GUIIcon::WAYPOINT] = new FXXPMIcon(a, waypoint_xpm);
     908         7496 :     myIcons[GUIIcon::PERSON] = new FXXPMIcon(a, person_xpm);
     909         7496 :     myIcons[GUIIcon::PERSONFLOW] = new FXXPMIcon(a, personflow_xpm);
     910         7496 :     myIcons[GUIIcon::PERSONTRIP_EDGE] = new FXXPMIcon(a, persontripedge_xpm);
     911         7496 :     myIcons[GUIIcon::PERSONTRIP_BUSSTOP] = new FXXPMIcon(a, persontripbusstop_xpm);
     912         7496 :     myIcons[GUIIcon::PERSONTRIP_TRAINSTOP] = new FXXPMIcon(a, persontriptrainstop_xpm);
     913         7496 :     myIcons[GUIIcon::PERSONTRIP_CONTAINERSTOP] = new FXXPMIcon(a, persontripcontainerstop_xpm);
     914         7496 :     myIcons[GUIIcon::PERSONTRIP_CHARGINGSTATION] = new FXXPMIcon(a, persontripchargingstation_xpm);
     915         7496 :     myIcons[GUIIcon::PERSONTRIP_PARKINGAREA] = new FXXPMIcon(a, persontripparkingarea_xpm);
     916         7496 :     myIcons[GUIIcon::PERSONTRIP_JUNCTION] = new FXXPMIcon(a, persontripjunction_xpm);
     917         7496 :     myIcons[GUIIcon::PERSONTRIP_TAZ] = new FXXPMIcon(a, persontriptaz_xpm);
     918         7496 :     myIcons[GUIIcon::WALK_EDGES] = new FXXPMIcon(a, walkedges_xpm);
     919         7496 :     myIcons[GUIIcon::WALK_EDGE] = new FXXPMIcon(a, walkedge_xpm);
     920         7496 :     myIcons[GUIIcon::WALK_BUSSTOP] = new FXXPMIcon(a, walkbusstop_xpm);
     921         7496 :     myIcons[GUIIcon::WALK_TRAINSTOP] = new FXXPMIcon(a, walktrainstop_xpm);
     922         7496 :     myIcons[GUIIcon::WALK_CONTAINERSTOP] = new FXXPMIcon(a, walkcontainerstop_xpm);
     923         7496 :     myIcons[GUIIcon::WALK_CHARGINGSTATION] = new FXXPMIcon(a, walkchargingstation_xpm);
     924         7496 :     myIcons[GUIIcon::WALK_PARKINGAREA] = new FXXPMIcon(a, walkparkingarea_xpm);
     925         7496 :     myIcons[GUIIcon::WALK_ROUTE] = new FXXPMIcon(a, walkroute_xpm);
     926         7496 :     myIcons[GUIIcon::WALK_JUNCTION] = new FXXPMIcon(a, walkjunction_xpm);
     927         7496 :     myIcons[GUIIcon::WALK_TAZ] = new FXXPMIcon(a, walktaz_xpm);
     928         7496 :     myIcons[GUIIcon::RIDE_EDGE] = new FXXPMIcon(a, rideedge_xpm);
     929         7496 :     myIcons[GUIIcon::RIDE_BUSSTOP] = new FXXPMIcon(a, ridebusstop_xpm);
     930         7496 :     myIcons[GUIIcon::RIDE_TRAINSTOP] = new FXXPMIcon(a, ridetrainstop_xpm);
     931         7496 :     myIcons[GUIIcon::RIDE_CONTAINERSTOP] = new FXXPMIcon(a, ridecontainerstop_xpm);
     932         7496 :     myIcons[GUIIcon::RIDE_CHARGINGSTATION] = new FXXPMIcon(a, ridechargingstation_xpm);
     933         7496 :     myIcons[GUIIcon::RIDE_PARKINGAREA] = new FXXPMIcon(a, rideparkingarea_xpm);
     934         7496 :     myIcons[GUIIcon::RIDE_JUNCTION] = new FXXPMIcon(a, ridejunction_xpm);
     935         7496 :     myIcons[GUIIcon::RIDE_TAZ] = new FXXPMIcon(a, ridetaz_xpm);
     936              : 
     937         7496 :     myIcons[GUIIcon::CONTAINER] = new FXXPMIcon(a, container_xpm);
     938         7496 :     myIcons[GUIIcon::CONTAINERFLOW] = new FXXPMIcon(a, containerflow_xpm);
     939         7496 :     myIcons[GUIIcon::TRANSPORT_EDGE] = new FXXPMIcon(a, transportedge_xpm);
     940         7496 :     myIcons[GUIIcon::TRANSPORT_BUSSTOP] = new FXXPMIcon(a, transportbusstop_xpm);
     941         7496 :     myIcons[GUIIcon::TRANSPORT_TRAINSTOP] = new FXXPMIcon(a, transporttrainstop_xpm);
     942         7496 :     myIcons[GUIIcon::TRANSPORT_CONTAINERSTOP] = new FXXPMIcon(a, transportcontainerstop_xpm);
     943         7496 :     myIcons[GUIIcon::TRANSPORT_CHARGINGSTATION] = new FXXPMIcon(a, transportchargingstation_xpm);
     944         7496 :     myIcons[GUIIcon::TRANSPORT_PARKINGAREA] = new FXXPMIcon(a, transportparkingarea_xpm);
     945         7496 :     myIcons[GUIIcon::TRANSPORT_JUNCTION] = new FXXPMIcon(a, transportjunction_xpm);
     946         7496 :     myIcons[GUIIcon::TRANSPORT_TAZ] = new FXXPMIcon(a, transporttaz_xpm);
     947         7496 :     myIcons[GUIIcon::TRANSHIP_EDGES] = new FXXPMIcon(a, transhipedges_xpm);
     948         7496 :     myIcons[GUIIcon::TRANSHIP_EDGE] = new FXXPMIcon(a, transhipedge_xpm);
     949         7496 :     myIcons[GUIIcon::TRANSHIP_BUSSTOP] = new FXXPMIcon(a, transhipbusstop_xpm);
     950         7496 :     myIcons[GUIIcon::TRANSHIP_TRAINSTOP] = new FXXPMIcon(a, transhiptrainstop_xpm);
     951         7496 :     myIcons[GUIIcon::TRANSHIP_CONTAINERSTOP] = new FXXPMIcon(a, transhipcontainerstop_xpm);
     952         7496 :     myIcons[GUIIcon::TRANSHIP_CHARGINGSTATION] = new FXXPMIcon(a, transhipchargingstation_xpm);
     953         7496 :     myIcons[GUIIcon::TRANSHIP_PARKINGAREA] = new FXXPMIcon(a, transhipparkingarea_xpm);
     954         7496 :     myIcons[GUIIcon::TRANSHIP_JUNCTION] = new FXXPMIcon(a, transhipjunction_xpm);
     955         7496 :     myIcons[GUIIcon::TRANSHIP_TAZ] = new FXXPMIcon(a, transhiptaz_xpm);
     956              : 
     957         7496 :     myIcons[GUIIcon::DATASET] = new FXXPMIcon(a, dataset_xpm);
     958         7496 :     myIcons[GUIIcon::DATAINTERVAL] = new FXXPMIcon(a, datainterval_xpm);
     959         7496 :     myIcons[GUIIcon::EDGEDATA] = new FXXPMIcon(a, edgedata_xpm);
     960         7496 :     myIcons[GUIIcon::EDGERELDATA] = new FXXPMIcon(a, edgereldata_xpm);
     961         7496 :     myIcons[GUIIcon::TAZRELDATA] = new FXXPMIcon(a, tazreldata_xpm);
     962              : 
     963         7496 :     myIcons[GUIIcon::TLSPHASEDEFAULT] = new FXXPMIcon(a, tlsphasedefault_xpm);
     964         7496 :     myIcons[GUIIcon::TLSPHASECOPY] = new FXXPMIcon(a, tlsphasecopy_xpm);
     965         7496 :     myIcons[GUIIcon::TLSPHASEALLRED] = new FXXPMIcon(a, tlsphaseallred_xpm);
     966         7496 :     myIcons[GUIIcon::TLSPHASEALLYELLOW] = new FXXPMIcon(a, tlsphaseallyellow_xpm);
     967         7496 :     myIcons[GUIIcon::TLSPHASEALLGREEN] = new FXXPMIcon(a, tlsphaseallgreen_xpm);
     968         7496 :     myIcons[GUIIcon::TLSPHASEALLGREENPRIORITY] = new FXXPMIcon(a, tlsphaseallgreenpriority_xpm);
     969              : 
     970         7496 :     myIcons[GUIIcon::VCLASS_IGNORING] = new FXXPMIcon(a, vclass_ignoring_xpm);
     971         7496 :     myIcons[GUIIcon::VCLASS_PRIVATE] = new FXXPMIcon(a, vclass_private_xpm);
     972         7496 :     myIcons[GUIIcon::VCLASS_EMERGENCY] = new FXXPMIcon(a, vclass_emergency_xpm);
     973         7496 :     myIcons[GUIIcon::VCLASS_AUTHORITY] = new FXXPMIcon(a, vclass_authority_xpm);
     974         7496 :     myIcons[GUIIcon::VCLASS_ARMY] = new FXXPMIcon(a, vclass_army_xpm);
     975         7496 :     myIcons[GUIIcon::VCLASS_VIP] = new FXXPMIcon(a, vclass_vip_xpm);
     976         7496 :     myIcons[GUIIcon::VCLASS_PASSENGER] = new FXXPMIcon(a, vclass_passenger_xpm);
     977         7496 :     myIcons[GUIIcon::VCLASS_HOV] = new FXXPMIcon(a, vclass_hov_xpm);
     978         7496 :     myIcons[GUIIcon::VCLASS_TAXI] = new FXXPMIcon(a, vclass_taxi_xpm);
     979         7496 :     myIcons[GUIIcon::VCLASS_BUS] = new FXXPMIcon(a, vclass_bus_xpm);
     980         7496 :     myIcons[GUIIcon::VCLASS_COACH] = new FXXPMIcon(a, vclass_coach_xpm);
     981         7496 :     myIcons[GUIIcon::VCLASS_DELIVERY] = new FXXPMIcon(a, vclass_delivery_xpm);
     982         7496 :     myIcons[GUIIcon::VCLASS_TRUCK] = new FXXPMIcon(a, vclass_truck_xpm);
     983         7496 :     myIcons[GUIIcon::VCLASS_TRAILER] = new FXXPMIcon(a, vclass_trailer_xpm);
     984         7496 :     myIcons[GUIIcon::VCLASS_TRAM] = new FXXPMIcon(a, vclass_tram_xpm);
     985         7496 :     myIcons[GUIIcon::VCLASS_RAIL_URBAN] = new FXXPMIcon(a, vclass_rail_urban_xpm);
     986         7496 :     myIcons[GUIIcon::VCLASS_RAIL] = new FXXPMIcon(a, vclass_rail_xpm);
     987         7496 :     myIcons[GUIIcon::VCLASS_RAIL_ELECTRIC] = new FXXPMIcon(a, vclass_rail_electric_xpm);
     988         7496 :     myIcons[GUIIcon::VCLASS_RAIL_FAST] = new FXXPMIcon(a, vclass_rail_fast_xpm);
     989         7496 :     myIcons[GUIIcon::VCLASS_MOTORCYCLE] = new FXXPMIcon(a, vclass_motorcycle_xpm);
     990         7496 :     myIcons[GUIIcon::VCLASS_MOPED] = new FXXPMIcon(a, vclass_moped_xpm);
     991         7496 :     myIcons[GUIIcon::VCLASS_BICYCLE] = new FXXPMIcon(a, vclass_bicycle_xpm);
     992         7496 :     myIcons[GUIIcon::VCLASS_PEDESTRIAN] = new FXXPMIcon(a, vclass_pedestrian_xpm);
     993         7496 :     myIcons[GUIIcon::VCLASS_EVEHICLE] = new FXXPMIcon(a, vclass_evehicle_xpm);
     994         7496 :     myIcons[GUIIcon::VCLASS_SHIP] = new FXXPMIcon(a, vclass_ship_xpm);
     995         7496 :     myIcons[GUIIcon::VCLASS_CONTAINER] = new FXXPMIcon(a, vclass_container_xpm);
     996         7496 :     myIcons[GUIIcon::VCLASS_CABLE_CAR] = new FXXPMIcon(a, vclass_cable_car_xpm);
     997         7496 :     myIcons[GUIIcon::VCLASS_SUBWAY] = new FXXPMIcon(a, vclass_subway_xpm);
     998         7496 :     myIcons[GUIIcon::VCLASS_AIRCRAFT] = new FXXPMIcon(a, vclass_aircraft_xpm);
     999         7496 :     myIcons[GUIIcon::VCLASS_WHEELCHAIR] = new FXXPMIcon(a, vclass_wheelchair_xpm);
    1000         7496 :     myIcons[GUIIcon::VCLASS_SCOOTER] = new FXXPMIcon(a, vclass_scooter_xpm);
    1001         7496 :     myIcons[GUIIcon::VCLASS_DRONE] = new FXXPMIcon(a, vclass_drone_xpm);
    1002         7496 :     myIcons[GUIIcon::VCLASS_CUSTOM1] = new FXXPMIcon(a, vclass_custom1_xpm);
    1003         7496 :     myIcons[GUIIcon::VCLASS_CUSTOM2] = new FXXPMIcon(a, vclass_custom2_xpm);
    1004              : 
    1005         7496 :     myIcons[GUIIcon::VCLASS_SMALL_IGNORING] = new FXXPMIcon(a, vclass_small_ignoring_xpm);
    1006         7496 :     myIcons[GUIIcon::VCLASS_SMALL_PRIVATE] = new FXXPMIcon(a, vclass_small_private_xpm);
    1007         7496 :     myIcons[GUIIcon::VCLASS_SMALL_EMERGENCY] = new FXXPMIcon(a, vclass_small_emergency_xpm);
    1008         7496 :     myIcons[GUIIcon::VCLASS_SMALL_AUTHORITY] = new FXXPMIcon(a, vclass_small_authority_xpm);
    1009         7496 :     myIcons[GUIIcon::VCLASS_SMALL_ARMY] = new FXXPMIcon(a, vclass_small_army_xpm);
    1010         7496 :     myIcons[GUIIcon::VCLASS_SMALL_VIP] = new FXXPMIcon(a, vclass_small_vip_xpm);
    1011         7496 :     myIcons[GUIIcon::VCLASS_SMALL_PASSENGER] = new FXXPMIcon(a, vclass_small_passenger_xpm);
    1012         7496 :     myIcons[GUIIcon::VCLASS_SMALL_HOV] = new FXXPMIcon(a, vclass_small_hov_xpm);
    1013         7496 :     myIcons[GUIIcon::VCLASS_SMALL_TAXI] = new FXXPMIcon(a, vclass_small_taxi_xpm);
    1014         7496 :     myIcons[GUIIcon::VCLASS_SMALL_BUS] = new FXXPMIcon(a, vclass_small_bus_xpm);
    1015         7496 :     myIcons[GUIIcon::VCLASS_SMALL_COACH] = new FXXPMIcon(a, vclass_small_coach_xpm);
    1016         7496 :     myIcons[GUIIcon::VCLASS_SMALL_DELIVERY] = new FXXPMIcon(a, vclass_small_delivery_xpm);
    1017         7496 :     myIcons[GUIIcon::VCLASS_SMALL_TRUCK] = new FXXPMIcon(a, vclass_small_truck_xpm);
    1018         7496 :     myIcons[GUIIcon::VCLASS_SMALL_TRAILER] = new FXXPMIcon(a, vclass_small_trailer_xpm);
    1019         7496 :     myIcons[GUIIcon::VCLASS_SMALL_TRAM] = new FXXPMIcon(a, vclass_small_tram_xpm);
    1020         7496 :     myIcons[GUIIcon::VCLASS_SMALL_RAIL_URBAN] = new FXXPMIcon(a, vclass_small_rail_urban_xpm);
    1021         7496 :     myIcons[GUIIcon::VCLASS_SMALL_RAIL] = new FXXPMIcon(a, vclass_small_rail_xpm);
    1022         7496 :     myIcons[GUIIcon::VCLASS_SMALL_RAIL_ELECTRIC] = new FXXPMIcon(a, vclass_small_rail_electric_xpm);
    1023         7496 :     myIcons[GUIIcon::VCLASS_SMALL_RAIL_FAST] = new FXXPMIcon(a, vclass_small_rail_fast_xpm);
    1024         7496 :     myIcons[GUIIcon::VCLASS_SMALL_MOTORCYCLE] = new FXXPMIcon(a, vclass_small_motorcycle_xpm);
    1025         7496 :     myIcons[GUIIcon::VCLASS_SMALL_MOPED] = new FXXPMIcon(a, vclass_small_moped_xpm);
    1026         7496 :     myIcons[GUIIcon::VCLASS_SMALL_BICYCLE] = new FXXPMIcon(a, vclass_small_bicycle_xpm);
    1027         7496 :     myIcons[GUIIcon::VCLASS_SMALL_PEDESTRIAN] = new FXXPMIcon(a, vclass_small_pedestrian_xpm);
    1028         7496 :     myIcons[GUIIcon::VCLASS_SMALL_EVEHICLE] = new FXXPMIcon(a, vclass_small_evehicle_xpm);
    1029         7496 :     myIcons[GUIIcon::VCLASS_SMALL_SHIP] = new FXXPMIcon(a, vclass_small_ship_xpm);
    1030         7496 :     myIcons[GUIIcon::VCLASS_SMALL_CONTAINER] = new FXXPMIcon(a, vclass_small_container_xpm);
    1031         7496 :     myIcons[GUIIcon::VCLASS_SMALL_CABLE_CAR] = new FXXPMIcon(a, vclass_small_cable_car_xpm);
    1032         7496 :     myIcons[GUIIcon::VCLASS_SMALL_SUBWAY] = new FXXPMIcon(a, vclass_small_subway_xpm);
    1033         7496 :     myIcons[GUIIcon::VCLASS_SMALL_AIRCRAFT] = new FXXPMIcon(a, vclass_small_aircraft_xpm);
    1034         7496 :     myIcons[GUIIcon::VCLASS_SMALL_WHEELCHAIR] = new FXXPMIcon(a, vclass_small_wheelchair_xpm);
    1035         7496 :     myIcons[GUIIcon::VCLASS_SMALL_SCOOTER] = new FXXPMIcon(a, vclass_small_scooter_xpm);
    1036         7496 :     myIcons[GUIIcon::VCLASS_SMALL_DRONE] = new FXXPMIcon(a, vclass_small_drone_xpm);
    1037         7496 :     myIcons[GUIIcon::VCLASS_SMALL_CUSTOM1] = new FXXPMIcon(a, vclass_small_custom1_xpm);
    1038         7496 :     myIcons[GUIIcon::VCLASS_SMALL_CUSTOM2] = new FXXPMIcon(a, vclass_small_custom2_xpm);
    1039              : 
    1040         7496 :     myIcons[GUIIcon::VSHAPE_PEDESTRIAN] = new FXXPMIcon(a, vshape_pedestrian_xpm);
    1041         7496 :     myIcons[GUIIcon::VSHAPE_BICYCLE] = new FXXPMIcon(a, vshape_bicycle_xpm);
    1042         7496 :     myIcons[GUIIcon::VSHAPE_MOPED] = new FXXPMIcon(a, vshape_moped_xpm);
    1043         7496 :     myIcons[GUIIcon::VSHAPE_MOTORCYCLE] = new FXXPMIcon(a, vshape_motorcycle_xpm);
    1044         7496 :     myIcons[GUIIcon::VSHAPE_PASSENGER] = new FXXPMIcon(a, vshape_passenger_xpm);
    1045         7496 :     myIcons[GUIIcon::VSHAPE_PASSENGER_SEDAN] = new FXXPMIcon(a, vshape_passenger_sedan_xpm);
    1046         7496 :     myIcons[GUIIcon::VSHAPE_PASSENGER_HATCHBACK] = new FXXPMIcon(a, vshape_passenger_hatchback_xpm);
    1047         7496 :     myIcons[GUIIcon::VSHAPE_PASSENGER_WAGON] = new FXXPMIcon(a, vshape_passenger_wagon_xpm);
    1048         7496 :     myIcons[GUIIcon::VSHAPE_PASSENGER_VAN] = new FXXPMIcon(a, vshape_passenger_van_xpm);
    1049         7496 :     myIcons[GUIIcon::VSHAPE_TAXI] = new FXXPMIcon(a, vshape_taxi_xpm);
    1050         7496 :     myIcons[GUIIcon::VSHAPE_DELIVERY] = new FXXPMIcon(a, vshape_delivery_xpm);
    1051         7496 :     myIcons[GUIIcon::VSHAPE_TRUCK] = new FXXPMIcon(a, vshape_truck_xpm);
    1052         7496 :     myIcons[GUIIcon::VSHAPE_TRUCK_SEMITRAILER] = new FXXPMIcon(a, vshape_truck_semitrailer_xpm);
    1053         7496 :     myIcons[GUIIcon::VSHAPE_TRUCK_1TRAILER] = new FXXPMIcon(a, vshape_truck_1trailer_xpm);
    1054         7496 :     myIcons[GUIIcon::VSHAPE_BUS] = new FXXPMIcon(a, vshape_bus_xpm);
    1055         7496 :     myIcons[GUIIcon::VSHAPE_BUS_COACH] = new FXXPMIcon(a, vshape_bus_coach_xpm);
    1056         7496 :     myIcons[GUIIcon::VSHAPE_BUS_FLEXIBLE] = new FXXPMIcon(a, vshape_bus_flexible_xpm);
    1057         7496 :     myIcons[GUIIcon::VSHAPE_BUS_TROLLEY] = new FXXPMIcon(a, vshape_bus_trolley_xpm);
    1058         7496 :     myIcons[GUIIcon::VSHAPE_RAIL] = new FXXPMIcon(a, vshape_rail_xpm);
    1059         7496 :     myIcons[GUIIcon::VSHAPE_RAIL_CAR] = new FXXPMIcon(a, vshape_rail_car_xpm);
    1060         7496 :     myIcons[GUIIcon::VSHAPE_RAIL_CARGO] = new FXXPMIcon(a, vshape_rail_cargo_xpm);
    1061         7496 :     myIcons[GUIIcon::VSHAPE_E_VEHICLE] = new FXXPMIcon(a, vshape_e_vehicle_xpm);
    1062         7496 :     myIcons[GUIIcon::VSHAPE_ANT] = new FXXPMIcon(a, vshape_ant_xpm);
    1063         7496 :     myIcons[GUIIcon::VSHAPE_SHIP] = new FXXPMIcon(a, vshape_ship_xpm);
    1064         7496 :     myIcons[GUIIcon::VSHAPE_EMERGENCY] = new FXXPMIcon(a, vshape_emergency_xpm);
    1065         7496 :     myIcons[GUIIcon::VSHAPE_FIREBRIGADE] = new FXXPMIcon(a, vshape_firebrigade_xpm);
    1066         7496 :     myIcons[GUIIcon::VSHAPE_POLICE] = new FXXPMIcon(a, vshape_police_xpm);
    1067         7496 :     myIcons[GUIIcon::VSHAPE_RICKSHAW] = new FXXPMIcon(a, vshape_rickshaw_xpm);
    1068         7496 :     myIcons[GUIIcon::VSHAPE_AIRCRAFT] = new FXXPMIcon(a, vshape_aircraft_xpm);
    1069         7496 :     myIcons[GUIIcon::VSHAPE_SCOOTER] = new FXXPMIcon(a, vshape_scooter_xpm);
    1070         7496 :     myIcons[GUIIcon::VSHAPE_UNKNOWN] = new FXXPMIcon(a, vshape_unknown_xpm);
    1071              : 
    1072         7496 :     myIcons[GUIIcon::OK] = new FXXPMIcon(a, accept_xpm);
    1073         7496 :     myIcons[GUIIcon::ACCEPT] = new FXXPMIcon(a, accept_xpm);
    1074         7496 :     myIcons[GUIIcon::CANCEL] = new FXXPMIcon(a, cancel_xpm);
    1075         7496 :     myIcons[GUIIcon::CORRECT] = new FXXPMIcon(a, correct_xpm);
    1076         7496 :     myIcons[GUIIcon::INCORRECT] = new FXXPMIcon(a, incorrect_xpm);
    1077         7496 :     myIcons[GUIIcon::RESET] = new FXXPMIcon(a, reset_xpm);
    1078         7496 :     myIcons[GUIIcon::WARNING] = new FXXPMIcon(a, warning_xpm);
    1079         7496 :     myIcons[GUIIcon::DANGER] = new FXXPMIcon(a, danger_xpm);
    1080         7496 :     myIcons[GUIIcon::SUM] = new FXXPMIcon(a, sum_xpm);
    1081         7496 :     myIcons[GUIIcon::BACK] = new FXXPMIcon(a, back_xpm);
    1082              : 
    1083         7496 :     myIcons[GUIIcon::GRID] = new FXXPMIcon(a, grid_xpm);
    1084         7496 :     myIcons[GUIIcon::GRID1] = new FXXPMIcon(a, grid1_xpm);
    1085         7496 :     myIcons[GUIIcon::GRID2] = new FXXPMIcon(a, grid2_xpm);
    1086         7496 :     myIcons[GUIIcon::GRID3] = new FXXPMIcon(a, grid3_xpm);
    1087              : 
    1088         7496 :     myIcons[GUIIcon::GEOHACK] = new FXXPMIcon(a, geohack_xpm);
    1089         7496 :     myIcons[GUIIcon::GOOGLEMAPS] = new FXXPMIcon(a, googlemaps_xpm);
    1090         7496 :     myIcons[GUIIcon::OSM] = new FXXPMIcon(a, osm_xpm);
    1091              : 
    1092         7496 :     myIcons[GUIIcon::LANGUAGE_EN] = new FXXPMIcon(a, language_en_xpm);
    1093         7496 :     myIcons[GUIIcon::LANGUAGE_DE] = new FXXPMIcon(a, language_de_xpm);
    1094         7496 :     myIcons[GUIIcon::LANGUAGE_ES] = new FXXPMIcon(a, language_es_xpm);
    1095         7496 :     myIcons[GUIIcon::LANGUAGE_FR] = new FXXPMIcon(a, language_fr_xpm);
    1096         7496 :     myIcons[GUIIcon::LANGUAGE_IT] = new FXXPMIcon(a, language_it_xpm);
    1097         7496 :     myIcons[GUIIcon::LANGUAGE_HU] = new FXXPMIcon(a, language_hu_xpm);
    1098         7496 :     myIcons[GUIIcon::LANGUAGE_TR] = new FXXPMIcon(a, language_tr_xpm);
    1099         7496 :     myIcons[GUIIcon::LANGUAGE_ZH] = new FXXPMIcon(a, language_zh_xpm);
    1100         7496 :     myIcons[GUIIcon::LANGUAGE_ZHT] = new FXXPMIcon(a, language_zht_xpm);
    1101              : 
    1102              :     // ... and create them
    1103      3643056 :     for (const auto& icon : myIcons) {
    1104      3635560 :         if (GUIDesignHeight != 23) {
    1105            0 :             int w = (int)(icon.second->getWidth() * GUIDesignHeight / 23.0);
    1106            0 :             int h = (int)(icon.second->getHeight() * GUIDesignHeight / 23.0);
    1107            0 :             icon.second->scale(w, h);
    1108              :         }
    1109      3635560 :         icon.second->create();
    1110              :     }
    1111         7496 : }
    1112              : 
    1113              : 
    1114         7482 : GUIIconSubSys::~GUIIconSubSys() {
    1115              :     // remove all icons
    1116      3636252 :     for (const auto& icon : myIcons) {
    1117      3628770 :         delete icon.second;
    1118              :     }
    1119         7482 : }
    1120              : 
    1121              : 
    1122              : void
    1123         7496 : GUIIconSubSys::initIcons(FXApp* a) {
    1124         7496 :     if (myInstance) {
    1125            0 :         throw ProcessError(TL("Instance was previously created"));
    1126              :     } else {
    1127         7496 :         myInstance = new GUIIconSubSys(a);
    1128              :     }
    1129         7496 : }
    1130              : 
    1131              : 
    1132              : FXIcon*
    1133     13089745 : GUIIconSubSys::getIcon(const GUIIcon which) {
    1134     13089745 :     return myInstance->myIcons.at(which);
    1135              : }
    1136              : 
    1137              : 
    1138              : void
    1139         7482 : GUIIconSubSys::close() {
    1140              :     // delete instance and set null
    1141         7482 :     delete myInstance;
    1142         7482 :     myInstance = nullptr;
    1143         7482 : }
    1144              : 
    1145              : 
    1146              : /****************************************************************************/
        

Generated by: LCOV version 2.0-1