Got questions, comments, patches, etc.?
Contact Jason Woofenden
gitweb
/
peach-cgt.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
480b41b
)
new cards in front, moved cards in front
author
Jason Woofenden
<jason@jasonwoof.com>
Tue, 1 Nov 2011 01:55:30 +0000
(21:55 -0400)
committer
Jason Woofenden
<jason@jasonwoof.com>
Tue, 1 Nov 2011 01:55:30 +0000
(21:55 -0400)
client.coffee
patch
|
blob
|
history
diff --git
a/client.coffee
b/client.coffee
index
82570dd
..
e02df72
100644
(file)
--- a/
client.coffee
+++ b/
client.coffee
@@
-4,6
+4,7
@@
table_height = 0
card_height = 0
state = null
server_url = null
card_height = 0
state = null
server_url = null
+top_card_z = 0 # css z-index of front-most card
show_message = (txt) -> txt
# FIXME implement chat box or something
show_message = (txt) -> txt
# FIXME implement chat box or something
@@
-32,9
+33,14
@@
transform_y = (y) ->
return y unless state.agent is 'p2'
return table_height - card_height - y
return y unless state.agent is 'p2'
return table_height - card_height - y
+next_card_z = -> return top_card_z += 1
+
+bring_card_to_front = (card) ->
+ card.view.css "z-index": next_card_z()
+
instantiate_card = (card) ->
text = card.text
instantiate_card = (card) ->
text = card.text
- view = $ $ "<div class=\"card\" style=\"left: #{transform_x(card.x)}px; top: #{transform_y(card.y)}px\"><span class=\"cardtext\">#{text}</span></div>"
+ view = $ $ "<div class=\"card\" style=\"left: #{transform_x(card.x)}px; top: #{transform_y(card.y)}px; z-index: #{next_card_z()}\"><span class=\"cardtext\">#{text}</span></div>"
button_box = $ $ '<div/>'
flip_button = new_button "flip over"
mark_button = new_button "mark"
button_box = $ $ '<div/>'
flip_button = new_button "flip over"
mark_button = new_button "mark"
@@
-52,6
+58,7
@@
instantiate_card = (card) ->
$table.append view
view.draggable stack: '.card'
view.bind 'dragstop', (event, ui) ->
$table.append view
view.draggable stack: '.card'
view.bind 'dragstop', (event, ui) ->
+ top_card_z = parseInt view.css 'z-index'
p = view.position()
state.move state.agent, card.number, transform_x(p.left), transform_y(p.top)
card.view = view
p = view.position()
state.move state.agent, card.number, transform_x(p.left), transform_y(p.top)
card.view = view
@@
-122,6
+129,7
@@
init = ->
if agent is me
tell_server ['move', agent, card, x, y]
else
if agent is me
tell_server ['move', agent, card, x, y]
else
+ bring_card_to_front state.cards[card]
state.cards[card].view.animate { left: "#{transform_x x}px", top: "#{transform_y y}px"}, 800
state.on 'mark', (agent, card, state) ->
@cards[card].view.toggleClass 'marked', state
state.cards[card].view.animate { left: "#{transform_x x}px", top: "#{transform_y y}px"}, 800
state.on 'mark', (agent, card, state) ->
@cards[card].view.toggleClass 'marked', state