lp:xmlrpc-cardgame

Created by Gryc Ueusp and last modified
Get this branch:
bzr branch lp:xmlrpc-cardgame
Only Gryc Ueusp can upload to this branch. If you are Gryc Ueusp please log in for upload directions.

Related bugs

Related blueprints

Branch information

Owner:
Gryc Ueusp
Project:
XML-RPC Cardgame
Status:
Development

Recent revisions

69. By Gryc Ueusp

Little changes here and there before I resume work. Also a Client class.

68. By Gryc Ueusp

Remove all references to rencode. Doesnt quite work over xmlrpc. Clients should use regular xml from now on.

67. By Gryc Ueusp

client.glade:
Added a menu item for inserting cards. This may be an admin function, but I'm the primary
user and I'm also the admin. Fortuitous.
Changed "Inspect Card"'s accelerator to be "p" instead of "i" to not conflict with "Insert
Card"

client.py:
Made a little progress on refresh_table(), but turns out I need most of the rest of the
methods implemented before I can do this. The unittests reflect this.

client_callbacks.py:
Started connecting on_newgame_activate, on_joingame_activate, and on_leavegame_activate.
Commented out the bits that made it spew the mouse coords and button presses.

server.py:
Clarified what get_game_info() returns, and made it behave accordingly.
get_area_state() might return [] now. This means there's no cards there (gasp!).

server_tests.py:
Added a note about a strange little issue regarding users already existing in a database
before the tests get run for the first time.
Made a couple tests more specific.

66. By Gryc Ueusp

Added missing docstring for server.py's init_logging()

65. By Gryc Ueusp

client.py:
Fixed some logfile path things.
Implemented new_game, join_game, and leave_game, and added tests.
Started implementing refresh_table, but far from done.
changed the wrong uri test to something else, so the tests dont take two
minutes to run when there's no network connection.
Made the test for saving settings a little better.

client_callbacks.py:
Started to implement the callback for refreshing the table. Doesnt work
yet because client.refresh_table() isnt done yet.
Added some notes for moving objects around on the table.

client_gtk.py:
Changed the import of py_compile to actually be called py_compile,
instead of overriding the builtin compile, which pylint complains about.
Fixed some minor whitespace-between-operators things, as well as some
more-than-one-statement-on-a-line things.

server.py:
Change Table()'s init to take a log_file path as well as a log_level.
Set log_file and db_conn as class variables.
Added init_logging() from client.py to this. Makes logging class-based,
and cleans up all that module-level crap up.
Changed _execute_query() to use a persistent sqlite connection. This
makes it quite fast, and wont negatively effect it if its used as a cgi.
Changed all the calls to log.* to self.log.*
Added validation of session_id to create_game()

server_tests.py:
Changed it to use a shared instance of server.Table(), but not really.
It creats on in setUp(), but then is cleared on tearDown(). This lets
us use one set of settings (say, for logging) for all the tests. The
individual tests can still make their own instance if they need to.

64. By Gryc Ueusp

Added the new piemenu, and it actually shows up on right click now, but it doesnt actually do anything yet.

63. By Gryc Ueusp

Added the beginnings off a right-click pie menu, as well as pointer motion detection and other mousebutton press detection.

62. By Gryc Ueusp

Made the svg screen resize if the window is resized. ATM it just stretches, so if the aspect ratio changes it'll look wrong. Cards will need to have a transform applied to them or the whole point of being able to resize (get more screen space, on which to place more cards) will be impossible.

61. By Gryc Ueusp

Figured out the recipe for showing svgs and having the screen actually refresh consistently.
As a consequence, added the first iteration of 'show the user if they're actually signed in or not' in the form of grey or green circles.

60. By Gryc Ueusp

Added some NOTES for doing screen updating to show areas, cards and such. It will be SVG,
and will probably need a bit more logic than the notes suggest. For example, getting
permissions in order to invert cards owned by an opponent, or showing card-backs if they
dont have read permissions.
Added a stub for refresh_table() in client.py
Added a string of svg data (screensvg) for the various callbacks to modify during the course
of their execution, which cairo will dutifully render when it feels like it.
Made the draw() function take an svg instead of a width and height. This will probably
change.
Added a star with some blur for testing purposes (default.svg)
Added a green circle for testing purposes (loggedin.svg)
Added the traditional svg test file, The SVG Tiger.

Made server.py's get_game_info() return a list of area_ids in the game as well.
Added an area_id_to_area_name() function and added a test for it. More thought needs
expended on this. I dont like it.

Branch metadata

Branch format:
Branch format 6
Repository format:
Bazaar pack repository format 1 (needs bzr 0.92)
This branch contains Public information 
Everyone can see this information.

Subscribers

No subscribers.