Refactoring notes
[potlatch2.git] / REFACTOR.txt
1 == Potlatch 2 refactoring ==
2
3 Aims:
4 - to enable multiple Maps to be shown on-screen (e.g. for junction editor)
5 - to bring Connection and VectorLayer code together
6
7 ==== think what to do about controllers ====
8
9
10 Map.as changes:
11 becomes a collection of MapPaint objects, all with the same lat/long/scale
12 (plus a backdrop sprite and a background imagery sprite)
13 √ move listeners to Connection to MapPaint (e.g. new way created in the Connection - MapPaint should know about it, not Map)
14 - refactor tileset/setbackground stuff?
15
16 MapPaint.as changes:
17 - gains a reference to a Connection - i.e. the source data for this layer
18 - needs an 'interactive' flag
19 √ UpdateEntityUIs no longer needs a set of entities passing to it - it can read directly from the Connection
20 - consider whether it's better to have a backreference to Map or for Map to update edges/lat/long/scale etc.
21 - wayuis, nodeuis etc. should ideally be private
22 - removeLayer should blank
23
24 VectorLayer.as changes:
25 - move into Connection
26
27 Global changes:
28 - remove all references to getConnection etc. - there can now be more than one Connection
29 - remove all back-references to Map except where necessary for lat/long/scale
30 - Controllers are full of references to controller.map and to controller.connection
31 - move AttentionEvent stuff