Logo Search packages:      
Sourcecode: wesnoth-1.7 version File versions  Download package

Todo List

Member battle_context::choose_defender_weapon (const unit &attacker, const unit &defender, unsigned attacker_weapon, const unit_map &units, const map_location &attacker_loc, const map_location &defender_loc, const combatant *prev_def)
FIXME: Hand previous defender unit in here.

Member battle_context::get_attacker_combatant (const combatant *prev_def=NULL)
FIXME: better to initialize combatant initially (move into unit_stats?), just do fight() when required.

Member editor::brush_drag_mouse_action::previous_drag_hex_
keep a set of all "visited" locations to reduce action count in long drags that hit the same hexes multiple times?

Member editor::brush_drag_mouse_action::drag_end (editor_display &disp, int x, int y)
partial actions (the entire drag should end up as one action)

Member editor::brush_drag_mouse_action::drag_left (editor_display &disp, int x, int y, bool &partial, editor_action *last_undo)
partial actions support and merging of many drag actions into one

Member editor::brush_drag_mouse_action::drag_right (editor_display &disp, int x, int y, bool &partial, editor_action *last_undo)
partial actions support and merging of many drag actions into one

Member combatant::complex_fight (combatant &opponent, unsigned int rounds)
FIXME: This doesn't work for rolling calculations, just first battle.

Member combatant::fight (combatant &opponent, bool levelup_considered=true)
FIXME: This is approximate: we could drain, then get hit.

Class game_config::config_cache
Make smarter filetree checksum caching so only required parts of tree are checked at startup. Trees are overlapping so have to split trees to subtrees to only do check once per file.

Class game_config::config_cache
Make cache system easily allow validation of in memory cache objects using hash checksum of preproc_map.

Member gamemap::on_board (const map_location &loc) const
inline for performace? -- Ilor

Class gamemap
Update for new map-format.

Class ai::holder
1.9 move it out of public view

Member ai::manager::internal_evaluate_command (side_number side, const std::string &str)
1.9 rewrite this function to use a fai or lua parser.

Member editor::map_context::undo_stack_
Use boost's pointer-owning container?

Class map_location
Update for new map-format.

Member preprocessor_data::token_desc::type
FIXME: add enum for token type.

Member gui::scrollbar::scrollbar (CVideo &video)
FIXME: parameterlist ??

Member gui::scrollpane::scrollpane (CVideo &video)
FIXME: parameterlist ??

Member gui2::taddon_list::pre_show (CVideo &video, twindow &window)
do we really want to keep the length limit for the various items?

Class gui2::tbuilder_gridcell
refactor with the grid builder.

Member gui2::tcontrol::calculate_best_size () const
The value send should subtract the border size and readd it after calculation to get the proper result.

Member gui2::tbutton::connect_signal_mouse_left_click (const event::tsignal_function &signal)
Implement everywhere.

Member gui2::twidget::demand_reduce_height (const unsigned)
Make pure virtual.

Member gui2::twidget::demand_reduce_width (const unsigned)
Make pure virtual.

Member gui2::event::tdispatcher::fire (const tevent event, twidget &target, void *)
The firing needs some polishing.

Member gui2::tcontrol::layout_init (const bool full_initialization)
Also handle the tooltip state if shrunken_ && use_tooltip_on_label_overflow_.

Member gui2::event::tdispatcher::register_hotkey (const hotkey::HOTKEY_COMMAND id, const thotkey_function &function)
add a static function register_global_hotkey.

Member gui2::twidget::request_reduce_height (const unsigned)
Make pure virtual.

Member gui2::twidget::set_dirty (const bool dirty=true)
test whether nobody redefines the function.

Member gui2::tcontrol::set_members (const string_map &data)
document this feature on the wiki.

Member gui2::tcontrol::set_members (const string_map &data)
do we need to add the debug colours here as well?

Member gui2::tcanvas::tshape::put_pixel (ptrdiff_t start, Uint32 colour, unsigned w, unsigned x, unsigned y)
we're unoptimized maybe we should be removed and replaced by something more efficient, making us an inlined non-member function will probably already help.

