From a6e4cc51a3a56a4c61b83e8bf50ef15e16ea60e4 Mon Sep 17 00:00:00 2001 From: Hajime Hoshi Date: Mon, 10 Apr 2017 21:37:59 +0900 Subject: [PATCH] examples/keyboard: Add more keys --- .../_resources/images/keyboard/keyboard.png | Bin 2153 -> 1894 bytes examples/keyboard/keyboard/gen.go | 12 ++++----- examples/keyboard/keyboard/keyrects.go | 8 ++++++ examples/keyboard/main.go | 24 ++++++++++++------ 4 files changed, 29 insertions(+), 15 deletions(-) diff --git a/examples/_resources/images/keyboard/keyboard.png b/examples/_resources/images/keyboard/keyboard.png index 35a21dcbfab51a86950287d94f8f03d7a8c3d8bf..0cc8f98b22c7f9e5410f79acf43c82c470cb9b2f 100644 GIT binary patch delta 1849 zcmaKqdpOez1IOFkay`nu717yg3n`_9j0~Y9w%iVj&K|iZ$|U_p$6Irq=bh-yEiz)7 zXqLopIWC7&Ny=rz98`>9W^d`;lH3xA2W_R^8rO)N)l`8A1bg*MzJI zZb{)ole!2=(M_A6K7KY7XbEoDd9aNNE=o&(D_B(;JY5zOjjcjGmyQV=7J1tZ8G*U` zqlm#~nDT2PlD|=eA`gEVUc0$Nmb|ocE{*81Zgn~xUXM88VxY8b@0((q2z6r(Qj)CE zsy>>HWle?q_d!%L7>X9}g)EJ=V^2^{{`==&a5S2tF={=Jgr&e+*7RM6v#jMsqhBgC zh8r>G`x=Q-o8fZ;PgZ(EFX28BFmV;6Yf#CFpN}il(Le6v?3~*=$j7}Sl8N26`M`G7`~%){DHA&8|NIOai8?2>C3CE zjM-NG=YUUiCM+Tz=LsSbkAjmcW$o$j?}TalNHRB3U9`ud>pX7Nuxke0r78x`7Vb-< zpTqM%Id)h!lPndppC%i_D+X!ssoJ{mKQ4P?yY-Q7_(KPrKzSWv@P1L9SsI1dtulKa z60u_y18Ix0P%nNR6d1oliZl-{Y%{G`Uz`OnkVi(>$;5JnWW^-K1^m>?n5TcmbE0U^ zs6k_rpo@*Xj0`nbcxP6&1*OWG^CzG@*%`kL4M?K$R`e83#;73|6-bdkH;}68#Z&X4 zQ-^M^=o;T@&2Su!d%k}PlVb?haM}}kjND0r)K?QG5hY{R1JR3bY$3)yM;Oc2fJn^# z=ZyM-!P@JA?y1`Bd*b}vq%DznhQ{}rH-YO57c^G_VRMTn$`A%nJYW|#>AQ7;oymCl z%_25o=~P2(zxRZ}Pky|jhE>sHct90!V}-iMv_CW1^U&9>BWlD+^c4* zAM;Wt@Lv0aRw9-)Z5`!U(2b0tcYZ%7mT=@tz2}XO(V=M_03ZuwJux4WD3z?o z(N2La`1e3p2Jx}sQQ3v&h#rFoN6#Gj&|<5goAe;nIQl}~4^v_1YBoZs;h(hf%xT>4 zuC&8isaD2zOIfwJc=x=?4oZT5*Z5V1(~$#B+L=VVI7{?f%dnJV7X6nF7LQC`!n$_i zpM@1t=eW$%a`GMlpq;=~J?AlUG>LMFpwl(Erc!@+7`M2PfRz_ohNhx(GszZ153U7= zXHg#dmNp67xbM7>d>#>ugyAdFGMTuZI__0Q1_y3xQL(`{wb6Ik zE{Dvk2Nba-@#MS_hc;?fph8>b5N7sIksraC6+VOl7|O4VqNr_+drnbq)fW-2u66zFQ>{e!9{Plc0fvvg0w`eK+u-e)wTcQJf=DXzCi zFM_csG_^}x7=i3us4@zZ@*2mugeS2HC=5NKf4nH)bnR%aJwoiQBX#mt!p9P-~AQ%MJy1| zcU~OCrS}^g7gC)@l!WClIcki1OR}-y|7-2l3r@*ukG>r?6MP=97V63F2zN!$}@l+A(GwJq4DeH}fU*u9Ldt;8QvP z7Lym#o6lYz=0?pTGT!kw9U`1<&QA&P`Ea08O>MaAxbqt|#c>a*+3@c$ z-JLIWmNWZ0P9k0qtI%lHccAJ=IJjg#kQR?1wF`k9qRn_eKQp{D6cGU#&zhq+aO9C_ zE42s-DtE4BHb!2v%aUBim)mMzJ6N8|;SEfm(B=A+J8XSj-fI=Ssm{*-&EUfwp+hQA zf3(2rEc4LlvW`!dd=&d_y()W|?*+cbO5&yWWz$>hu%-MeU7vq}(~sKQGosp9K~g(9 zK#|%?Lyk<}9fYzOQ9(}g>a~F0MmIDLC=F5&f+&)mQ7x)CRt{rsmPM*wr6LnitgJ3ev9alc>;}rMhrpwVVtB9hSO4;A$`G3~>f5Ves!S6sWrzRS3 TE;dev{5$30>WzMO=5oegF)x!Z literal 2153 zcmdT``#Td18=h077~hIs@=keKg+vyKIfN-2D$#p^p8I~D>$)GJoZt%bYVrU8K;e>u z?NtCk!fKDN$w}>1dp^=*5B8xDu6BDU7Kus+k`2rp6Yu?Lm7L`WRszv9%!rT@82RAbh(%+&oJ7yr)?;sjHH_ejOtlD&<$lR1`8vsKGR*URU=w9NiKE{%{O(w-v5S?NT(u^H<;6~=9-h%} z`&fjww85ZajQT*zrcAi|AG@-KTBwGAbF7*-+u25LZNTWt#{FWqj)m6<6K$Xu1y-oz z(NkwtFHpwv--U2U;L(IYkdLr|Vf>4Q&gd2YsUqU_mNT(z6IKl`aeoOGI1!U{JV6@a zaVx#r71w(!-p`AnD-|9K*)V^+^Ya8`b354L#%5e};y6wePjIDn2Qj(YI2G%XLcrCi z7oc+D_z=>)g8ymN436J$2mWeAF3`GC9&SQuBaBt?BlOVC*!Wir6|>R zyMHbj{j8p=8$%{fBU=JfLqXH@?&(L;>y zEA%2Qzg_rl0!47B9*V{O!w(g^$Un}FKxY}-bW&7a+z@)$0T897i2m?F^38NtyywfjutW-on33=sO zacTdi3_k`()Czk&o)%R{4k})`WqCf=H|lMOQW$Jt*;E0%5D;r=3<`(^Q$mf$vtp~s zc1l4y_ZUaHZ@*QJGP$*;1|kY}-LF4xE$1%YHnUBGOW1DAW@@3;R`oV@bMrYT^VBYb6IxQL;ia&v#R-67U{X!Ti(=AubMa#mqyF4 zPCw(>AHbEhi2jiD?&_tBa*g}!Kq@`kg1Zyx7PoDkW?VhR4tU0GB&N=B%8ar)#5-qs z_Px0k3ihF!aiPqfDCKMfa`LVl*cj|w)=RQFD>0v^MGk`IHz9)udAG4I0t3#AZed_c z(RhUpBbrL$2F`zwx5^ZZm3`;2R;uf=;cy}DGGB`903Kl6AATiN6Ar$aZ&k4kQTuFA z>8LP>t;8zgA{Zm$c~M)AqwviU2=BBug)(v#qzZ-(^_q6innu3;;laVgHr+G*zMKTFxr6ezBBVm0)^FK5((+9u_!JP%h9$D=5 z*dLDyba~Y_GWsxNo3HiWyHrWVYI2guaIZykao0WQ8VgH|Yu7m_$w9HU zstm#JPf7?#i{e5oG^bT!?TTV5x}(UE?ce*<>G>K=Nm>}#nemCO@T25Tl#o8l(r+=_ zomeyLb+1ZP|L4xYU!OFOWaHL<_Ry1&358L0zVKNOMwHDK*rvY1_o?hg{;G_FMCZoJ z?q9+I{wa-{bjjH3D$bPPyh-Zr-x`MO4_#hL1V2v;t%lZ8_nH0xcPoQOQgL_bf`J9z z^n;L&DtNnnvdHI)+y3YsJ;5DRfscsd^98@c}(?gkISJYMZb0RAVL|9eCJFDAEC|A`5^ X6C=8lku>+cqyV^N=VVK<@k{zQHPq<8 diff --git a/examples/keyboard/keyboard/gen.go b/examples/keyboard/keyboard/gen.go index cc47969c3..006ba76ec 100644 --- a/examples/keyboard/keyboard/gen.go +++ b/examples/keyboard/keyboard/gen.go @@ -30,10 +30,10 @@ import ( ) var keyboardKeys = [][]string{ - {"Esc", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", " ", " ", " ", "Del"}, - {"Tab", "Q", "W", "E", "R", "T", "Y", "U", "I", "O", "P", " ", " ", "BS"}, - {"Ctrl", "A", "S", "D", "F", "G", "H", "J", "K", "L", " ", " ", "Enter"}, - {"Shift", "Z", "X", "C", "V", "B", "N", "M", ",", ".", " ", " "}, + {"Esc", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "-", "=", "`", "Del"}, + {"Tab", "Q", "W", "E", "R", "T", "Y", "U", "I", "O", "P", "[", "]", "BS"}, + {"Ctrl", "A", "S", "D", "F", "G", "H", "J", "K", "L", ";", "'", "Enter"}, + {"Shift", "Z", "X", "C", "V", "B", "N", "M", ",", ".", "/", " "}, {" ", "Alt", "Space", " ", " "}, {}, {"", "Up", ""}, @@ -118,9 +118,7 @@ func outputKeyboardImage() (map[string]image.Rectangle, error) { width = 16 * 3 } if key != "" { - if err := drawKey(img, key, x, y, width); err != nil { - return nil, err - } + drawKey(img, key, x, y, width) if key != " " { keyMap[key] = image.Rect(x, y, x+width, y+height) } diff --git a/examples/keyboard/keyboard/keyrects.go b/examples/keyboard/keyboard/keyrects.go index 47c08161c..f3edf9f3c 100644 --- a/examples/keyboard/keyboard/keyrects.go +++ b/examples/keyboard/keyboard/keyrects.go @@ -25,8 +25,11 @@ import ( var keyboardKeyRects = map[string]image.Rectangle{} func init() { + keyboardKeyRects["'"] = image.Rect(208, 36, 224, 54) keyboardKeyRects[","] = image.Rect(168, 54, 184, 72) + keyboardKeyRects["-"] = image.Rect(192, 0, 208, 18) keyboardKeyRects["."] = image.Rect(184, 54, 200, 72) + keyboardKeyRects["/"] = image.Rect(200, 54, 216, 72) keyboardKeyRects["0"] = image.Rect(176, 0, 192, 18) keyboardKeyRects["1"] = image.Rect(32, 0, 48, 18) keyboardKeyRects["2"] = image.Rect(48, 0, 64, 18) @@ -37,6 +40,8 @@ func init() { keyboardKeyRects["7"] = image.Rect(128, 0, 144, 18) keyboardKeyRects["8"] = image.Rect(144, 0, 160, 18) keyboardKeyRects["9"] = image.Rect(160, 0, 176, 18) + keyboardKeyRects[";"] = image.Rect(192, 36, 208, 54) + keyboardKeyRects["="] = image.Rect(208, 0, 224, 18) keyboardKeyRects["A"] = image.Rect(48, 36, 64, 54) keyboardKeyRects["Alt"] = image.Rect(64, 72, 96, 90) keyboardKeyRects["B"] = image.Rect(120, 54, 136, 72) @@ -76,6 +81,9 @@ func init() { keyboardKeyRects["X"] = image.Rect(72, 54, 88, 72) keyboardKeyRects["Y"] = image.Rect(120, 18, 136, 36) keyboardKeyRects["Z"] = image.Rect(56, 54, 72, 72) + keyboardKeyRects["["] = image.Rect(200, 18, 216, 36) + keyboardKeyRects["]"] = image.Rect(216, 18, 232, 36) + keyboardKeyRects["`"] = image.Rect(224, 0, 240, 18) } func KeyRect(name string) (image.Rectangle, bool) { diff --git a/examples/keyboard/main.go b/examples/keyboard/main.go index c5a2d9793..eb0c1f4dc 100644 --- a/examples/keyboard/main.go +++ b/examples/keyboard/main.go @@ -41,14 +41,22 @@ func init() { } var keyNames = map[ebiten.Key]string{ - ebiten.KeyBackspace: "BS", - ebiten.KeyComma: ",", - ebiten.KeyDelete: "Del", - ebiten.KeyEnter: "Enter", - ebiten.KeyEscape: "Esc", - ebiten.KeyPeriod: ".", - ebiten.KeySpace: "Space", - ebiten.KeyTab: "Tab", + ebiten.KeyBackspace: "BS", + ebiten.KeyComma: ",", + ebiten.KeyDelete: "Del", + ebiten.KeyEnter: "Enter", + ebiten.KeyEscape: "Esc", + ebiten.KeyPeriod: ".", + ebiten.KeySpace: "Space", + ebiten.KeyTab: "Tab", + ebiten.KeyMinus: "-", + ebiten.KeyEqual: "=", + ebiten.KeyGraveAccent: "`", + ebiten.KeyLeftBracket: "[", + ebiten.KeyRightBracket: "]", + ebiten.KeySemicolon: ";", + ebiten.KeyApostrophe: "'", + ebiten.KeySlash: "/", // Arrows ebiten.KeyDown: "Down",