-
Notifications
You must be signed in to change notification settings - Fork 7
/
TODO
192 lines (134 loc) · 8.05 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
SuperTux Editor
===============
* use System.Drawing.Point/Rectangle/Size/etc. instead of manual
messing with width/height or our own classes
* in SectorRenderer rename ILayer variables to layer or something else
* Object Tool should behave more like Inkscape:
- LMB on an object to select
- LMB on the background to start a select-rectangle
- LMB+move to drag objects it around
- Shift+LMB to add an object to the selection
- RMB for context menu
* Select Tool should be removed (identical to Object Tool)
* replace tool crashes:
Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.Collections.Generic.Dictionary`2[System.Object,System.Single].get_Item (System.Object key) [0x00000]
at LayerListWidget.VisibilityDataFunc (Gtk.TreeViewColumn Column, Gtk.CellRenderer Renderer, TreeModel Model, TreeIter Iter) [0x00000]
at GtkSharp.TreeCellDataFuncWrapper.NativeCallback (IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data) [0x00000]
at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
at GtkSharp.TreeCellDataFuncWrapper.NativeCallback(IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data)
at Gtk.Application.gtk_main()
at Gtk.Application.Run()
at Application.Main(System.String[] args)
DEBUG: UndoManager.AddCommand(Replace Tiles on Tilemap "Interactive")
DEBUG: UndoManager.AddCommand(Replace Tiles on Tilemap "Interactive")
Exception in Gtk# callback delegate
Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.Collections.Generic.Dictionary`2[System.Object,System.Single].get_Item (System.Object key) [0x00000]
at LayerListWidget.VisibilityDataFunc (Gtk.TreeViewColumn Column, Gtk.CellRenderer Renderer, TreeModel Model, TreeIter Iter) [0x00000]
at GtkSharp.TreeCellDataFuncWrapper.NativeCallback (IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data) [0x00000]
at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
at GtkSharp.TreeCellDataFuncWrapper.NativeCallback(IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data)
at Gtk.Application.gtk_main()
at Gtk.Application.Run()
at Application.Main(System.String[] args)
DEBUG: UndoManager.AddCommand(Moved Object SequenceTrigger)
DEBUG: ObjectsEditor:MakeActive(ObjectsTool+ControlPoint)
DEBUG: UndoManager.AddCommand(Moved Object ObjectsTool+ControlPoint)
DEBUG: ObjectsEditor:MakeActive(SequenceTrigger)
Stacktrace:
at (wrapper managed-to-native) System.MonoType.getFullName (bool,bool) <0x00004>
at (wrapper managed-to-native) System.MonoType.getFullName (bool,bool) <0xffffffff>
at System.MonoType.ToString () <0x00014>
at object.ToString () <0x00019>
at string.Concat (object,object,object) <0x0004b>
Bus error
INFO: Using configfile: /home/ingo/.config/supertux-editor/settings.xml
INFO: Supertux is run as: /home/ingo/projects/supertux/svn/trunk/supertux/supertux2
INFO: Data files are in: /home/ingo/projects/supertux/svn/trunk/supertux/data/
Stacktrace:
at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke (object,object[],System.Exception&) <0x00004>
at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke (object,object[],System.Exception&) <0xffffffff>
at System.Reflection.MonoMethod.Invoke (object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo) <0x000a4>
at System.Reflection.MethodBase.Invoke (object,object[]) <0x00025>
at System.Delegate.DynamicInvokeImpl (object[]) <0x0018a>
at System.MulticastDelegate.DynamicInvokeImpl (object[]) <0x00034>
at System.Delegate.DynamicInvoke (object[]) <0x00019>
at GLib.Signal.ClosureInvokedCB (object,GLib.ClosureInvokedArgs) <0x00120>
at GLib.SignalClosure.Invoke (GLib.ClosureInvokedArgs) <0x00023>
at GLib.SignalClosure.MarshalCallback (intptr,intptr,uint,intptr,intptr,intptr) <0x0020c>
at (wrapper native-to-managed) GLib.SignalClosure.MarshalCallback (intptr,intptr,uint,intptr,intptr,intptr) <0xffffffff>
at (wrapper managed-to-native) Gtk.Application.gtk_main () <0x00004>
at (wrapper managed-to-native) Gtk.Application.gtk_main () <0xffffffff>
at Gtk.Application.Run () <0x0000a>
Bus error
DEBUG: UndoManager.AddCommand(Created Object 'SmartBall')
DEBUG: ObjectsEditor:MakeActive(SmartBall)
Exception in Gtk# callback delegate
Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.Collections.Generic.Dictionary`2[System.Object,System.Single].get_Item (System.Object key) [0x00000]
at LayerListWidget.VisibilityDataFunc (Gtk.TreeViewColumn Column, Gtk.CellRenderer Renderer, TreeModel Model, TreeIter Iter) [0x00000]
at GtkSharp.TreeCellDataFuncWrapper.NativeCallback (IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data) [0x00000]
at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
at GtkSharp.TreeCellDataFuncWrapper.NativeCallback(IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data)
at Gtk.Application.gtk_main()
at Gtk.Application.Run()
at Application.Main(System.String[] args)
* Replace Tool should document its functions in a status bar message
* Path Tool doesn't seem to do anything
-> the path tool requires a click on a path node before it starts to
do anything
* Tiles Tool doesn't display the current tile
* add a Sector Menu in the main menubar containing all that stuff
currently hidden in right-click on the sector tab:
New Sector
Delete Sector
Resize Sector
Sector Properties
Camera Properties
...
* make Object Properties a separate Window, instead of having it in a
VPaned (having it dockable like in Gimp would be best, but likely to
complicated to do in Gtk+)
* whats the point of empty interfaces (IGameObject)?
-> seem to be used to pass IGameObjects around in code that doesn't
care about specifics of the GameObject
-> they seem to be bad style: http://msdn.microsoft.com/en-us/library/ms182128%28VS.80%29.aspx
* move source code to src/
* split external stuff to external/
* what about some line-breaking to avoid >150 characters per line?
* Do we use the SceneGraph stuff? -> yes, we do
* Which code-style/style-guide do we follow?
-> "astyle -t8" seems to get close enough to whatever we are using
* Why TileBlock::SaveData and not just a full clone of TileBlock?
* Use one file per class
* LispChild attributes seems a little impractical right now, as they
code to handle them is larger then the code to do it manually
* "using Gtk" wouldn't it be better to avoid that and use fully
qualified names instead for better readability?
* should delegate types be declared outside of a class or inside of it?
* Add middle button scroll to the TileSelector
* split up Application
* how do we generate docs for C#?
* use ZoomTo() for scroll wheel
* Display mouse coordinates somewhere, both in pixels and in tiles
* add check if graphic card supports non-power-of-two
* clip the background to level boundaries
* tilemaps need names (background, foreground, secret1, etc.)
* layer list should be reversed, with background at the bottom
* hove something to define tiles as equal and then a tool to shuffle
them to get more randomness
* add a vissible tile-grid
* refactor code a bit more to allow MDI interface
* add Gimp-like mini-toolbar to the layerdialog
* add a group select (like in the TileSelector) to the ObjectSelector
(All, Decal, Badguys, Particleeffects, etc.)
* remove handle boxes
* add support for multiple object layer
* add support for parallax scrolling decal
* do not limit scrolling so much when zoomed out
* implement Background::alignment
# EOF #