Member gui2::tcontainer_::initial_grid ()
Evaluate whether this function is overridden if not remove.

Member gui2::tcontrol::renderer_
Maybe if still too slow we might also copy this cache to the canvas so it can reuse our results, but for now it seems fast enough. Unfortunately that would make the dependency between the classes bigger as wanted.

Member gui2::event::tdistributor::tdistributor (twidget &owner, const tdispatcher::tposition queue_position)
At construction we should get the state and from that moment on we keep track of the changes ourselves, not yet sure what happens when an input blocker is used.

Member gui2::event::tdistributor::signal_handler_notify_removal (tdispatcher &widget, const tevent event)
Evaluate whether moving the cleanup parts in the subclasses.

Member gui2::event::tdistributor::signal_handler_sdl_key_down (const SDLKey key, const SDLMod modifier, const Uint16 unicode)
Test whether recursion protection is needed.

Member gui2::event::tdistributor::signal_handler_sdl_key_down (const SDLKey key, const SDLMod modifier, const Uint16 unicode)
Make sure we're not in the event chain.

Member gui2::event::tdistributor::signal_handler_sdl_wheel ()
Test whether recursion protection is needed.

Member terrain_builder::rebuild_terrain (const map_location &loc)
TODO: rename this function

Member editor::terrain_palette::adjust_size ()
will be fixed later

Member gui2::tgenerator::titem::shown
functions now test for visible and shown, that can use some polishing.

Member gui2::tgrid::demand_reduce_height (const unsigned maximum_height)

Member gui2::tgrid::demand_reduce_width (const unsigned maximum_width)

Member gui2::tgrid::reduce_height (const unsigned maximum_height)

Member gui2::tgrid::reduce_width (const unsigned maximum_width)

Member gui2::tgrid::request_reduce_height (const unsigned maximum_height)
this point shouldn't be reached, find out why it does.

Member gui2::tgrid::request_reduce_height (const unsigned maximum_height)
Improve this code.

Member gui2::tgrid::request_reduce_width (const unsigned maximum_width)
this point shouldn't be reached, find out why it does.

Member gui2::tgrid::set_column_grow_factor (const unsigned column, const unsigned factor)
refer to a page with the layout manipulation info.

Member gui2::tgrid::set_row_grow_factor (const unsigned row, const unsigned factor)
refer to a page with the layout manipulation info.

Member gui2::event::thandler::draw ()
Need to evaluate which windows really to redraw.

Member gui2::event::thandler::handle_event (const SDL_Event &event)
Convert this to a proper new style event.

Member gui2::policy::placement::thorizontal_list::create_item (const unsigned index)

Member gui2::tscrollbar_::child_callback_positioner_moved ()
This is a kind of hack due to the fact there's no simple callback slot mechanism. See whether we can implement a generic way to attach callback which would remove quite some extra code.

Class gui2::policy::placement::tindependant

Member gui2::tlistbox::callback_value_changed_ )(twidget *)
the implementation of the callback hasn't been tested a lot and there might be too many calls. That might happen if an arrow up didn't change the selected item.

Member gui2::tscrollbar_container::content_resize_request (const bool force_sizing=false)
Try to handle auto_visible_first_run here as well.

Member gui2::tlistbox::finalize (tbuilder_grid_const_ptr header, tbuilder_grid_const_ptr footer, const std::vector< string_map > &list_data)
A listbox must have the following config parameters in the instanciation:
  • fixed row height?
  • fixed column width? and if so the following ways to set them
  • fixed depending on header ids
  • fixed depending on footer ids
  • fixed depending on first row ids
  • fixed depending on list (the user has to enter a list of ids)

Member gui2::tlistbox::list_item_clicked (twidget *caller)
Hack to capture the keyboard focus.

Member gui2::tlistbox::place (const tpoint &origin, const tpoint &size)
Work-around to set the selected item visible again.

Member gui2::tscrollbar_container::request_reduce_height (const unsigned maximum_height)
Evaluate whether sizing hints are required.

Member gui2::tlistbox::set_content_size (const tpoint &origin, const tpoint &size)
This function needs more testing.

