Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Donald Haase
Cockatrice
Commits
beaa4e93
Commit
beaa4e93
authored
Aug 09, 2015
by
marco
Browse files
Configurable shortcuts
parent
b0bf94e3
Changes
17
Hide whitespace changes
Inline
Side-by-side
cockatrice/CMakeLists.txt
View file @
beaa4e93
...
@@ -95,6 +95,8 @@ SET(cockatrice_SOURCES
...
@@ -95,6 +95,8 @@ SET(cockatrice_SOURCES
src/soundengine.cpp
src/soundengine.cpp
src/pending_command.cpp
src/pending_command.cpp
src/shortcutssettings.cpp
src/shortcutssettings.cpp
src/sequenceEdit/secuenceedit.cpp
src/sequenceEdit/shortcutstab.cpp
${
VERSION_STRING_CPP
}
${
VERSION_STRING_CPP
}
)
)
...
...
cockatrice/cockatrice.qrc
View file @
beaa4e93
<RCC>
<RCC>
<qresource prefix="/" >
<qresource prefix="/">
<file alias="back.svg" >resources/back.svg</file>
<file alias="back.svg">resources/back.svg</file>
<file>resources/lock.svg</file>
<file>resources/lock.svg</file>
<file>resources/icon_delete.svg</file>
<file>resources/icon_delete.svg</file>
<file>resources/icon_tab_changed.svg</file>
<file>resources/icon_tab_changed.svg</file>
<file>resources/icon_config_general.svg</file>
<file>resources/icon_config_general.svg</file>
<file>resources/icon_config_appearance.svg</file>
<file>resources/icon_config_appearance.svg</file>
<file>resources/icon_config_interface.svg</file>
<file>resources/icon_config_interface.svg</file>
<file>resources/icon_config_messages.svg</file>
<file>resources/icon_config_messages.svg</file>
<file>resources/icon_config_deckeditor.svg</file>
<file>resources/icon_config_deckeditor.svg</file>
<file>resources/icon_config_sound.svg</file>
<file>resources/icon_config_sound.svg</file>
<file>resources/phases/icon_phase_untap.svg</file>
<file>resources/phases/icon_phase_untap.svg</file>
<file>resources/phases/icon_phase_upkeep.svg</file>
<file>resources/phases/icon_phase_upkeep.svg</file>
<file>resources/phases/icon_phase_draw.svg</file>
<file>resources/phases/icon_phase_draw.svg</file>
<file>resources/phases/icon_phase_main1.svg</file>
<file>resources/phases/icon_phase_main1.svg</file>
<file>resources/phases/icon_phase_combat_start.svg</file>
<file>resources/phases/icon_phase_combat_start.svg</file>
<file>resources/phases/icon_phase_combat_attackers.svg</file>
<file>resources/phases/icon_phase_combat_attackers.svg</file>
<file>resources/phases/icon_phase_combat_blockers.svg</file>
<file>resources/phases/icon_phase_combat_blockers.svg</file>
<file>resources/phases/icon_phase_combat_damage.svg</file>
<file>resources/phases/icon_phase_combat_damage.svg</file>
<file>resources/phases/icon_phase_combat_end.svg</file>
<file>resources/phases/icon_phase_combat_end.svg</file>
<file>resources/phases/icon_phase_main2.svg</file>
<file>resources/phases/icon_phase_main2.svg</file>
<file>resources/phases/icon_phase_cleanup.svg</file>
<file>resources/phases/icon_phase_cleanup.svg</file>
<file>resources/phases/icon_phase_nextturn.svg</file>
<file>resources/phases/icon_phase_nextturn.svg</file>
<file>resources/icon_settings.svg</file>
<file>resources/icon_settings.svg</file>
<file>resources/hand.svg</file>
<file>resources/hand.svg</file>
<file>resources/pencil.svg</file>
<file>resources/pencil.svg</file>
<file>resources/icon_search_black.svg</file>
<file>resources/icon_search_black.svg</file>
<file>resources/icon_clearsearch.svg</file>
<file>resources/icon_clearsearch.svg</file>
<file>resources/icon_update.png</file>
<file>resources/icon_update.png</file>
<file>resources/icon_view.svg</file>
<file>resources/icon_view.svg</file>
<file>resources/hr.jpg</file>
<file>resources/hr.jpg</file>
<file alias="resources/appicon.svg">resources/cockatrice.svg</file>
<file alias="resources/appicon.svg">resources/cockatrice.svg</file>
<file>resources/add_to_sideboard.svg</file>
<file>resources/add_to_sideboard.svg</file>
<file>resources/decrement.svg</file>
<file>resources/decrement.svg</file>
<file>resources/increment.svg</file>
<file>resources/increment.svg</file>
<file>resources/remove_row.svg</file>
<file>resources/remove_row.svg</file>
<file>resources/arrow_left_green.svg</file>
<file>resources/arrow_left_green.svg</file>
<file>resources/arrow_right_green.svg</file>
<file>resources/arrow_right_green.svg</file>
<file>resources/arrow_top_green.svg</file>
<file>resources/arrow_up_green.svg</file>
<file>resources/arrow_top_green.svg</file>
<file>resources/arrow_down_green.svg</file>
<file>resources/arrow_up_green.svg</file>
<file>resources/arrow_bottom_green.svg</file>
<file>resources/arrow_down_green.svg</file>
<file>resources/icon_ready_start.svg</file>
<file>resources/arrow_bottom_green.svg</file>
<file>resources/icon_not_ready_start.svg</file>
<file>resources/icon_conceded.svg</file>
<file>resources/icon_ready_start.svg</file>
<file>resources/icon_player.svg</file>
<file>resources/icon_not_ready_start.svg</file>
<file>resources/icon_spectator.svg</file>
<file>resources/icon_conceded.svg</file>
<file>resources/replay_start.svg</file>
<file>resources/icon_player.svg</file>
<file>resources/replay_fastforward.svg</file>
<file>resources/icon_spectator.svg</file>
<file>resources/replay_pause.svg</file>
<file>resources/genders/male.svg</file>
<file>resources/replay_start.svg</file>
<file>resources/genders/female.svg</file>
<file>resources/replay_fastforward.svg</file>
<file>resources/genders/unknown.svg</file>
<file>resources/replay_pause.svg</file>
<file>resources/countries/ad.svg</file>
<file>resources/countries/ae.svg</file>
<file>resources/genders/male.svg</file>
<file>resources/countries/af.svg</file>
<file>resources/genders/female.svg</file>
<file>resources/countries/ag.svg</file>
<file>resources/genders/unknown.svg</file>
<file>resources/countries/ai.svg</file>
<file>resources/countries/al.svg</file>
<file>resources/countries/ad.svg</file>
<file>resources/countries/am.svg</file>
<file>resources/countries/ae.svg</file>
<file>resources/countries/ao.svg</file>
<file>resources/countries/af.svg</file>
<file>resources/countries/aq.svg</file>
<file>resources/countries/ag.svg</file>
<file>resources/countries/ar.svg</file>
<file>resources/countries/ai.svg</file>
<file>resources/countries/as.svg</file>
<file>resources/countries/al.svg</file>
<file>resources/countries/at.svg</file>
<file>resources/countries/am.svg</file>
<file>resources/countries/au.svg</file>
<file>resources/countries/ao.svg</file>
<file>resources/countries/aw.svg</file>
<file>resources/countries/aq.svg</file>
<file>resources/countries/ax.svg</file>
<file>resources/countries/ar.svg</file>
<file>resources/countries/az.svg</file>
<file>resources/countries/as.svg</file>
<file>resources/countries/ba.svg</file>
<file>resources/countries/at.svg</file>
<file>resources/countries/bb.svg</file>
<file>resources/countries/au.svg</file>
<file>resources/countries/bd.svg</file>
<file>resources/countries/aw.svg</file>
<file>resources/countries/be.svg</file>
<file>resources/countries/ax.svg</file>
<file>resources/countries/bf.svg</file>
<file>resources/countries/az.svg</file>
<file>resources/countries/bg.svg</file>
<file>resources/countries/ba.svg</file>
<file>resources/countries/bh.svg</file>
<file>resources/countries/bb.svg</file>
<file>resources/countries/bi.svg</file>
<file>resources/countries/bd.svg</file>
<file>resources/countries/bj.svg</file>
<file>resources/countries/be.svg</file>
<file>resources/countries/bl.svg</file>
<file>resources/countries/bf.svg</file>
<file>resources/countries/bm.svg</file>
<file>resources/countries/bg.svg</file>
<file>resources/countries/bn.svg</file>
<file>resources/countries/bh.svg</file>
<file>resources/countries/bo.svg</file>
<file>resources/countries/bi.svg</file>
<file>resources/countries/bq.svg</file>
<file>resources/countries/bj.svg</file>
<file>resources/countries/br.svg</file>
<file>resources/countries/bl.svg</file>
<file>resources/countries/bs.svg</file>
<file>resources/countries/bm.svg</file>
<file>resources/countries/bt.svg</file>
<file>resources/countries/bn.svg</file>
<file>resources/countries/bv.svg</file>
<file>resources/countries/bo.svg</file>
<file>resources/countries/bw.svg</file>
<file>resources/countries/bq.svg</file>
<file>resources/countries/by.svg</file>
<file>resources/countries/br.svg</file>
<file>resources/countries/bz.svg</file>
<file>resources/countries/bs.svg</file>
<file>resources/countries/ca.svg</file>
<file>resources/countries/bt.svg</file>
<file>resources/countries/cc.svg</file>
<file>resources/countries/bv.svg</file>
<file>resources/countries/cd.svg</file>
<file>resources/countries/bw.svg</file>
<file>resources/countries/cf.svg</file>
<file>resources/countries/by.svg</file>
<file>resources/countries/cg.svg</file>
<file>resources/countries/bz.svg</file>
<file>resources/countries/ch.svg</file>
<file>resources/countries/ca.svg</file>
<file>resources/countries/ci.svg</file>
<file>resources/countries/cc.svg</file>
<file>resources/countries/ck.svg</file>
<file>resources/countries/cd.svg</file>
<file>resources/countries/cl.svg</file>
<file>resources/countries/cf.svg</file>
<file>resources/countries/cm.svg</file>
<file>resources/countries/cg.svg</file>
<file>resources/countries/cn.svg</file>
<file>resources/countries/ch.svg</file>
<file>resources/countries/co.svg</file>
<file>resources/countries/ci.svg</file>
<file>resources/countries/cr.svg</file>
<file>resources/countries/ck.svg</file>
<file>resources/countries/cu.svg</file>
<file>resources/countries/cl.svg</file>
<file>resources/countries/cv.svg</file>
<file>resources/countries/cm.svg</file>
<file>resources/countries/cw.svg</file>
<file>resources/countries/cn.svg</file>
<file>resources/countries/cx.svg</file>
<file>resources/countries/co.svg</file>
<file>resources/countries/cy.svg</file>
<file>resources/countries/cr.svg</file>
<file>resources/countries/cz.svg</file>
<file>resources/countries/cu.svg</file>
<file>resources/countries/de.svg</file>
<file>resources/countries/cv.svg</file>
<file>resources/countries/dj.svg</file>
<file>resources/countries/cw.svg</file>
<file>resources/countries/dk.svg</file>
<file>resources/countries/cx.svg</file>
<file>resources/countries/dm.svg</file>
<file>resources/countries/cy.svg</file>
<file>resources/countries/do.svg</file>
<file>resources/countries/cz.svg</file>
<file>resources/countries/dz.svg</file>
<file>resources/countries/de.svg</file>
<file>resources/countries/ec.svg</file>
<file>resources/countries/dj.svg</file>
<file>resources/countries/ee.svg</file>
<file>resources/countries/dk.svg</file>
<file>resources/countries/eg.svg</file>
<file>resources/countries/dm.svg</file>
<file>resources/countries/eh.svg</file>
<file>resources/countries/do.svg</file>
<file>resources/countries/er.svg</file>
<file>resources/countries/dz.svg</file>
<file>resources/countries/es.svg</file>
<file>resources/countries/ec.svg</file>
<file>resources/countries/et.svg</file>
<file>resources/countries/ee.svg</file>
<file>resources/countries/fi.svg</file>
<file>resources/countries/eg.svg</file>
<file>resources/countries/fj.svg</file>
<file>resources/countries/eh.svg</file>
<file>resources/countries/fk.svg</file>
<file>resources/countries/er.svg</file>
<file>resources/countries/fm.svg</file>
<file>resources/countries/es.svg</file>
<file>resources/countries/fo.svg</file>
<file>resources/countries/et.svg</file>
<file>resources/countries/fr.svg</file>
<file>resources/countries/fi.svg</file>
<file>resources/countries/ga.svg</file>
<file>resources/countries/fj.svg</file>
<file>resources/countries/gb.svg</file>
<file>resources/countries/fk.svg</file>
<file>resources/countries/gd.svg</file>
<file>resources/countries/fm.svg</file>
<file>resources/countries/ge.svg</file>
<file>resources/countries/fo.svg</file>
<file>resources/countries/gf.svg</file>
<file>resources/countries/fr.svg</file>
<file>resources/countries/gg.svg</file>
<file>resources/countries/ga.svg</file>
<file>resources/countries/gh.svg</file>
<file>resources/countries/gb.svg</file>
<file>resources/countries/gi.svg</file>
<file>resources/countries/gd.svg</file>
<file>resources/countries/gl.svg</file>
<file>resources/countries/ge.svg</file>
<file>resources/countries/gm.svg</file>
<file>resources/countries/gf.svg</file>
<file>resources/countries/gn.svg</file>
<file>resources/countries/gg.svg</file>
<file>resources/countries/gp.svg</file>
<file>resources/countries/gh.svg</file>
<file>resources/countries/gq.svg</file>
<file>resources/countries/gi.svg</file>
<file>resources/countries/gr.svg</file>
<file>resources/countries/gl.svg</file>
<file>resources/countries/gs.svg</file>
<file>resources/countries/gm.svg</file>
<file>resources/countries/gt.svg</file>
<file>resources/countries/gn.svg</file>
<file>resources/countries/gu.svg</file>
<file>resources/countries/gp.svg</file>
<file>resources/countries/gw.svg</file>
<file>resources/countries/gq.svg</file>
<file>resources/countries/gy.svg</file>
<file>resources/countries/gr.svg</file>
<file>resources/countries/hk.svg</file>
<file>resources/countries/gs.svg</file>
<file>resources/countries/hm.svg</file>
<file>resources/countries/gt.svg</file>
<file>resources/countries/hn.svg</file>
<file>resources/countries/gu.svg</file>
<file>resources/countries/hr.svg</file>
<file>resources/countries/gw.svg</file>
<file>resources/countries/ht.svg</file>
<file>resources/countries/gy.svg</file>
<file>resources/countries/hu.svg</file>
<file>resources/countries/hk.svg</file>
<file>resources/countries/id.svg</file>
<file>resources/countries/hm.svg</file>
<file>resources/countries/ie.svg</file>
<file>resources/countries/hn.svg</file>
<file>resources/countries/il.svg</file>
<file>resources/countries/hr.svg</file>
<file>resources/countries/im.svg</file>
<file>resources/countries/ht.svg</file>
<file>resources/countries/in.svg</file>
<file>resources/countries/hu.svg</file>
<file>resources/countries/io.svg</file>
<file>resources/countries/id.svg</file>
<file>resources/countries/iq.svg</file>
<file>resources/countries/ie.svg</file>
<file>resources/countries/ir.svg</file>
<file>resources/countries/il.svg</file>
<file>resources/countries/is.svg</file>
<file>resources/countries/im.svg</file>
<file>resources/countries/it.svg</file>
<file>resources/countries/in.svg</file>
<file>resources/countries/je.svg</file>
<file>resources/countries/io.svg</file>
<file>resources/countries/jm.svg</file>
<file>resources/countries/iq.svg</file>
<file>resources/countries/jo.svg</file>
<file>resources/countries/ir.svg</file>
<file>resources/countries/jp.svg</file>
<file>resources/countries/is.svg</file>
<file>resources/countries/ke.svg</file>
<file>resources/countries/it.svg</file>
<file>resources/countries/kg.svg</file>
<file>resources/countries/je.svg</file>
<file>resources/countries/kh.svg</file>
<file>resources/countries/jm.svg</file>
<file>resources/countries/ki.svg</file>
<file>resources/countries/jo.svg</file>
<file>resources/countries/km.svg</file>
<file>resources/countries/jp.svg</file>
<file>resources/countries/kn.svg</file>
<file>resources/countries/ke.svg</file>
<file>resources/countries/kp.svg</file>
<file>resources/countries/kg.svg</file>
<file>resources/countries/kr.svg</file>
<file>resources/countries/kh.svg</file>
<file>resources/countries/kw.svg</file>
<file>resources/countries/ki.svg</file>
<file>resources/countries/ky.svg</file>
<file>resources/countries/km.svg</file>
<file>resources/countries/kz.svg</file>
<file>resources/countries/kn.svg</file>
<file>resources/countries/la.svg</file>
<file>resources/countries/kp.svg</file>
<file>resources/countries/lb.svg</file>
<file>resources/countries/kr.svg</file>
<file>resources/countries/lc.svg</file>
<file>resources/countries/kw.svg</file>
<file>resources/countries/li.svg</file>
<file>resources/countries/ky.svg</file>
<file>resources/countries/lk.svg</file>
<file>resources/countries/kz.svg</file>
<file>resources/countries/lr.svg</file>
<file>resources/countries/la.svg</file>
<file>resources/countries/ls.svg</file>
<file>resources/countries/lb.svg</file>
<file>resources/countries/lt.svg</file>
<file>resources/countries/lc.svg</file>
<file>resources/countries/lu.svg</file>
<file>resources/countries/li.svg</file>
<file>resources/countries/lv.svg</file>
<file>resources/countries/lk.svg</file>
<file>resources/countries/ly.svg</file>
<file>resources/countries/lr.svg</file>
<file>resources/countries/ma.svg</file>
<file>resources/countries/ls.svg</file>
<file>resources/countries/mc.svg</file>
<file>resources/countries/lt.svg</file>
<file>resources/countries/md.svg</file>
<file>resources/countries/lu.svg</file>
<file>resources/countries/me.svg</file>
<file>resources/countries/lv.svg</file>
<file>resources/countries/mf.svg</file>
<file>resources/countries/ly.svg</file>
<file>resources/countries/mg.svg</file>
<file>resources/countries/ma.svg</file>
<file>resources/countries/mh.svg</file>
<file>resources/countries/mc.svg</file>
<file>resources/countries/mk.svg</file>
<file>resources/countries/md.svg</file>
<file>resources/countries/ml.svg</file>
<file>resources/countries/me.svg</file>
<file>resources/countries/mm.svg</file>
<file>resources/countries/mf.svg</file>
<file>resources/countries/mn.svg</file>
<file>resources/countries/mg.svg</file>
<file>resources/countries/mo.svg</file>
<file>resources/countries/mh.svg</file>
<file>resources/countries/mp.svg</file>
<file>resources/countries/mk.svg</file>
<file>resources/countries/mq.svg</file>
<file>resources/countries/ml.svg</file>
<file>resources/countries/mr.svg</file>
<file>resources/countries/mm.svg</file>
<file>resources/countries/ms.svg</file>
<file>resources/countries/mn.svg</file>
<file>resources/countries/mt.svg</file>
<file>resources/countries/mo.svg</file>
<file>resources/countries/mu.svg</file>
<file>resources/countries/mp.svg</file>
<file>resources/countries/mv.svg</file>
<file>resources/countries/mq.svg</file>
<file>resources/countries/mw.svg</file>
<file>resources/countries/mr.svg</file>
<file>resources/countries/mx.svg</file>
<file>resources/countries/ms.svg</file>
<file>resources/countries/my.svg</file>
<file>resources/countries/mt.svg</file>
<file>resources/countries/mz.svg</file>
<file>resources/countries/mu.svg</file>
<file>resources/countries/na.svg</file>
<file>resources/countries/mv.svg</file>
<file>resources/countries/nc.svg</file>
<file>resources/countries/mw.svg</file>
<file>resources/countries/ne.svg</file>
<file>resources/countries/mx.svg</file>
<file>resources/countries/nf.svg</file>
<file>resources/countries/my.svg</file>
<file>resources/countries/ng.svg</file>
<file>resources/countries/mz.svg</file>
<file>resources/countries/ni.svg</file>
<file>resources/countries/na.svg</file>
<file>resources/countries/nl.svg</file>
<file>resources/countries/nc.svg</file>
<file>resources/countries/no.svg</file>
<file>resources/countries/ne.svg</file>
<file>resources/countries/np.svg</file>
<file>resources/countries/nf.svg</file>
<file>resources/countries/nr.svg</file>
<file>resources/countries/ng.svg</file>
<file>resources/countries/nu.svg</file>
<file>resources/countries/ni.svg</file>
<file>resources/countries/nz.svg</file>
<file>resources/countries/nl.svg</file>
<file>resources/countries/om.svg</file>
<file>resources/countries/no.svg</file>
<file>resources/countries/pa.svg</file>
<file>resources/countries/np.svg</file>
<file>resources/countries/pe.svg</file>
<file>resources/countries/nr.svg</file>
<file>resources/countries/pf.svg</file>
<file>resources/countries/nu.svg</file>
<file>resources/countries/pg.svg</file>
<file>resources/countries/nz.svg</file>
<file>resources/countries/ph.svg</file>
<file>resources/countries/om.svg</file>
<file>resources/countries/pk.svg</file>
<file>resources/countries/pa.svg</file>
<file>resources/countries/pl.svg</file>
<file>resources/countries/pe.svg</file>
<file>resources/countries/pm.svg</file>
<file>resources/countries/pf.svg</file>
<file>resources/countries/pn.svg</file>
<file>resources/countries/pg.svg</file>
<file>resources/countries/pr.svg</file>
<file>resources/countries/ph.svg</file>
<file>resources/countries/ps.svg</file>
<file>resources/countries/pk.svg</file>
<file>resources/countries/pt.svg</file>
<file>resources/countries/pl.svg</file>
<file>resources/countries/pw.svg</file>
<file>resources/countries/pm.svg</file>
<file>resources/countries/py.svg</file>
<file>resources/countries/pn.svg</file>
<file>resources/countries/qa.svg</file>
<file>resources/countries/pr.svg</file>
<file>resources/countries/re.svg</file>
<file>resources/countries/ps.svg</file>
<file>resources/countries/ro.svg</file>
<file>resources/countries/pt.svg</file>
<file>resources/countries/rs.svg</file>
<file>resources/countries/pw.svg</file>
<file>resources/countries/ru.svg</file>
<file>resources/countries/py.svg</file>
<file>resources/countries/rw.svg</file>
<file>resources/countries/qa.svg</file>
<file>resources/countries/sa.svg</file>
<file>resources/countries/re.svg</file>
<file>resources/countries/sb.svg</file>
<file>resources/countries/ro.svg</file>
<file>resources/countries/sc.svg</file>
<file>resources/countries/rs.svg</file>
<file>resources/countries/sd.svg</file>
<file>resources/countries/ru.svg</file>
<file>resources/countries/se.svg</file>
<file>resources/countries/rw.svg</file>
<file>resources/countries/sg.svg</file>
<file>resources/countries/sa.svg</file>
<file>resources/countries/sh.svg</file>
<file>resources/countries/sb.svg</file>
<file>resources/countries/si.svg</file>
<file>resources/countries/sc.svg</file>
<file>resources/countries/sj.svg</file>
<file>resources/countries/sd.svg</file>
<file>resources/countries/sk.svg</file>
<file>resources/countries/se.svg</file>
<file>resources/countries/sl.svg</file>
<file>resources/countries/sg.svg</file>
<file>resources/countries/sm.svg</file>
<file>resources/countries/sh.svg</file>
<file>resources/countries/sn.svg</file>
<file>resources/countries/si.svg</file>
<file>resources/countries/so.svg</file>
<file>resources/countries/sj.svg</file>
<file>resources/countries/sr.svg</file>
<file>resources/countries/sk.svg</file>
<file>resources/countries/ss.svg</file>
<file>resources/countries/sl.svg</file>
<file>resources/countries/st.svg</file>
<file>resources/countries/sm.svg</file>
<file>resources/countries/sv.svg</file>
<file>resources/countries/sn.svg</file>
<file>resources/countries/sx.svg</file>
<file>resources/countries/so.svg</file>
<file>resources/countries/sy.svg</file>
<file>resources/countries/sr.svg</file>
<file>resources/countries/sz.svg</file>
<file>resources/countries/ss.svg</file>
<file>resources/countries/tc.svg</file>
<file>resources/countries/st.svg</file>
<file>resources/countries/td.svg</file>
<file>resources/countries/sv.svg</file>
<file>resources/countries/tf.svg</file>
<file>resources/countries/sx.svg</file>
<file>resources/countries/tg.svg</file>
<file>resources/countries/sy.svg</file>
<file>resources/countries/th.svg</file>
<file>resources/countries/sz.svg</file>
<file>resources/countries/tj.svg</file>
<file>resources/countries/tc.svg</file>
<file>resources/countries/tk.svg</file>
<file>resources/countries/td.svg</file>
<file>resources/countries/tl.svg</file>
<file>resources/countries/tf.svg</file>
<file>resources/countries/tm.svg</file>
<file>resources/countries/tg.svg</file>
<file>resources/countries/tn.svg</file>
<file>resources/countries/th.svg</file>
<file>resources/countries/to.svg</file>
<file>resources/countries/tj.svg</file>
<file>resources/countries/tr.svg</file>
<file>resources/countries/tk.svg</file>
<file>resources/countries/tt.svg</file>
<file>resources/countries/tl.svg</file>
<file>resources/countries/tv.svg</file>
<file>resources/countries/tm.svg</file>
<file>resources/countries/tw.svg</file>
<file>resources/countries/tn.svg</file>
<file>resources/countries/tz.svg</file>
<file>resources/countries/to.svg</file>
<file>resources/countries/ua.svg</file>
<file>resources/countries/tr.svg</file>
<file>resources/countries/ug.svg</file>
<file>resources/countries/tt.svg</file>
<file>resources/countries/um.svg</file>
<file>resources/countries/tv.svg</file>
<file>resources/countries/us.svg</file>
<file>resources/countries/tw.svg</file>
<file>resources/countries/uy.svg</file>
<file>resources/countries/tz.svg</file>
<file>resources/countries/uz.svg</file>
<file>resources/countries/ua.svg</file>
<file>resources/countries/va.svg</file>
<file>resources/countries/ug.svg</file>
<file>resources/countries/vc.svg</file>
<file>resources/countries/um.svg</file>
<file>resources/countries/ve.svg</file>
<file>resources/countries/us.svg</file>
<file>resources/countries/vg.svg</file>
<file>resources/countries/uy.svg</file>
<file>resources/countries/vi.svg</file>
<file>resources/countries/uz.svg</file>
<file>resources/countries/vn.svg</file>
<file>resources/countries/va.svg</file>
<file>resources/countries/vu.svg</file>
<file>resources/countries/vc.svg</file>
<file>resources/countries/wf.svg</file>
<file>resources/countries/ve.svg</file>
<file>resources/countries/ws.svg</file>
<file>resources/countries/vg.svg</file>
<file>resources/countries/ye.svg</file>
<file>resources/countries/vi.svg</file>
<file>resources/countries/yt.svg</file>
<file>resources/countries/vn.svg</file>
<file>resources/countries/za.svg</file>
<file>resources/countries/vu.svg</file>
<file>resources/countries/zm.svg</file>
<file>resources/countries/wf.svg</file>
<file>resources/countries/zw.svg</file>
<file>resources/countries/ws.svg</file>
<file>resources/counters/w.svg</file>
<file>resources/countries/ye.svg</file>
<file>resources/counters/w_highlight.svg</file>
<file>resources/countries/yt.svg</file>
<file>resources/counters/u.svg</file>
<file>resources/countries/za.svg</file>
<file>resources/counters/u_highlight.svg</file>
<file>resources/countries/zm.svg</file>
<file>resources/counters/b.svg</file>
<file>resources/countries/zw.svg</file>
<file>resources/counters/b_highlight.svg</file>
<file>resources/counters/r.svg</file>
<file>resources/counters/w.svg</file>
<file>resources/counters/r_highlight.svg</file>
<file>resources/counters/w_highlight.svg</file>
<file>resources/counters/g.svg</file>
<file>resources/counters/u.svg</file>
<file>resources/counters/g_highlight.svg</file>
<file>resources/counters/u_highlight.svg</file>
<file>resources/counters/storm.svg</file>
<file>resources/counters/b.svg</file>
<file>resources/counters/storm_highlight.svg</file>
<file>resources/counters/b_highlight.svg</file>
<file>resources/counters/general.svg</file>
<file>resources/counters/r.svg</file>
<file>resources/counters/general_highlight.svg</file>
<file>resources/counters/r_highlight.svg</file>
<file>resources/userlevels/normal.svg</file>
<file>resources/counters/g.svg</file>
<file>resources/userlevels/registered.svg</file>
<file>resources/counters/g_highlight.svg</file>
<file>resources/userlevels/registered_buddy.svg</file>
<file>resources/counters/storm.svg</file>
<file>resources/userlevels/moderator.svg</file>
<file>resources/counters/storm_highlight.svg</file>
<file>resources/userlevels/moderator_buddy.svg</file>
<file>resources/counters/general.svg</file>
<file>resources/userlevels/admin.svg</file>
<file>resources/counters/general_highlight.svg</file>
<file>resources/userlevels/admin_buddy.svg</file>
<file>resources/news/exclamation_mark.svg</file>
<file>resources/userlevels/normal.svg</file>
<file>resources/news/question_mark.svg</file>
<file>resources/userlevels/registered.svg</file>
<file>resources/icon_config_shorcuts.svg</file>
<file>resources/userlevels/registered_buddy.svg</file>
</qresource>
<file>resources/userlevels/moderator.svg</file>
<file>resources/userlevels/moderator_buddy.svg</file>
<file>resources/userlevels/admin.svg</file>
<file>resources/userlevels/admin_buddy.svg</file>
<file>resources/news/exclamation_mark.svg</file>
<file>resources/news/question_mark.svg</file>
</qresource>
</RCC>
</RCC>
cockatrice/resources/icon_config_shorcuts.svg
0 → 100644
View file @
beaa4e93
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc=
"http://purl.org/dc/elements/1.1/"
xmlns:cc=
"http://creativecommons.org/ns#"
xmlns:rdf=
"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg=
"http://www.w3.org/2000/svg"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
xmlns:sodipodi=
"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape=
"http://www.inkscape.org/namespaces/inkscape"
width=
"500"
height=
"500"
id=
"svg2"
version=
"1.1"
inkscape:version=
"0.91 r13725"
sodipodi:docname=
"icon_config_shorcuts.svg"
>
<defs
id=
"defs4"
>
<inkscape:path-effect
effect=
"bend_path"
id=
"path-effect3618"
is_visible=
"true"
bendpath=
"m 142.49072,814.69439 c 81.91729,17.90777 153.31508,14.77655 218.89021,0"
prop_scale=
"1"
scale_y_rel=
"false"
vertical=
"false"
bendpath-nodetypes=
"cc"
/>
<inkscape:perspective
sodipodi:type=
"inkscape:persp3d"
inkscape:vp_x=
"0 : 526.18109 : 1"
inkscape:vp_y=
"0 : 1000 : 0"
inkscape:vp_z=
"744.09448 : 526.18109 : 1"
inkscape:persp3d-origin=
"372.04724 : 350.78739 : 1"
id=
"perspective10"
/>
<inkscape:perspective
id=
"perspective4226"
inkscape:persp3d-origin=
"0.5 : 0.33333333 : 1"
inkscape:vp_z=
"1 : 0.5 : 1"
inkscape:vp_y=
"0 : 1000 : 0"
inkscape:vp_x=
"0 : 0.5 : 1"
sodipodi:type=
"inkscape:persp3d"
/>
<linearGradient
inkscape:collect=
"always"
xlink:href=
"#linearGradient6464"
id=
"linearGradient6470"
x1=
"32.090908"
y1=
"1.8181819"
x2=
"31.09091"
y2=
"62.909088"
gradientUnits=
"userSpaceOnUse"
gradientTransform=
"translate(0,-0.1818182)"
/>
<linearGradient
id=
"linearGradient6464"
>
<stop
style=
"stop-color:#0061ff;stop-opacity:1;"
offset=
"0"
id=
"stop6466"
/>
<stop
style=
"stop-color:#001c4c;stop-opacity:1;"
offset=
"1"
id=
"stop6468"
/>
</linearGradient>
<linearGradient
inkscape:collect=
"always"
xlink:href=
"#linearGradient6482"
id=
"linearGradient6488"
x1=
"32.18182"
y1=
"3.2835093"
x2=
"32.18182"
y2=
"13.02554"
gradientUnits=
"userSpaceOnUse"
gradientTransform=
"matrix(1.0281354,0,0,1.0429299,-0.9963584,-0.6864152)"
/>
<linearGradient
id=
"linearGradient6482"
>
<stop
style=
"stop-color:#ffffff;stop-opacity:1;"
offset=
"0"
id=
"stop6484"
/>
<stop
style=
"stop-color:#00ff00;stop-opacity:0;"
offset=
"1"
id=
"stop6486"
/>
</linearGradient>
<linearGradient
y2=
"13.02554"
x2=
"32.18182"
y1=
"3.2835093"
x1=
"32.18182"
gradientTransform=
"matrix(1.0281354,0,0,1.0429299,-0.9963584,-0.6864152)"
gradientUnits=
"userSpaceOnUse"
id=
"linearGradient4241"
xlink:href=
"#linearGradient6482"
inkscape:collect=
"always"
/>
</defs>
<sodipodi:namedview
id=
"base"
pagecolor=
"#ffffff"
bordercolor=
"#666666"
borderopacity=
"1.0"
inkscape:pageopacity=
"0.0"
inkscape:pageshadow=
"2"
inkscape:zoom=
"0.42293617"
inkscape:cx=
"401.93458"
inkscape:cy=
"251.13063"
inkscape:document-units=
"px"
inkscape:current-layer=
"layer1"
showgrid=
"false"
inkscape:window-width=
"1280"
inkscape:window-height=
"745"
inkscape:window-x=
"0"
inkscape:window-y=
"0"
inkscape:window-maximized=
"1"
/>
<metadata
id=
"metadata7"
>
<rdf:RDF>
<cc:Work
rdf:about=
""
>
<dc:format>
image/svg+xml
</dc:format>
<dc:type
rdf:resource=
"http://purl.org/dc/dcmitype/StillImage"
/>
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label=
"Ebene 1"
inkscape:groupmode=
"layer"
id=
"layer1"
transform=
"translate(0,-552.36218)"
>
<g
transform=
"matrix(7.8163235,0,0,7.8163235,-0.83292805,550.81868)"
id=
"g4214"
>
<rect
ry=
"5.6363635"
y=
"1.6363637"
x=
"1.2727273"
height=
"61.090908"
width=
"61.636364"
id=
"rect6462"
style=
"fill:url(#linearGradient6470);fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-opacity:1"
/>
<rect
ry=
"4.7325583"
y=
"2.7380548"
x=
"2.1926003"
height=
"13.251164"
width=
"59.796619"
id=
"rect6472"
style=
"fill:url(#linearGradient4241);fill-opacity:1;fill-rule:nonzero;stroke:none"
/>
</g>
<image
width=
"330.20697"
height=
"335.80368"
preserveAspectRatio=
"none"
xlink:href=
"data:image/png;base64,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 "
id=
"image4221"
x=
"89.958641"
y=
"628.24109"
/>
</g>
</svg>
cockatrice/src/abstractcounter.cpp
View file @
beaa4e93
...
@@ -67,15 +67,15 @@ void AbstractCounter::setShortcutsActive()
...
@@ -67,15 +67,15 @@ void AbstractCounter::setShortcutsActive()
{
{
if
(
name
==
"life"
)
{
if
(
name
==
"life"
)
{
aSet
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aSet
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
AbstractCount
er/aSet"
,
"
Play
er/aSet"
,
QKeySequence
(
"Ctrl+L"
)));
QKeySequence
(
"Ctrl+L"
)));
aDec
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aDec
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
AbstractCount
er/aDec"
,
"
Play
er/aDec"
,
QKeySequence
(
"F11"
)));
QKeySequence
(
"F11"
)));
aInc
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aInc
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
AbstractCount
er/aInc"
,
"
Play
er/aInc"
,
QKeySequence
(
"F12"
)));
QKeySequence
(
"F12"
)));
}
}
}
}
...
...
cockatrice/src/dlg_settings.cpp
View file @
beaa4e93
...
@@ -28,6 +28,7 @@
...
@@ -28,6 +28,7 @@
#include
"settingscache.h"
#include
"settingscache.h"
#include
"priceupdater.h"
#include
"priceupdater.h"
#include
"soundengine.h"
#include
"soundengine.h"
#include
"sequenceEdit/shortcutstab.h"
#define LINKING_FAQ_URL "https://github.com/Cockatrice/Cockatrice/wiki/Custom-Download-URLs"
#define LINKING_FAQ_URL "https://github.com/Cockatrice/Cockatrice/wiki/Custom-Download-URLs"
...
@@ -858,6 +859,7 @@ DlgSettings::DlgSettings(QWidget *parent)
...
@@ -858,6 +859,7 @@ DlgSettings::DlgSettings(QWidget *parent)
pagesWidget
->
addWidget
(
new
DeckEditorSettingsPage
);
pagesWidget
->
addWidget
(
new
DeckEditorSettingsPage
);
pagesWidget
->
addWidget
(
new
MessagesSettingsPage
);
pagesWidget
->
addWidget
(
new
MessagesSettingsPage
);
pagesWidget
->
addWidget
(
new
SoundSettingsPage
);
pagesWidget
->
addWidget
(
new
SoundSettingsPage
);
pagesWidget
->
addWidget
(
new
ShortcutsTab
);
createIcons
();
createIcons
();
contentsWidget
->
setCurrentRow
(
0
);
contentsWidget
->
setCurrentRow
(
0
);
...
@@ -912,6 +914,11 @@ void DlgSettings::createIcons()
...
@@ -912,6 +914,11 @@ void DlgSettings::createIcons()
soundButton
->
setFlags
(
Qt
::
ItemIsSelectable
|
Qt
::
ItemIsEnabled
);
soundButton
->
setFlags
(
Qt
::
ItemIsSelectable
|
Qt
::
ItemIsEnabled
);
soundButton
->
setIcon
(
QIcon
(
":/resources/icon_config_sound.svg"
));
soundButton
->
setIcon
(
QIcon
(
":/resources/icon_config_sound.svg"
));
shortcutsButton
=
new
QListWidgetItem
(
contentsWidget
);
shortcutsButton
->
setTextAlignment
(
Qt
::
AlignHCenter
);
shortcutsButton
->
setFlags
(
Qt
::
ItemIsSelectable
|
Qt
::
ItemIsEnabled
);
shortcutsButton
->
setIcon
(
QIcon
(
":/resources/icon_config_shorcuts.svg"
));
connect
(
contentsWidget
,
SIGNAL
(
currentItemChanged
(
QListWidgetItem
*
,
QListWidgetItem
*
)),
this
,
SLOT
(
changePage
(
QListWidgetItem
*
,
QListWidgetItem
*
)));
connect
(
contentsWidget
,
SIGNAL
(
currentItemChanged
(
QListWidgetItem
*
,
QListWidgetItem
*
)),
this
,
SLOT
(
changePage
(
QListWidgetItem
*
,
QListWidgetItem
*
)));
}
}
...
@@ -1021,6 +1028,7 @@ void DlgSettings::retranslateUi()
...
@@ -1021,6 +1028,7 @@ void DlgSettings::retranslateUi()
deckEditorButton
->
setText
(
tr
(
"Deck Editor"
));
deckEditorButton
->
setText
(
tr
(
"Deck Editor"
));
messagesButton
->
setText
(
tr
(
"Chat"
));
messagesButton
->
setText
(
tr
(
"Chat"
));
soundButton
->
setText
(
tr
(
"Sound"
));
soundButton
->
setText
(
tr
(
"Sound"
));
shortcutsButton
->
setText
(
tr
(
"Shortcuts"
));
for
(
int
i
=
0
;
i
<
pagesWidget
->
count
();
i
++
)
for
(
int
i
=
0
;
i
<
pagesWidget
->
count
();
i
++
)
dynamic_cast
<
AbstractSettingsPage
*>
(
pagesWidget
->
widget
(
i
))
->
retranslateUi
();
dynamic_cast
<
AbstractSettingsPage
*>
(
pagesWidget
->
widget
(
i
))
->
retranslateUi
();
...
...
cockatrice/src/dlg_settings.h
View file @
beaa4e93
...
@@ -223,6 +223,7 @@ private:
...
@@ -223,6 +223,7 @@ private:
QListWidget
*
contentsWidget
;
QListWidget
*
contentsWidget
;
QStackedWidget
*
pagesWidget
;
QStackedWidget
*
pagesWidget
;
QListWidgetItem
*
generalButton
,
*
appearanceButton
,
*
userInterfaceButton
,
*
deckEditorButton
,
*
messagesButton
,
*
soundButton
;
QListWidgetItem
*
generalButton
,
*
appearanceButton
,
*
userInterfaceButton
,
*
deckEditorButton
,
*
messagesButton
,
*
soundButton
;
QListWidgetItem
*
shortcutsButton
;
void
createIcons
();
void
createIcons
();
void
retranslateUi
();
void
retranslateUi
();
protected:
protected:
...
...
cockatrice/src/gameview.cpp
View file @
beaa4e93
...
@@ -21,7 +21,7 @@ GameView::GameView(QGraphicsScene *scene, QWidget *parent)
...
@@ -21,7 +21,7 @@ GameView::GameView(QGraphicsScene *scene, QWidget *parent)
aCloseMostRecentZoneView
=
new
QAction
(
this
);
aCloseMostRecentZoneView
=
new
QAction
(
this
);
aCloseMostRecentZoneView
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aCloseMostRecentZoneView
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
GameView
/aCloseMostRecentZoneView"
,
"
Player
/aCloseMostRecentZoneView"
,
QKeySequence
(
"Esc"
)));
QKeySequence
(
"Esc"
)));
connect
(
aCloseMostRecentZoneView
,
SIGNAL
(
triggered
()),
scene
,
SLOT
(
closeMostRecentZoneView
()));
connect
(
aCloseMostRecentZoneView
,
SIGNAL
(
triggered
()),
scene
,
SLOT
(
closeMostRecentZoneView
()));
addAction
(
aCloseMostRecentZoneView
);
addAction
(
aCloseMostRecentZoneView
);
...
...
cockatrice/src/player.cpp
View file @
beaa4e93
...
@@ -616,6 +616,7 @@ void Player::retranslateUi()
...
@@ -616,6 +616,7 @@ void Player::retranslateUi()
{
{
aViewGraveyard
->
setText
(
tr
(
"&View graveyard"
));
aViewGraveyard
->
setText
(
tr
(
"&View graveyard"
));
aViewRfg
->
setText
(
tr
(
"&View exile"
));
aViewRfg
->
setText
(
tr
(
"&View exile"
));
playerMenu
->
setTitle
(
tr
(
"Player
\"
%1
\"
"
).
arg
(
QString
::
fromStdString
(
userInfo
->
name
())));
playerMenu
->
setTitle
(
tr
(
"Player
\"
%1
\"
"
).
arg
(
QString
::
fromStdString
(
userInfo
->
name
())));
graveMenu
->
setTitle
(
tr
(
"&Graveyard"
));
graveMenu
->
setTitle
(
tr
(
"&Graveyard"
));
rfgMenu
->
setTitle
(
tr
(
"&Exile"
));
rfgMenu
->
setTitle
(
tr
(
"&Exile"
));
...
@@ -682,14 +683,32 @@ void Player::retranslateUi()
...
@@ -682,14 +683,32 @@ void Player::retranslateUi()
}
}
aPlay
->
setText
(
tr
(
"&Play"
));
aPlay
->
setText
(
tr
(
"&Play"
));
aPlay
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aPlay"
,
QKeySequence
()));
aHide
->
setText
(
tr
(
"&Hide"
));
aHide
->
setText
(
tr
(
"&Hide"
));
aPlayFacedown
->
setText
(
tr
(
"Play &Face Down"
));
aPlayFacedown
->
setText
(
tr
(
"Play &Face Down"
));
aTap
->
setText
(
tr
(
"&Tap"
));
aTap
->
setText
(
tr
(
"&Tap"
));
aTap
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aTap"
,
QKeySequence
()));
aUntap
->
setText
(
tr
(
"&Untap"
));
aUntap
->
setText
(
tr
(
"&Untap"
));
aUntap
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aUntap"
,
QKeySequence
()));
aDoesntUntap
->
setText
(
tr
(
"Toggle &normal untapping"
));
aDoesntUntap
->
setText
(
tr
(
"Toggle &normal untapping"
));
aDoesntUntap
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aDoesntUntap"
,
QKeySequence
()));
aFlip
->
setText
(
tr
(
"&Flip"
));
aFlip
->
setText
(
tr
(
"&Flip"
));
aFlip
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aFlip"
,
QKeySequence
()));
aPeek
->
setText
(
tr
(
"&Peek at card face"
));
aPeek
->
setText
(
tr
(
"&Peek at card face"
));
aPeek
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aPeek"
,
QKeySequence
()));
aClone
->
setText
(
tr
(
"&Clone"
));
aClone
->
setText
(
tr
(
"&Clone"
));
aClone
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aClone
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aClone"
,
QKeySequence
(
"Ctrl+J"
)));
"Player/aClone"
,
QKeySequence
(
"Ctrl+J"
)));
...
@@ -699,7 +718,12 @@ void Player::retranslateUi()
...
@@ -699,7 +718,12 @@ void Player::retranslateUi()
"Player/aAttach"
,
QKeySequence
(
"Ctrl+A"
)));
"Player/aAttach"
,
QKeySequence
(
"Ctrl+A"
)));
aUnattach
->
setText
(
tr
(
"Unattac&h"
));
aUnattach
->
setText
(
tr
(
"Unattac&h"
));
aUnattach
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aUnattach"
,
QKeySequence
()));
aDrawArrow
->
setText
(
tr
(
"&Draw arrow..."
));
aDrawArrow
->
setText
(
tr
(
"&Draw arrow..."
));
aDrawArrow
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aDrawArrow"
,
QKeySequence
()));
aIncP
->
setText
(
tr
(
"&Increase power"
));
aIncP
->
setText
(
tr
(
"&Increase power"
));
aIncP
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aIncP
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
...
@@ -730,24 +754,71 @@ void Player::retranslateUi()
...
@@ -730,24 +754,71 @@ void Player::retranslateUi()
"Player/aSetPT"
,
QKeySequence
(
"Ctrl+P"
)));
"Player/aSetPT"
,
QKeySequence
(
"Ctrl+P"
)));
aSetAnnotation
->
setText
(
tr
(
"&Set annotation..."
));
aSetAnnotation
->
setText
(
tr
(
"&Set annotation..."
));
aSetAnnotation
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aSetAnnotation"
,
QKeySequence
()));
QStringList
counterColors
;
QStringList
counterColors
;
counterColors
.
append
(
tr
(
"Red"
));
counterColors
.
append
(
tr
(
"Red"
));
counterColors
.
append
(
tr
(
"Yellow"
));
counterColors
.
append
(
tr
(
"Yellow"
));
counterColors
.
append
(
tr
(
"Green"
));
counterColors
.
append
(
tr
(
"Green"
));
for
(
int
i
=
0
;
i
<
aAddCounter
.
size
();
++
i
)
QList
<
QKeySequence
>
addCCShortCuts
;
addCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aCCRed"
,
QKeySequence
()));
addCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aCCYellow"
,
QKeySequence
()));
addCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aCCGreen"
,
QKeySequence
()));
QList
<
QKeySequence
>
removeCCShortCuts
;
removeCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aRCRed"
,
QKeySequence
()));
removeCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aRCYellow"
,
QKeySequence
()));
removeCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aRCGreen"
,
QKeySequence
()));
QList
<
QKeySequence
>
setCCShortCuts
;
setCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aSCRed"
,
QKeySequence
()));
setCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aSCYellow"
,
QKeySequence
()));
setCCShortCuts
.
append
(
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/aSCGreen"
,
QKeySequence
()));
for
(
int
i
=
0
;
i
<
aAddCounter
.
size
();
++
i
){
aAddCounter
[
i
]
->
setText
(
tr
(
"&Add counter (%1)"
).
arg
(
counterColors
[
i
]));
aAddCounter
[
i
]
->
setText
(
tr
(
"&Add counter (%1)"
).
arg
(
counterColors
[
i
]));
for
(
int
i
=
0
;
i
<
aRemoveCounter
.
size
();
++
i
)
aAddCounter
[
i
]
->
setShortcut
(
addCCShortCuts
[
i
]);
}
for
(
int
i
=
0
;
i
<
aRemoveCounter
.
size
();
++
i
){
aRemoveCounter
[
i
]
->
setText
(
tr
(
"&Remove counter (%1)"
).
arg
(
counterColors
[
i
]));
aRemoveCounter
[
i
]
->
setText
(
tr
(
"&Remove counter (%1)"
).
arg
(
counterColors
[
i
]));
for
(
int
i
=
0
;
i
<
aSetCounter
.
size
();
++
i
)
aRemoveCounter
[
i
]
->
setShortcut
(
removeCCShortCuts
[
i
]);
}
for
(
int
i
=
0
;
i
<
aSetCounter
.
size
();
++
i
){
aSetCounter
[
i
]
->
setText
(
tr
(
"&Set counters (%1)..."
).
arg
(
counterColors
[
i
]));
aSetCounter
[
i
]
->
setText
(
tr
(
"&Set counters (%1)..."
).
arg
(
counterColors
[
i
]));
aSetCounter
[
i
]
->
setShortcut
(
setCCShortCuts
[
i
]);
}
aMoveToTopLibrary
->
setText
(
tr
(
"&Top of library"
));
aMoveToTopLibrary
->
setText
(
tr
(
"&Top of library"
));
aMoveToTopLibrary
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aMoveToTopLibrary"
,
QKeySequence
()));
aMoveToBottomLibrary
->
setText
(
tr
(
"&Bottom of library"
));
aMoveToBottomLibrary
->
setText
(
tr
(
"&Bottom of library"
));
aMoveToBottomLibrary
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aMoveToBottomLibrary"
,
QKeySequence
()));
aMoveToHand
->
setText
(
tr
(
"&Hand"
));
aMoveToHand
->
setText
(
tr
(
"&Hand"
));
aMoveToHand
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aMoveToHand"
,
QKeySequence
()));
aMoveToGraveyard
->
setText
(
tr
(
"&Graveyard"
));
aMoveToGraveyard
->
setText
(
tr
(
"&Graveyard"
));
aMoveToGraveyard
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aMoveToGraveyard
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aMoveToGraveyard"
,
QKeySequence
(
"Ctrl+Del"
)));
"Player/aMoveToGraveyard"
,
QKeySequence
(
"Ctrl+Del"
)));
aMoveToExile
->
setText
(
tr
(
"&Exile"
));
aMoveToExile
->
setText
(
tr
(
"&Exile"
));
aMoveToExile
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aMoveToExile"
,
QKeySequence
()));
QMapIterator
<
QString
,
CardZone
*>
zoneIterator
(
zones
);
QMapIterator
<
QString
,
CardZone
*>
zoneIterator
(
zones
);
while
(
zoneIterator
.
hasNext
())
while
(
zoneIterator
.
hasNext
())
zoneIterator
.
next
().
value
()
->
retranslateUi
();
zoneIterator
.
next
().
value
()
->
retranslateUi
();
...
@@ -769,6 +840,9 @@ void Player::setShortcutsActive()
...
@@ -769,6 +840,9 @@ void Player::setShortcutsActive()
aViewGraveyard
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aViewGraveyard
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aViewGraveyard"
,
QKeySequence
(
"F4"
)));
"Player/aViewGraveyard"
,
QKeySequence
(
"F4"
)));
aViewRfg
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aViewRfg"
,
QKeySequence
()));
aDrawCard
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aDrawCard
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/aDrawCard"
,
QKeySequence
(
"Ctrl+D"
)));
"Player/aDrawCard"
,
QKeySequence
(
"Ctrl+D"
)));
...
@@ -838,14 +912,11 @@ void Player::initSayMenu()
...
@@ -838,14 +912,11 @@ void Player::initSayMenu()
QSettings
settings
;
QSettings
settings
;
settings
.
beginGroup
(
"messages"
);
settings
.
beginGroup
(
"messages"
);
int
count
=
settings
.
value
(
"count"
,
0
).
toInt
();
int
count
=
settings
.
value
(
"count"
,
0
).
toInt
();
QString
base
=
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/say"
,
QKeySequence
(
"Ctrl"
)).
toString
();
base
=
base
.
append
(
"+"
);
for
(
int
i
=
0
;
i
<
count
;
i
++
)
{
for
(
int
i
=
0
;
i
<
count
;
i
++
)
{
QAction
*
newAction
=
new
QAction
(
settings
.
value
(
QString
(
"msg%1"
).
arg
(
i
)).
toString
(),
this
);
QAction
*
newAction
=
new
QAction
(
settings
.
value
(
QString
(
"msg%1"
).
arg
(
i
)).
toString
(),
this
);
if
(
i
<=
10
){
if
(
i
<=
10
){
newAction
->
setShortcut
(
QKeySequence
(
base
+
QString
::
number
((
i
+
1
)
%
10
)));
newAction
->
setShortcut
(
QKeySequence
(
"Ctrl+"
+
QString
::
number
((
i
+
1
)
%
10
)));
}
}
connect
(
newAction
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actSayMessage
()));
connect
(
newAction
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actSayMessage
()));
sayMenu
->
addAction
(
newAction
);
sayMenu
->
addAction
(
newAction
);
...
@@ -861,10 +932,6 @@ void Player::setDeck(const DeckLoader &_deck)
...
@@ -861,10 +932,6 @@ void Player::setDeck(const DeckLoader &_deck)
predefinedTokens
.
clear
();
predefinedTokens
.
clear
();
InnerDecklistNode
*
tokenZone
=
dynamic_cast
<
InnerDecklistNode
*>
(
deck
->
getRoot
()
->
findChild
(
"tokens"
));
InnerDecklistNode
*
tokenZone
=
dynamic_cast
<
InnerDecklistNode
*>
(
deck
->
getRoot
()
->
findChild
(
"tokens"
));
QString
base
=
settingsCache
->
shortcuts
().
getSingleShortcut
(
"Player/token"
,
QKeySequence
(
"Alt"
)).
toString
();
base
=
base
.
append
(
"+"
);
if
(
tokenZone
)
if
(
tokenZone
)
for
(
int
i
=
0
;
i
<
tokenZone
->
size
();
++
i
)
{
for
(
int
i
=
0
;
i
<
tokenZone
->
size
();
++
i
)
{
const
QString
tokenName
=
tokenZone
->
at
(
i
)
->
getName
();
const
QString
tokenName
=
tokenZone
->
at
(
i
)
->
getName
();
...
@@ -872,7 +939,7 @@ void Player::setDeck(const DeckLoader &_deck)
...
@@ -872,7 +939,7 @@ void Player::setDeck(const DeckLoader &_deck)
QAction
*
a
=
createPredefinedTokenMenu
->
addAction
(
tokenName
);
QAction
*
a
=
createPredefinedTokenMenu
->
addAction
(
tokenName
);
if
(
i
<
10
)
if
(
i
<
10
)
{
{
a
->
setShortcut
(
QKeySequence
(
base
+
QString
::
number
((
i
+
1
)
%
10
)));
a
->
setShortcut
(
QKeySequence
(
"Alt+"
+
QString
::
number
((
i
+
1
)
%
10
)));
}
}
connect
(
a
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actCreatePredefinedToken
()));
connect
(
a
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actCreatePredefinedToken
()));
}
}
...
...
cockatrice/src/sequenceEdit/secuenceedit.cpp
0 → 100644
View file @
beaa4e93
#include
"secuenceedit.h"
#include
"../settingscache.h"
#include
<QLineEdit>
#include
<QPushButton>
#include
<QHBoxLayout>
#include
<QEvent>
#include
<QKeyEvent>
#include
<QToolTip>
SecuenceEdit
::
SecuenceEdit
(
QString
name
,
QWidget
*
parent
)
:
QWidget
(
parent
)
{
this
->
shorcutName
=
name
;
currentKey
=
0
;
maxKeys
=
4
;
keys
=
0
;
valid
=
false
;
lineEdit
=
new
QLineEdit
(
this
);
clearButton
=
new
QPushButton
(
""
,
this
);
defaultButton
=
new
QPushButton
(
""
,
this
);
lineEdit
->
setMinimumWidth
(
100
);
clearButton
->
setMaximumWidth
(
lineEdit
->
height
());
defaultButton
->
setMaximumWidth
(
lineEdit
->
height
());
clearButton
->
setIcon
(
QIcon
(
":/resources/icon_clearsearch.svg"
));
defaultButton
->
setIcon
(
QIcon
(
":/resources/icon_update.png"
));
QHBoxLayout
*
layout
=
new
QHBoxLayout
(
this
);
layout
->
setContentsMargins
(
0
,
0
,
0
,
0
);
layout
->
setSpacing
(
0
);
layout
->
addWidget
(
lineEdit
);
layout
->
addWidget
(
clearButton
);
layout
->
addWidget
(
defaultButton
);
connect
(
clearButton
,
SIGNAL
(
clicked
()),
this
,
SLOT
(
removeLastShortcut
()));
connect
(
defaultButton
,
SIGNAL
(
clicked
()),
this
,
SLOT
(
restoreDefault
()));
lineEdit
->
installEventFilter
(
this
);
lineEdit
->
setText
(
settingsCache
->
shortcuts
().
getShortcutString
(
name
));
}
QString
SecuenceEdit
::
getSecuence
()
{
return
lineEdit
->
text
();
}
void
SecuenceEdit
::
removeLastShortcut
()
{
QString
secuences
=
lineEdit
->
text
();
if
(
!
secuences
.
isEmpty
())
{
if
(
secuences
.
lastIndexOf
(
";"
)
>
0
){
QString
valid
=
secuences
.
left
(
secuences
.
lastIndexOf
(
";"
));
lineEdit
->
setText
(
valid
);
}
else
lineEdit
->
clear
();
updateSettings
();
}
}
void
SecuenceEdit
::
restoreDefault
()
{
lineEdit
->
setText
(
settingsCache
->
shortcuts
().
getDefaultShortcutString
(
shorcutName
));
updateSettings
();
}
bool
SecuenceEdit
::
eventFilter
(
QObject
*
,
QEvent
*
event
)
{
if
(
event
->
type
()
==
QEvent
::
KeyPress
||
event
->
type
()
==
QEvent
::
KeyRelease
)
{
QKeyEvent
*
keyEvent
=
(
QKeyEvent
*
)
event
;
if
(
event
->
type
()
==
QEvent
::
KeyPress
&&
!
keyEvent
->
isAutoRepeat
())
processKey
(
keyEvent
);
else
if
(
event
->
type
()
==
QEvent
::
KeyRelease
&&
!
keyEvent
->
isAutoRepeat
())
finishShortcut
();
return
true
;
}
return
false
;
}
void
SecuenceEdit
::
processKey
(
QKeyEvent
*
e
)
{
int
key
=
e
->
key
();
if
(
key
!=
Qt
::
Key_Control
&&
key
!=
Qt
::
Key_Shift
&&
key
!=
Qt
::
Key_Meta
&&
key
!=
Qt
::
Key_Alt
)
{
valid
=
true
;
key
|=
translateModifiers
(
e
->
modifiers
(),
e
->
text
());
}
keys
=
key
;
currentKey
++
;
if
(
currentKey
>=
key
)
finishShortcut
();
}
int
SecuenceEdit
::
translateModifiers
(
Qt
::
KeyboardModifiers
state
,
const
QString
&
text
)
{
int
result
=
0
;
// The shift modifier only counts when it is not used to type a symbol
// that is only reachable using the shift key anyway
if
((
state
&
Qt
::
ShiftModifier
)
&&
(
text
.
isEmpty
()
||
!
text
.
at
(
0
).
isPrint
()
||
text
.
at
(
0
).
isLetterOrNumber
()
||
text
.
at
(
0
).
isSpace
()))
result
|=
Qt
::
SHIFT
;
if
(
state
&
Qt
::
ControlModifier
)
result
|=
Qt
::
CTRL
;
if
(
state
&
Qt
::
MetaModifier
)
result
|=
Qt
::
META
;
if
(
state
&
Qt
::
AltModifier
)
result
|=
Qt
::
ALT
;
return
result
;
}
void
SecuenceEdit
::
finishShortcut
()
{
QKeySequence
secuence
(
keys
);
if
(
!
secuence
.
isEmpty
()
&&
valid
)
{
QString
secuenceString
=
secuence
.
toString
();
if
(
settingsCache
->
shortcuts
().
isValid
(
shorcutName
,
secuenceString
))
{
if
(
!
lineEdit
->
text
().
isEmpty
())
{
if
(
lineEdit
->
text
().
contains
(
secuenceString
))
return
;
lineEdit
->
setText
(
lineEdit
->
text
()
+
";"
);
}
lineEdit
->
setText
(
lineEdit
->
text
()
+
secuenceString
);
}
else
{
QToolTip
::
showText
(
lineEdit
->
mapToGlobal
(
QPoint
()),
tr
(
"Shortcut already in use"
));
}
}
currentKey
=
0
;
keys
=
0
;
valid
=
false
;
updateSettings
();
}
void
SecuenceEdit
::
updateSettings
()
{
settingsCache
->
shortcuts
().
setShortcuts
(
shorcutName
,
lineEdit
->
text
());
}
cockatrice/src/sequenceEdit/secuenceedit.h
0 → 100644
View file @
beaa4e93
#ifndef SECUENCEEDIT_H
#define SECUENCEEDIT_H
#include
<QWidget>
#include
<QKeySequence>
class
QLineEdit
;
class
QPushButton
;
class
QEvent
;
class
SecuenceEdit
:
public
QWidget
{
Q_OBJECT
public:
SecuenceEdit
(
QString
shorcutName
,
QWidget
*
parent
=
0
);
QString
getSecuence
();
signals:
private
slots
:
void
removeLastShortcut
();
void
restoreDefault
();
protected:
bool
eventFilter
(
QObject
*
,
QEvent
*
event
);
private:
QString
shorcutName
;
QLineEdit
*
lineEdit
;
QPushButton
*
clearButton
;
QPushButton
*
defaultButton
;
int
keys
;
int
currentKey
;
int
maxKeys
;
bool
valid
;
void
processKey
(
QKeyEvent
*
e
);
int
translateModifiers
(
Qt
::
KeyboardModifiers
state
,
const
QString
&
text
);
void
finishShortcut
();
void
updateSettings
();
};
#endif // SECUENCEEDIT_H
cockatrice/src/sequenceEdit/shortcutstab.cpp
0 → 100644
View file @
beaa4e93
#include
"shortcutstab.h"
#include
"ui_shortcutstab.h"
ShortcutsTab
::
ShortcutsTab
()
:
ui
(
new
Ui
::
shortcutsTab
)
{
ui
->
setupUi
(
this
);
}
void
ShortcutsTab
::
retranslateUi
()
{
ui
->
retranslateUi
(
this
);
}
ShortcutsTab
::~
ShortcutsTab
()
{
delete
ui
;
}
cockatrice/src/sequenceEdit/shortcutstab.h
0 → 100644
View file @
beaa4e93
#ifndef SHORTCUTSTAB_H
#define SHORTCUTSTAB_H
#include
<QWidget>
#include
"../dlg_settings.h"
namespace
Ui
{
class
shortcutsTab
;
}
class
ShortcutsTab
:
public
AbstractSettingsPage
{
Q_OBJECT
public:
ShortcutsTab
();
void
retranslateUi
();
~
ShortcutsTab
();
private:
Ui
::
shortcutsTab
*
ui
;
};
#endif // SHORTCUTSTAB_H
cockatrice/src/shortcutssettings.cpp
View file @
beaa4e93
#include
"shortcutssettings.h"
#include
"shortcutssettings.h"
#include
<QFile>
#include
<QDebug>
QList
<
QKeySequence
>
ShortcutsSettings
::
parseSecuenceString
(
QString
stringSecuence
)
{
QStringList
secuences
=
stringSecuence
.
split
(
";"
);
QList
<
QKeySequence
>
secuenceList
;
for
(
QStringList
::
const_iterator
ss
=
secuences
.
cbegin
();
ss
!=
secuences
.
cend
();
++
ss
)
{
secuenceList
.
append
(
QKeySequence
(
*
ss
,
QKeySequence
::
PortableText
));
}
return
secuenceList
;
}
ShortcutsSettings
::
ShortcutsSettings
(
QString
settingsPath
,
QObject
*
parent
)
:
QObject
(
parent
)
ShortcutsSettings
::
ShortcutsSettings
(
QString
settingsPath
,
QObject
*
parent
)
:
QObject
(
parent
)
{
{
this
->
settingsFilePath
=
settingsPath
;
this
->
settingsFilePath
=
settingsPath
;
this
->
settingsFilePath
.
append
(
"shortcuts.ini"
);
this
->
settingsFilePath
.
append
(
"shortcuts.ini"
);
QSettings
shortCutsFile
(
settingsFilePath
,
QSettings
::
IniFormat
);
fillDefaultShorcuts
();
shortCuts
=
QMap
<
QString
,
QList
<
QKeySequence
>
>
(
defaultShortCuts
);
shortCutsFile
.
beginGroup
(
"Custom"
);
bool
exists
=
QFile
(
settingsFilePath
).
exists
();
const
QStringList
customKeys
=
shortCutsFile
.
allKeys
();
for
(
QStringList
::
const_iterator
it
=
customKeys
.
cbegin
();
it
!=
customKeys
.
cend
();
++
it
)
{
QString
stringSecuence
=
shortCutsFile
.
value
(
*
it
).
toString
();
QList
<
QKeySequence
>
secuenceList
=
parseSecuenceString
(
stringSecuence
);
shortCuts
.
insert
(
*
it
,
secuenceList
);
}
shortCutsFile
.
endGroup
();
shortCutsFile
.
beginGroup
(
"Defaults"
);
QSettings
shortCutsFile
(
settingsFilePath
,
QSettings
::
IniFormat
);
const
QStringList
defaultKeys
=
shortCutsFile
.
allKeys
();
for
(
QStringList
::
const_iterator
it
=
defaultKeys
.
cbegin
();
it
!=
defaultKeys
.
cend
();
++
it
)
if
(
exists
){
{
shortCutsFile
.
beginGroup
(
"Custom"
);
QString
stringSecuence
=
shortCutsFile
.
value
(
*
it
).
toString
();
const
QStringList
customKeys
=
shortCutsFile
.
allKeys
();
QList
<
QKeySequence
>
secuenceList
=
parseSecuenceString
(
stringSecuence
);
for
(
QStringList
::
const_iterator
it
=
customKeys
.
cbegin
();
it
!=
customKeys
.
cend
();
++
it
)
defaultShortCuts
.
insert
(
*
it
,
secuenceList
);
{
QString
stringSecuence
=
shortCutsFile
.
value
(
*
it
).
toString
();
QList
<
QKeySequence
>
secuenceList
=
parseSecuenceString
(
stringSecuence
);
shortCuts
.
insert
(
*
it
,
secuenceList
);
}
shortCutsFile
.
endGroup
();
shortCutsFile
.
beginGroup
(
"Defaults"
);
const
QStringList
defaultKeys
=
shortCutsFile
.
allKeys
();
for
(
QStringList
::
const_iterator
it
=
defaultKeys
.
cbegin
();
it
!=
defaultKeys
.
cend
();
++
it
)
{
QString
stringSecuence
=
shortCutsFile
.
value
(
*
it
).
toString
();
QList
<
QKeySequence
>
secuenceList
=
parseSecuenceString
(
stringSecuence
);
defaultShortCuts
.
insert
(
*
it
,
secuenceList
);
}
shortCutsFile
.
endGroup
();
}
}
shortCutsFile
.
endGroup
();
}
}
QList
<
QKeySequence
>
ShortcutsSettings
::
getShortcut
(
QString
name
,
QList
<
QKeySequence
>
defaultShortCut
)
QList
<
QKeySequence
>
ShortcutsSettings
::
getShortcut
(
QString
name
,
QList
<
QKeySequence
>
defaultShortCut
)
...
@@ -66,9 +61,14 @@ QKeySequence ShortcutsSettings::getSingleShortcut(QString name, QKeySequence def
...
@@ -66,9 +61,14 @@ QKeySequence ShortcutsSettings::getSingleShortcut(QString name, QKeySequence def
return
getShortcut
(
name
,
defaultShortCut
).
at
(
0
);
return
getShortcut
(
name
,
defaultShortCut
).
at
(
0
);
}
}
Q
List
<
QKeySequence
>
ShortcutsSettings
::
getDefaultShort
C
ut
(
QString
name
)
Q
String
ShortcutsSettings
::
getDefaultShort
c
ut
String
(
QString
name
)
{
{
return
defaultShortCuts
.
value
(
name
);
return
stringifySecuence
(
defaultShortCuts
.
value
(
name
));
}
QString
ShortcutsSettings
::
getShortcutString
(
QString
name
)
{
return
stringifySecuence
(
shortCuts
.
value
(
name
));
}
}
QString
ShortcutsSettings
::
stringifySecuence
(
QList
<
QKeySequence
>
secuence
)
const
QString
ShortcutsSettings
::
stringifySecuence
(
QList
<
QKeySequence
>
secuence
)
const
...
@@ -84,6 +84,18 @@ QString ShortcutsSettings::stringifySecuence(QList<QKeySequence> secuence) const
...
@@ -84,6 +84,18 @@ QString ShortcutsSettings::stringifySecuence(QList<QKeySequence> secuence) const
return
stringSecuence
;
return
stringSecuence
;
}
}
QList
<
QKeySequence
>
ShortcutsSettings
::
parseSecuenceString
(
QString
stringSecuence
)
{
QStringList
secuences
=
stringSecuence
.
split
(
";"
);
QList
<
QKeySequence
>
secuenceList
;
for
(
QStringList
::
const_iterator
ss
=
secuences
.
cbegin
();
ss
!=
secuences
.
cend
();
++
ss
)
{
secuenceList
.
append
(
QKeySequence
(
*
ss
,
QKeySequence
::
PortableText
));
}
return
secuenceList
;
}
void
ShortcutsSettings
::
setShortcuts
(
QString
name
,
QList
<
QKeySequence
>
secuence
)
void
ShortcutsSettings
::
setShortcuts
(
QString
name
,
QList
<
QKeySequence
>
secuence
)
{
{
shortCuts
[
name
]
=
secuence
;
shortCuts
[
name
]
=
secuence
;
...
@@ -100,3 +112,136 @@ void ShortcutsSettings::setShortcuts(QString name, QKeySequence secuence)
...
@@ -100,3 +112,136 @@ void ShortcutsSettings::setShortcuts(QString name, QKeySequence secuence)
setShortcuts
(
name
,
QList
<
QKeySequence
>
()
<<
secuence
);
setShortcuts
(
name
,
QList
<
QKeySequence
>
()
<<
secuence
);
}
}
void
ShortcutsSettings
::
setShortcuts
(
QString
name
,
QString
secuences
)
{
setShortcuts
(
name
,
parseSecuenceString
(
secuences
));
}
bool
ShortcutsSettings
::
isValid
(
QString
name
,
QString
secuences
)
{
QString
checkKey
=
name
.
left
(
name
.
indexOf
(
"/"
));
QStringList
stringSecuences
=
secuences
.
split
(
";"
);
QList
<
QString
>
allKeys
=
shortCuts
.
keys
();
for
(
int
i
=
0
;
i
<
allKeys
.
size
();
i
++
){
QString
key
=
allKeys
.
at
(
i
);
if
(
key
.
startsWith
(
checkKey
)
||
key
.
startsWith
(
"MainWindow"
)
||
checkKey
.
startsWith
(
"MainWindow"
))
{
QString
storedSecuence
=
stringifySecuence
(
shortCuts
.
value
(
key
));
for
(
int
j
=
0
;
j
<
stringSecuences
.
size
();
j
++
)
{
if
(
storedSecuence
.
contains
(
stringSecuences
.
at
(
j
)))
return
false
;
}
}
}
return
true
;
}
void
ShortcutsSettings
::
fillDefaultShorcuts
()
{
defaultShortCuts
[
"MainWindow/aCheckCardUpdates"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"MainWindow/aConnect"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"MainWindow/aDeckEditor"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"MainWindow/aDisconnect"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"MainWindow/aExit"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"MainWindow/aFullScreen"
]
=
parseSecuenceString
(
"Ctrl+F"
);
defaultShortCuts
[
"MainWindow/aRegister"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"MainWindow/aSettings"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"MainWindow/aSinglePlayer"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"MainWindow/aWatchReplay"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aAnalyzeDeck"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aClearFilterAll"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aClearFilterOne"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aClose"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aDecrement"
]
=
parseSecuenceString
(
"-"
);
defaultShortCuts
[
"TabDeckEditor/aEditSets"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aEditTokens"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aIncrement"
]
=
parseSecuenceString
(
"+"
);
defaultShortCuts
[
"TabDeckEditor/aLoadDeck"
]
=
parseSecuenceString
(
"Ctrl+O"
);
defaultShortCuts
[
"TabDeckEditor/aLoadDeckFromClipboard"
]
=
parseSecuenceString
(
"Ctrl+V"
);
defaultShortCuts
[
"TabDeckEditor/aNewDeck"
]
=
parseSecuenceString
(
"Ctrl+N"
);
defaultShortCuts
[
"TabDeckEditor/aOpenCustomFolder"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aPrintDeck"
]
=
parseSecuenceString
(
"Ctrl+P"
);
defaultShortCuts
[
"TabDeckEditor/aRemoveCard"
]
=
parseSecuenceString
(
"Del"
);
defaultShortCuts
[
"TabDeckEditor/aResetLayout"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aSaveDeck"
]
=
parseSecuenceString
(
"Ctrl+S"
);
defaultShortCuts
[
"TabDeckEditor/aSaveDeckAs"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"TabDeckEditor/aSaveDeckToClipboard"
]
=
parseSecuenceString
(
"Ctrl+C"
);
defaultShortCuts
[
"DeckViewContainer/loadLocalButton"
]
=
parseSecuenceString
(
"Ctrl+O"
);
defaultShortCuts
[
"DeckViewContainer/loadRemoteButton"
]
=
parseSecuenceString
(
"Ctrl+Alt+O"
);
defaultShortCuts
[
"Player/aDec"
]
=
parseSecuenceString
(
"F11"
);
defaultShortCuts
[
"Player/aInc"
]
=
parseSecuenceString
(
"F12"
);
defaultShortCuts
[
"Player/aSet"
]
=
parseSecuenceString
(
"Ctrl+L"
);
defaultShortCuts
[
"Player/aCloseMostRecentZoneView"
]
=
parseSecuenceString
(
"Esc"
);
defaultShortCuts
[
"Player/IncP"
]
=
parseSecuenceString
(
"Ctrl++"
);
defaultShortCuts
[
"Player/aAlwaysRevealTopCard"
]
=
parseSecuenceString
(
"Ctrl+N"
);
defaultShortCuts
[
"Player/aAttach"
]
=
parseSecuenceString
(
"Ctrl+A"
);
defaultShortCuts
[
"Player/aCCGreen"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aCCRed"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aCCYellow"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aClone"
]
=
parseSecuenceString
(
"Ctrl+J"
);
defaultShortCuts
[
"Player/aCreateAnotherToken"
]
=
parseSecuenceString
(
"Ctrl+G"
);
defaultShortCuts
[
"Player/aCreateToken"
]
=
parseSecuenceString
(
"Ctrl+T"
);
defaultShortCuts
[
"Player/aDecP"
]
=
parseSecuenceString
(
"Ctrl+-"
);
defaultShortCuts
[
"Player/aDecPT"
]
=
parseSecuenceString
(
"Ctrl+Alt+-"
);
defaultShortCuts
[
"Player/aDecT"
]
=
parseSecuenceString
(
"Alt+-"
);
defaultShortCuts
[
"Player/aDoesntUntap"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aDrawArrow"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aDrawCard"
]
=
parseSecuenceString
(
"Ctrl+D"
);
defaultShortCuts
[
"Player/aDrawCards"
]
=
parseSecuenceString
(
"Ctrl+E"
);
defaultShortCuts
[
"Player/aFlip"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aIncPT"
]
=
parseSecuenceString
(
"Ctrl+Alt++"
);
defaultShortCuts
[
"Player/aIncT"
]
=
parseSecuenceString
(
"Alt++"
);
defaultShortCuts
[
"Player/aMoveToBottomLibrary"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aMoveToExile"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aMoveToGraveyard"
]
=
parseSecuenceString
(
"Ctrl+Del"
);
defaultShortCuts
[
"Player/aMoveToHand"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aMoveToTopLibrary"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aMulligan"
]
=
parseSecuenceString
(
"Ctrl+M"
);
defaultShortCuts
[
"Player/aPeek"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aPlay"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aRCGreen"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aRCRed"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aRCYellow"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aRollDie"
]
=
parseSecuenceString
(
"Ctrl+I"
);
defaultShortCuts
[
"Player/aSCGreen"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aSCRed"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aSCYellow"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aSetAnnotation"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aSetPT"
]
=
parseSecuenceString
(
"Ctrl+P"
);
defaultShortCuts
[
"Player/aShuffle"
]
=
parseSecuenceString
(
"Ctrl+S"
);
defaultShortCuts
[
"Player/aTap"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aUnattach"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aUndoDraw"
]
=
parseSecuenceString
(
"Ctrl+Shift+D"
);
defaultShortCuts
[
"Player/aUntap"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aUntapAll"
]
=
parseSecuenceString
(
"Ctrl+U"
);
defaultShortCuts
[
"Player/aViewGraveyard"
]
=
parseSecuenceString
(
"F4"
);
defaultShortCuts
[
"Player/aViewLibrary"
]
=
parseSecuenceString
(
"F3"
);
defaultShortCuts
[
"Player/aViewRfg"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/aViewSideboard"
]
=
parseSecuenceString
(
"Ctrl+F3"
);
defaultShortCuts
[
"Player/aViewTopCards"
]
=
parseSecuenceString
(
"Ctrl+W"
);
defaultShortCuts
[
"Player/aConcede"
]
=
parseSecuenceString
(
"F2"
);
defaultShortCuts
[
"Player/aLeaveGame"
]
=
parseSecuenceString
(
"Ctrl+Q"
);
defaultShortCuts
[
"Player/aNextPhase"
]
=
parseSecuenceString
(
"Ctrl+Space;Tab"
);
defaultShortCuts
[
"Player/aNextTurn"
]
=
parseSecuenceString
(
"Ctrl+Return;Ctrl+Enter"
);
defaultShortCuts
[
"Player/aRemoveLocalArrows"
]
=
parseSecuenceString
(
"Ctrl+R"
);
defaultShortCuts
[
"Player/aRotateViewCCW"
]
=
parseSecuenceString
(
"Ctrl+["
);
defaultShortCuts
[
"Player/aRotateViewCW"
]
=
parseSecuenceString
(
"Ctrl+]"
);
defaultShortCuts
[
"Player/phase0"
]
=
parseSecuenceString
(
"F5"
);
defaultShortCuts
[
"Player/phase1"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/phase10"
]
=
parseSecuenceString
(
"F10"
);
defaultShortCuts
[
"Player/phase2"
]
=
parseSecuenceString
(
"F6"
);
defaultShortCuts
[
"Player/phase3"
]
=
parseSecuenceString
(
"F7"
);
defaultShortCuts
[
"Player/phase4"
]
=
parseSecuenceString
(
"F8"
);
defaultShortCuts
[
"Player/phase5"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/phase6"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/phase7"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/phase8"
]
=
parseSecuenceString
(
""
);
defaultShortCuts
[
"Player/phase9"
]
=
parseSecuenceString
(
"F9"
);
}
cockatrice/src/shortcutssettings.h
View file @
beaa4e93
...
@@ -16,19 +16,20 @@ public:
...
@@ -16,19 +16,20 @@ public:
QList
<
QKeySequence
>
getShortcut
(
QString
name
,
QList
<
QKeySequence
>
defaultShortCut
);
QList
<
QKeySequence
>
getShortcut
(
QString
name
,
QList
<
QKeySequence
>
defaultShortCut
);
QList
<
QKeySequence
>
getShortcut
(
QString
name
,
QKeySequence
defaultShortCut
);
QList
<
QKeySequence
>
getShortcut
(
QString
name
,
QKeySequence
defaultShortCut
);
QKeySequence
getSingleShortcut
(
QString
name
,
QKeySequence
defaultShortCut
);
QKeySequence
getSingleShortcut
(
QString
name
,
QKeySequence
defaultShortCut
);
QList
<
QKeySequence
>
getDefaultShortCut
(
QString
name
);
QString
getDefaultShortcutString
(
QString
name
);
QString
getShortcutString
(
QString
name
);
void
setShortcuts
(
QString
name
,
QList
<
QKeySequence
>
secuence
);
void
setShortcuts
(
QString
name
,
QList
<
QKeySequence
>
secuence
);
void
setShortcuts
(
QString
name
,
QKeySequence
secuence
);
void
setShortcuts
(
QString
name
,
QKeySequence
secuence
);
void
setShortcuts
(
QString
name
,
QString
secuences
);
signals:
bool
isValid
(
QString
name
,
QString
secuences
);
public
slots
:
private:
private:
QString
settingsFilePath
;
QString
settingsFilePath
;
QMap
<
QString
,
QList
<
QKeySequence
>
>
shortCuts
;
QMap
<
QString
,
QList
<
QKeySequence
>
>
shortCuts
;
QMap
<
QString
,
QList
<
QKeySequence
>
>
defaultShortCuts
;
QMap
<
QString
,
QList
<
QKeySequence
>
>
defaultShortCuts
;
void
fillDefaultShorcuts
();
QString
stringifySecuence
(
QList
<
QKeySequence
>
secuence
)
const
;
QString
stringifySecuence
(
QList
<
QKeySequence
>
secuence
)
const
;
QList
<
QKeySequence
>
parseSecuenceString
(
QString
stringSecuence
);
QList
<
QKeySequence
>
parseSecuenceString
(
QString
stringSecuence
);
...
...
cockatrice/src/tab_deck_editor.cpp
View file @
beaa4e93
...
@@ -254,26 +254,28 @@ void TabDeckEditor::createFiltersDock()
...
@@ -254,26 +254,28 @@ void TabDeckEditor::createFiltersDock()
void
TabDeckEditor
::
createMenus
()
void
TabDeckEditor
::
createMenus
()
{
{
aNewDeck
=
new
QAction
(
QString
(),
this
);
aNewDeck
=
new
QAction
(
QString
(),
this
);
connect
(
aNewDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actNewDeck
()));
aNewDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aNewDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aNewDeck"
,
"TabDeckEditor/aNewDeck"
,
QKeySequence
::
New
));
QKeySequence
::
New
));
connect
(
aNewDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actNewDeck
()));
aLoadDeck
=
new
QAction
(
QString
(),
this
);
aLoadDeck
=
new
QAction
(
QString
(),
this
);
connect
(
aLoadDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actLoadDeck
()));
aLoadDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aLoadDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aLoadDeck"
,
"TabDeckEditor/aLoadDeck"
,
QKeySequence
::
Open
));
QKeySequence
::
Open
));
connect
(
aLoadDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actLoadDeck
()));
aSaveDeck
=
new
QAction
(
QString
(),
this
);
aSaveDeck
=
new
QAction
(
QString
(),
this
);
connect
(
aSaveDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actSaveDeck
()));
aSaveDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aSaveDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aSaveDeck"
,
"TabDeckEditor/aSaveDeck"
,
QKeySequence
::
Save
));
QKeySequence
::
Save
));
connect
(
aSaveDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actSaveDeck
()));
aSaveDeckAs
=
new
QAction
(
QString
(),
this
);
aSaveDeckAs
=
new
QAction
(
QString
(),
this
);
// aSaveDeckAs->setShortcuts(QKeySequence::SaveAs);
connect
(
aSaveDeckAs
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actSaveDeckAs
()));
connect
(
aSaveDeckAs
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actSaveDeckAs
()));
aSaveDeckAs
->
setShortcuts
(
QKeySequence
::
SaveAs
);
aSaveDeckAs
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aSaveDeckAs"
,
QKeySequence
()));
aLoadDeckFromClipboard
=
new
QAction
(
QString
(),
this
);
aLoadDeckFromClipboard
=
new
QAction
(
QString
(),
this
);
connect
(
aLoadDeckFromClipboard
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actLoadDeckFromClipboard
()));
connect
(
aLoadDeckFromClipboard
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actLoadDeckFromClipboard
()));
...
@@ -288,24 +290,39 @@ void TabDeckEditor::createMenus()
...
@@ -288,24 +290,39 @@ void TabDeckEditor::createMenus()
QKeySequence
::
Copy
));
QKeySequence
::
Copy
));
aPrintDeck
=
new
QAction
(
QString
(),
this
);
aPrintDeck
=
new
QAction
(
QString
(),
this
);
connect
(
aPrintDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actPrintDeck
()));
aPrintDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aPrintDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aPrintDeck"
,
QKeySequence
::
Print
));
"TabDeckEditor/aPrintDeck"
,
QKeySequence
::
Print
));
connect
(
aPrintDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actPrintDeck
()));
aAnalyzeDeck
=
new
QAction
(
QString
(),
this
);
aAnalyzeDeck
=
new
QAction
(
QString
(),
this
);
connect
(
aAnalyzeDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actAnalyzeDeck
()));
connect
(
aAnalyzeDeck
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actAnalyzeDeck
()));
aAnalyzeDeck
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aAnalyzeDeck"
,
QKeySequence
()));
aClose
=
new
QAction
(
QString
(),
this
);
aClose
=
new
QAction
(
QString
(),
this
);
connect
(
aClose
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
closeRequest
()));
connect
(
aClose
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
closeRequest
()));
aClose
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aClose"
,
QKeySequence
()));
aOpenCustomFolder
=
new
QAction
(
QString
(),
this
);
aOpenCustomFolder
=
new
QAction
(
QString
(),
this
);
connect
(
aOpenCustomFolder
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actOpenCustomFolder
()));
connect
(
aOpenCustomFolder
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actOpenCustomFolder
()));
aOpenCustomFolder
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aOpenCustomFolder"
,
QKeySequence
()));
aEditSets
=
new
QAction
(
QString
(),
this
);
aEditSets
=
new
QAction
(
QString
(),
this
);
connect
(
aEditSets
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actEditSets
()));
connect
(
aEditSets
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actEditSets
()));
aEditSets
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aEditSets"
,
QKeySequence
()));
aEditTokens
=
new
QAction
(
QString
(),
this
);
aEditTokens
=
new
QAction
(
QString
(),
this
);
connect
(
aEditTokens
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actEditTokens
()));
connect
(
aEditTokens
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actEditTokens
()));
aEditTokens
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aEditTokens"
,
QKeySequence
()));
aResetLayout
=
new
QAction
(
QString
(),
this
);
aResetLayout
=
new
QAction
(
QString
(),
this
);
connect
(
aResetLayout
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
restartLayout
()));
connect
(
aResetLayout
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
restartLayout
()));
aResetLayout
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aResetLayout"
,
QKeySequence
()));
deckMenu
=
new
QMenu
(
this
);
deckMenu
=
new
QMenu
(
this
);
deckMenu
->
addAction
(
aNewDeck
);
deckMenu
->
addAction
(
aNewDeck
);
...
@@ -328,10 +345,14 @@ void TabDeckEditor::createMenus()
...
@@ -328,10 +345,14 @@ void TabDeckEditor::createMenus()
aClearFilterAll
=
new
QAction
(
QString
(),
this
);
aClearFilterAll
=
new
QAction
(
QString
(),
this
);
aClearFilterAll
->
setIcon
(
QIcon
(
":/resources/icon_clearsearch.svg"
));
aClearFilterAll
->
setIcon
(
QIcon
(
":/resources/icon_clearsearch.svg"
));
connect
(
aClearFilterAll
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actClearFilterAll
()));
connect
(
aClearFilterAll
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actClearFilterAll
()));
aClearFilterAll
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aClearFilterAll"
,
QKeySequence
()));
aClearFilterOne
=
new
QAction
(
QString
(),
this
);
aClearFilterOne
=
new
QAction
(
QString
(),
this
);
aClearFilterOne
->
setIcon
(
QIcon
(
":/resources/decrement.svg"
));
aClearFilterOne
->
setIcon
(
QIcon
(
":/resources/decrement.svg"
));
connect
(
aClearFilterOne
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actClearFilterOne
()));
connect
(
aClearFilterOne
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actClearFilterOne
()));
aClearFilterOne
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabDeckEditor/aClearFilterOne"
,
QKeySequence
()));
dbMenu
=
new
QMenu
(
this
);
dbMenu
=
new
QMenu
(
this
);
dbMenu
->
addAction
(
aEditSets
);
dbMenu
->
addAction
(
aEditSets
);
...
...
cockatrice/src/tab_game.cpp
View file @
beaa4e93
...
@@ -473,12 +473,17 @@ TabGame::TabGame(TabSupervisor *_tabSupervisor, QList<AbstractClient *> &_client
...
@@ -473,12 +473,17 @@ TabGame::TabGame(TabSupervisor *_tabSupervisor, QList<AbstractClient *> &_client
QAction
*
temp
=
new
QAction
(
QString
(),
this
);
QAction
*
temp
=
new
QAction
(
QString
(),
this
);
connect
(
temp
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actPhaseAction
()));
connect
(
temp
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
actPhaseAction
()));
switch
(
i
)
{
switch
(
i
)
{
case
0
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabGame/phase0"
,
QKeySequence
(
"F5"
)));
break
;
case
0
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase0"
,
QKeySequence
(
"F5"
)));
break
;
case
2
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabGame/phase2"
,
QKeySequence
(
"F6"
)));
break
;
case
1
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase1"
,
QKeySequence
()));
break
;
case
3
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabGame/phase3"
,
QKeySequence
(
"F7"
)));
break
;
case
2
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase2"
,
QKeySequence
(
"F6"
)));
break
;
case
4
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabGame/phase4"
,
QKeySequence
(
"F8"
)));
break
;
case
3
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase3"
,
QKeySequence
(
"F7"
)));
break
;
case
9
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabGame/phase9"
,
QKeySequence
(
"F9"
)));
break
;
case
4
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase4"
,
QKeySequence
(
"F8"
)));
break
;
case
10
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"TabGame/phase10"
,
QKeySequence
(
"F10"
)));
break
;
case
5
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase5"
,
QKeySequence
()));
break
;
case
6
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase6"
,
QKeySequence
()));
break
;
case
7
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase7"
,
QKeySequence
()));
break
;
case
8
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase8"
,
QKeySequence
()));
break
;
case
9
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase9"
,
QKeySequence
(
"F9"
)));
break
;
case
10
:
temp
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"Player/phase10"
,
QKeySequence
(
"F10"
)));
break
;
default:
;
default:
;
}
}
phasesMenu
->
addAction
(
temp
);
phasesMenu
->
addAction
(
temp
);
...
@@ -550,7 +555,7 @@ void TabGame::retranslateUi()
...
@@ -550,7 +555,7 @@ void TabGame::retranslateUi()
if
(
aNextPhase
)
{
if
(
aNextPhase
)
{
aNextPhase
->
setText
(
tr
(
"Next &phase"
));
aNextPhase
->
setText
(
tr
(
"Next &phase"
));
aNextPhase
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aNextPhase
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
TabGame
/aNextPhase"
,
"
Player
/aNextPhase"
,
QList
<
QKeySequence
>
()
QList
<
QKeySequence
>
()
<<
QKeySequence
(
"Ctrl+Space"
)
<<
QKeySequence
(
"Ctrl+Space"
)
<<
QKeySequence
(
"Tab"
)));
<<
QKeySequence
(
"Tab"
)));
...
@@ -558,7 +563,7 @@ void TabGame::retranslateUi()
...
@@ -558,7 +563,7 @@ void TabGame::retranslateUi()
if
(
aNextTurn
)
{
if
(
aNextTurn
)
{
aNextTurn
->
setText
(
tr
(
"Next &turn"
));
aNextTurn
->
setText
(
tr
(
"Next &turn"
));
aNextTurn
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aNextTurn
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
TabGame
/aNextTurn"
,
"
Player
/aNextTurn"
,
QList
<
QKeySequence
>
()
QList
<
QKeySequence
>
()
<<
QKeySequence
(
"Ctrl+Return"
)
<<
QKeySequence
(
"Ctrl+Return"
)
<<
QKeySequence
(
"Ctrl+Enter"
)));
<<
QKeySequence
(
"Ctrl+Enter"
)));
...
@@ -566,19 +571,19 @@ void TabGame::retranslateUi()
...
@@ -566,19 +571,19 @@ void TabGame::retranslateUi()
if
(
aRemoveLocalArrows
)
{
if
(
aRemoveLocalArrows
)
{
aRemoveLocalArrows
->
setText
(
tr
(
"&Remove all local arrows"
));
aRemoveLocalArrows
->
setText
(
tr
(
"&Remove all local arrows"
));
aRemoveLocalArrows
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aRemoveLocalArrows
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
TabGame
/aRemoveLocalArrows"
,
"
Player
/aRemoveLocalArrows"
,
QKeySequence
(
"Ctrl+R"
)));
QKeySequence
(
"Ctrl+R"
)));
}
}
if
(
aRotateViewCW
)
{
if
(
aRotateViewCW
)
{
aRotateViewCW
->
setText
(
tr
(
"Rotate View Cl&ockwise"
));
aRotateViewCW
->
setText
(
tr
(
"Rotate View Cl&ockwise"
));
aRotateViewCW
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aRotateViewCW
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
TabGame
/aRotateViewCW"
,
"
Player
/aRotateViewCW"
,
QKeySequence
(
"Ctrl+]"
)));
QKeySequence
(
"Ctrl+]"
)));
}
}
if
(
aRotateViewCCW
)
{
if
(
aRotateViewCCW
)
{
aRotateViewCCW
->
setText
(
tr
(
"Rotate View Co&unterclockwise"
));
aRotateViewCCW
->
setText
(
tr
(
"Rotate View Co&unterclockwise"
));
aRotateViewCCW
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aRotateViewCCW
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
TabGame
/aRotateViewCCW"
,
"
Player
/aRotateViewCCW"
,
QKeySequence
(
"Ctrl+["
)));
QKeySequence
(
"Ctrl+["
)));
}
}
if
(
aGameInfo
)
if
(
aGameInfo
)
...
@@ -586,19 +591,19 @@ void TabGame::retranslateUi()
...
@@ -586,19 +591,19 @@ void TabGame::retranslateUi()
if
(
aConcede
)
{
if
(
aConcede
)
{
aConcede
->
setText
(
tr
(
"&Concede"
));
aConcede
->
setText
(
tr
(
"&Concede"
));
aConcede
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aConcede
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
TabGame/aRotateViewCCW
"
,
"
Player/aConcede
"
,
QKeySequence
(
"F2"
)));
QKeySequence
(
"F2"
)));
}
}
if
(
aLeaveGame
)
{
if
(
aLeaveGame
)
{
aLeaveGame
->
setText
(
tr
(
"&Leave game"
));
aLeaveGame
->
setText
(
tr
(
"&Leave game"
));
aLeaveGame
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aLeaveGame
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
TabGame
/aLeaveGame"
,
"
Player
/aLeaveGame"
,
QKeySequence
(
"Ctrl+Q"
)));
QKeySequence
(
"Ctrl+Q"
)));
}
}
if
(
aCloseReplay
)
{
if
(
aCloseReplay
)
{
aCloseReplay
->
setText
(
tr
(
"C&lose replay"
));
aCloseReplay
->
setText
(
tr
(
"C&lose replay"
));
aCloseReplay
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
aCloseReplay
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"
TabGame
/aCloseReplay"
,
"
Player
/aCloseReplay"
,
QKeySequence
(
"Ctrl+Q"
)));
QKeySequence
(
"Ctrl+Q"
)));
}
}
...
...
cockatrice/src/window_main.cpp
View file @
beaa4e93
...
@@ -453,24 +453,54 @@ void MainWindow::retranslateUi()
...
@@ -453,24 +453,54 @@ void MainWindow::retranslateUi()
setClientStatusTitle
();
setClientStatusTitle
();
aConnect
->
setText
(
tr
(
"&Connect..."
));
aConnect
->
setText
(
tr
(
"&Connect..."
));
aConnect
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aConnect"
,
QKeySequence
()));
aDisconnect
->
setText
(
tr
(
"&Disconnect"
));
aDisconnect
->
setText
(
tr
(
"&Disconnect"
));
aDisconnect
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aDisconnect"
,
QKeySequence
()));
aSinglePlayer
->
setText
(
tr
(
"Start &local game..."
));
aSinglePlayer
->
setText
(
tr
(
"Start &local game..."
));
aSinglePlayer
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aSinglePlayer"
,
QKeySequence
()));
aWatchReplay
->
setText
(
tr
(
"&Watch replay..."
));
aWatchReplay
->
setText
(
tr
(
"&Watch replay..."
));
aWatchReplay
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aWatchReplay"
,
QKeySequence
()));
aDeckEditor
->
setText
(
tr
(
"&Deck editor"
));
aDeckEditor
->
setText
(
tr
(
"&Deck editor"
));
aDeckEditor
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aDeckEditor"
,
QKeySequence
()));
aFullScreen
->
setText
(
tr
(
"&Full screen"
));
aFullScreen
->
setText
(
tr
(
"&Full screen"
));
aFullScreen
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aFullScreen"
,
QKeySequence
(
"Ctrl+F"
)));
aFullScreen
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aFullScreen"
,
QKeySequence
(
"Ctrl+F"
)));
aRegister
->
setText
(
tr
(
"&Register to server..."
));
aRegister
->
setText
(
tr
(
"&Register to server..."
));
aRegister
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aRegister"
,
QKeySequence
()));
aSettings
->
setText
(
tr
(
"&Settings..."
));
aSettings
->
setText
(
tr
(
"&Settings..."
));
aSettings
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aSettings"
,
QKeySequence
()));
aExit
->
setText
(
tr
(
"&Exit"
));
aExit
->
setText
(
tr
(
"&Exit"
));
aExit
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aExit"
,
QKeySequence
()));
#if defined(__APPLE__)
/* For OSX */
#if defined(__APPLE__)
/* For OSX */
cockatriceMenu
->
setTitle
(
tr
(
"A&ctions"
));
cockatriceMenu
->
setTitle
(
tr
(
"A&ctions"
));
#else
#else
cockatriceMenu
->
setTitle
(
tr
(
"&Cockatrice"
));
cockatriceMenu
->
setTitle
(
tr
(
"&Cockatrice"
));
#endif
#endif
aAbout
->
setText
(
tr
(
"&About Cockatrice"
));
aAbout
->
setText
(
tr
(
"&About Cockatrice"
));
helpMenu
->
setTitle
(
tr
(
"&Help"
));
helpMenu
->
setTitle
(
tr
(
"&Help"
));
aCheckCardUpdates
->
setText
(
tr
(
"Check for card updates..."
));
aCheckCardUpdates
->
setText
(
tr
(
"Check for card updates..."
));
aCheckCardUpdates
->
setShortcuts
(
settingsCache
->
shortcuts
().
getShortcut
(
"MainWindow/aCheckCardUpdates"
,
QKeySequence
()));
tabSupervisor
->
retranslateUi
();
tabSupervisor
->
retranslateUi
();
}
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment