Skip to content

Ideas 2011:FIFE Pychan

Chris Oelmueller edited this page Feb 16, 2013 · 1 revision

Decouple FIFE from Guichan/Pychan

Our problem

One of our major issues we have encountered over the years has been how closely coupled FIFE is with Guichan. Because Guichan is no longer being actively developed many guichan bugs remain problems for FIFE. We have found ourselves stuck with Guichan.

Our idea

The basic idea would be to define a generic FIFE -> GUI interface and write an implementation of that interface for Guichan. Theoretically we could then use any 3rd party GUI library with FIFE by writing an interface for it.

Some features we would like to see implemented, but not limited to are:

  • Make Guichan an optional dependency for FIFE
  • Rename Guichan and modify/rename Pychan to use the new library (we are open to ideas here)
  • Fix some Guichan/Pychan tickets
  • Add some new features

Probably there are more areas that could be improved.

What you need

  • Excellent C++ programming skills
  • Possibly skills with Guichan or other GUI libraries
  • Self motivated work, FIFE devs are not always available.
  • Estimated difficulties: Reduce the impact on FIFE clients (keeping the python API changes to a minimum).
  • We expect a hard difficulty: You will need to dig into the FIFE code and python bindings, possibly proposing your own ideas for improvements.

What we provide

What we expect

You can shift around release goals and target dates in the planning stage as you like. Once your mentor and you agreed on a rough timetable, only light modifications should occur if there happens nothing unforeseeable.

  • No milestones from our side. Propose some to your mentors!
  • SoC Deadline: you implemented, documented and tested code which decoupled FIFE from Guichan.

What you can add

In general: If your mentor agrees, you can change almost everything in our descriptions. They are just meant to provide guidance if you are not sure where to start or which way to choose.

You are especially free to alter the following parts:

  • More features
  • Add additional support for another GUI library
  • Make a Guichan GUI WYSIWYG editor

Who looks after you

Your mentors for this task will be: prock, vtchill

Clone this wiki locally