Member gui2::tscrollbar_container::set_scrollbar_button_status ()
scrollbar visibility.

Class gui2::policy::placement::tmatrix

Member gui2::policy::minimum_selection::tone::delete_item (const unsigned index)
do_select_item needs to test for shown flag.

Class tportrait
this is a proof-of-concept version and undocumented. It should be documented later and also allow WML to modify the portraits. This all starts to make sense when the new dialogs become mainline.

Member gui2::tscroll_label::finalize_subclass ()
wrapping should be a label setting. This setting shoul be mutual exclusive with the horizontal scrollbar. Also the scroll_grid needs to set the status for the scrollbars.

Member gui2::tscrollbar_::tslider
Abstract the code so this friend is no longer needed.

Member gui2::tscrollbar_::recalculate ()
In the MP lobby it can happen that a listbox has first zero items, then gets filled and since there are no visible items the second assert after this block will be triggered. Use this ugly hack to avoid that case. (This hack also added the gui/widgets/window.hpp include.)

Class gui2::tscrollbar_container
events are not yet send to the content grid.

Member gui2::tslider::set_maximum_value (const int maximum_value)
maybe make it a VALIDATE.

Member gui2::tslider::set_minimum_value (const int minimum_value)
maybe make it a VALIDATE.

Member font::ttext::get_column_line (const gui2::tpoint &position) const
There's still a bug left. When you select a text which is in the ellipses on the right side the text gets reformatted with ellipses on the left and the selected character is not the one under the cursor. Other widget toolkits don't show ellipses and have no indication more text is available. Haven't found what the best thing to do would be. Until that time leave it as is.

Member font::ttext::set_maximum_height (int height, bool multiline=true)
See whether we can make pango 1.20 mandatory before Wesnoth 1.6 is released.

Member font::ttext::set_text (const std::string &text, const bool markedup)
Enable after 1.8.

Member gui2::ttext_::handle_key_left_arrow (SDLMod modifier, bool &handled)
implement the ctrl key.

Member gui2::ttext_::handle_key_right_arrow (SDLMod modifier, bool &handled)
implement the ctrl key.

Member gui2::ttoggle_panel::border_space () const
only due to the fact our definition is slightly different from tpanel_defintion we need to override this function and do about the same, look at a way to 'fix' that.

Member gui2::ttoggle_panel::find_at (const tpoint &coordinate, const bool must_be_active)
since there is no mouse event nesting (or event nesting at all) we need to capture all events. This means items on the panel will never receive an event, which gives problems with for example the intended button on the addon panel. So we need to chain mouse events as well and also add a handled flag for them.

Member gui2::ttoggle_panel::get_client_rect () const
only due to the fact our definition is slightly different from tpanel_defintion we need to override this function and do about the same, look at a way to 'fix' that.

Class gui2::ttooltip
Allow wrapping for the tooltip.

Member gui2::policy::placement::tvertical_list::create_item (const unsigned index)

Member gui2::twidget::linked_group_
For now the linked group is initialized when the layout of the widget is initialized. The best time to set it would be upon adding the widget in the window. Need to look whether it's possible in a clean way. Maybe a signal just prior to showing a window where the widget can do some of it's on things, would also be nice for widgets that need a finalizer function.

Member gui2::twindow::click_dismiss_
After testing the click dismiss feature it should be documented in the wiki.

Member gui2::twindow::tooltip_restorer_
the current way of showing a tooltip is a kind of hack which should be polished post 1.6.

Member gui2::twindow::add_linked_widget (const std::string &id, twidget *widget)
Untested if a new widget is added after showing the widgets.

Member gui2::twindow::add_to_keyboard_chain (twidget *widget)
rename to keyboard_add_to_chain.

Member gui2::twindow::draw ()
should probably be moved to event::thandler::draw.

Member gui2::twindow::layout ()
implement the scrollbars on the window.

Member gui2::twindow::remove_from_keyboard_chain (twidget *widget)
rename to keyboard_remove_from_chain.

