Coding Standard
===============
-* no external libraries in src/, they go to external/
-
-* proper separation between engine and game specific code (especially
- sound and video handling)
-
-* normalize #include directives (all refer to top level dir)
-
* use SCons instead of CMake
* make code clean: "-O2", "-g3",
* do not use raw pointer, especially not for Sprite and Surface
-* properly separate data members and member functions, don't mix them
- in the same section
-
-* write namespaces like: "namespace NameSpace {", no newline before the {
-
* only do one variable initialization per line, not multiple as its
currently often done in initialization list
-* conditional includes should be indended (makes it easier to handle
- in include optimization):
-
-#ifdef FOOBAR
-# include "foobar.hpp"
-#endif
-
* remove overuse of multi-inheritance
* remove overuse of friend'ship
* check the code with Valgrind
-* cleanup doxygen comments, use /** */, nothing else
-
* static vs anonymous namespace
* use Vector in Physics for 'a' and 'v'
* move bugtracker to http://code.google.com (much simpler, less useless)
+* having dictionary_manager in Lisp is extremely ugly
+
+* enforce proper naming of files to match their class
+
+* get rid of DEBUG and conditional compilation, these should be
+ reserved for a few tiny cases, not spread all over the code
+
+* split particlesystem_interactive
+
+* Renderer::apply_config() needs to handle fullscreen switching
+
+* collect all manager classe into globals.hpp
+
+* more moving directories around?
+
+addon/
+audio/
+control/
+gui/
+lisp/
+math/
+physfs/
+sprite/
+util/
+video/
+supertux/
+ worldmap/
+ trigger/
+ scripting/
+ badguy/
+ object/
+
+* implement PNG screenshot
+
+* GL_ARB_texture_non_power_of_two returns 1 on MatroxG450, while it
+ returns "Missing" in glew info, something wrong
+
+SuperTux Editor
+===============
+
+* +/- zoom buttons do not zoom to the center of the screen
+
+* 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)
+
+* Replace Tool should document its functions in a status bar message
+
+* Path Tool doesn't seem to do anything
+
+* Tiles Tool doesn't display the current tile
# EOF #