I have almost finished isolating the GUI part of gataxx and iagno from the functionality part. It is probably a good idea to make this a library (libboardgame). I have rewritten almost all functions, because it was really a mess. This is how it works:

A boardgame can use functions to interact with the gui, such as:
- void bg_set_piece(x, y, piece)
- int bg_get_piece(x, y)
- int props_get_black_level()
It can connect callback functions to events like:
- a new game has started
- preferences have changed
- a piece is selected

I haven't implemented the connecting of callback functions yet, but the rest seems to work pretty fine. Furthermore, some things have changed on the preferences tab:
- no more partial animation
- a "show grid" option is always shown
- tooltips on the various settings

I still have some questions about this:
- What should be done with "Quick moves"? Should this be on the player or on the appearance tab? Should this be a checkbox, or should there be radio buttons (slow, medium, fast) or should this be a integer inputbox where the speed can be put in? - Should stagger flips be supported? It is hard to implement, because no information can be stored on which pieces to move in which order. - Is there any help/guide on writing a for a library and what is this error about I am getting all the time?
- Is there an easy way to construct an API?
- Am I on the right track with this library?


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]