Member gui2::twindow::set_enter_disabled (const bool enter_disabled)
this function should be merged with the hotkey support once that has been added.

Member gui2::twindow::set_escape_disabled (const bool escape_disabled)
this function should be merged with the hotkey support once that has been added.

Member gui2::twindow::show (const bool restore=true, const unsigned auto_close_timeout=0)
Clean up the code duplication.

Member gui2::twml_message_::pre_show (CVideo &video, twindow &window)
This function enables the wml markup for all items, but the interface is a bit hacky. Especially the fiddling in the internals of the listbox is ugly. There needs to be a clean interface to set whether a widget has a markup and what kind of markup. These fixes will be post 1.6.

Member gui2::twml_message_::pre_show (CVideo &video, twindow &window)
This syntax looks like a bad hack, it would be nice to write a new syntax which doesn't use those hacks (also avoids the problem with special meanings for certain characters.

Member mp::ui::handle_event (const SDL_Event &event)
find out why the help string stays visible and fix it

Member calculate_healing

Member reset_resting
FIXME: Try moving this to unit::new_turn, then move it above calculate_healing().

File manager.hpp
1.9 Refactor history handling and internal commands.

File manager.hpp
1.9 AI Interface command to clear the history.

Member rows_
FIXME: rename using _ at end.

Member exit_sighup
FIXME: should define SIGINT here too, but to what?

Member draw_panel
FixMe YogiHH: This is only made to have the buttons store their background information, otherwise the background will appear completely black. It would more straightforward to call bg_update, but that is not public and there seems to be no other way atm to call it. I will check if bg_update can be made public.

This hack can be removed once gui2 is finished.

enable portrait code in 1.7 and write a clean api.

it would be better to change recall_list() from a vector to a map and use the underlying_id as key.

FIXME: Check that store is automove bug safe

FIXME: we should design the WML to avoid these types of collisions; filters should be named consistently and always have a distinct scope.

random seems to be used quite often in mainline so need to see what the best solution to avoid rand and random.

also allow client to modify a side's colour if it is possible to change it on the fly without causing visual glitches

Member preferences::get_history (const std::string &id)
FIXME only used for gui2. Could be used for the above histories.

Member extract_summary_from_config
Ideally we should grab all leaders if there's more than 1 human player?

Member stretch_
Remove in 1.9.

File distributor.hpp
Finish hovering and tooltips.

Member gui2::distance (const int a, const int b)
once this works properly the assert can be removed and the code inlined.

Member gui2::show_message (CVideo &video, const std::string &title, const std::string &message, const tmessage::tbutton_style button_style, bool, bool)
implement the markup mode.

Member network::send_data (const config &cfg, connection connection_num, const bool gzipped, const std::string &packet_type)
Note the gzipped parameter should be removed later, we want to send all data gzipped. This can be done once the campaign server is also updated to work with gzipped data.

Member network::send_data_all_except (const config &cfg, connection connection_num, const bool gzipped, const std::string &packet_type)
Note the gzipped parameter should be removed later.

Member blur_alpha_surface
FIXME: This is just an adapted copy-paste of the normal blur but with blur alpha channel too

Member config_reload
FIXME: should define SIGINT here too, but to what?

Member main
errno should be passed here with the error or it might not be the true errno anymore. Seems to work good enough for now though.

File render.cpp
Translate relevant parts to GUI2.

File render.hpp
Translate relevant parts to GUI2.

Member repos
FIXME: the variable repository should be a class of variable.hpp, and not the game_state.

Namespace gui2
The items below are not implemented yet.

Namespace gui2
This implementation is quite a hack that needs to be rewritten cleanly

Page Event dispatching.
Describe drawing and resizing once the code is stable and working as wanted in these areas.

Page Event dispatching.
The hotkeys need to be implemented like above in 1.9.

Page Event dispatching.
This might change in the near future.

Page Event dispatching.
Validate the code it seems a down event with a captured mouse doesn't really work as wanted. (Rare case but should work properly.) In general the mouse event handling needs testing to see whether the proper events are send all the time.

Page Event dispatching.
Document further.

Generated by  Doxygen 1.6.0   Back to index