From e4068fc75180f761cf5dd0be094646f448c7218c Mon Sep 17 00:00:00 2001 From: Nicolas Aguirre Date: Sun, 28 Jun 2015 15:33:22 +0200 Subject: [PATCH] Remove edje specific code and use elementary button, table and entry. --- configure.ac | 6 +- data/Makefile.am | 20 -- data/equate.edc | 271 -------------------- data/images/.cvsignore | 3 - data/images/Makefile.am | 14 -- data/images/bg.png | Bin 1114 -> 0 bytes data/images/brushed_texture.png | Bin 87845 -> 0 bytes data/images/btn_normal.png | Bin 589 -> 0 bytes data/images/btn_pressed.png | Bin 456 -> 0 bytes data/images/entry_disabled.png | Bin 1590 -> 0 bytes data/images/entry_light_overlay.png | Bin 3537 -> 0 bytes data/images/metalsphere.png | Bin 2683 -> 0 bytes data/images/shading.png | Bin 3177 -> 0 bytes data/images/text_button.png | Bin 123 -> 0 bytes data/images/text_display.png | Bin 1302 -> 0 bytes data/text.edc | 359 --------------------------- src/main.c | 370 +++++++++++++--------------- 17 files changed, 176 insertions(+), 867 deletions(-) delete mode 100644 data/equate.edc delete mode 100644 data/images/.cvsignore delete mode 100644 data/images/Makefile.am delete mode 100644 data/images/bg.png delete mode 100644 data/images/brushed_texture.png delete mode 100644 data/images/btn_normal.png delete mode 100644 data/images/btn_pressed.png delete mode 100644 data/images/entry_disabled.png delete mode 100644 data/images/entry_light_overlay.png delete mode 100644 data/images/metalsphere.png delete mode 100644 data/images/shading.png delete mode 100644 data/images/text_button.png delete mode 100644 data/images/text_display.png delete mode 100644 data/text.edc diff --git a/configure.ac b/configure.ac index 4999e38..54c8fa5 100644 --- a/configure.ac +++ b/configure.ac @@ -29,21 +29,17 @@ PKG_PROG_PKG_CONFIG ### Checks for libraries -PKG_CHECK_MODULES([EQUATE], [elementary edje ecore-evas ecore ecore-input evas >= 1.0.0]) +PKG_CHECK_MODULES([EQUATE], [elementary >= 1.7.0]) ### Checks for compiler characteristics AC_HEADER_STDC - -EFL_WITH_BIN([edje], [edje-cc], [edje_cc]) - AC_CONFIG_FILES([ Makefile src/Makefile data/Makefile -data/images/Makefile ]) AC_OUTPUT diff --git a/data/Makefile.am b/data/Makefile.am index a821443..130302b 100644 --- a/data/Makefile.am +++ b/data/Makefile.am @@ -1,23 +1,6 @@ MAINTAINERCLEANFILES = Makefile.in -SUBDIRS = . images - -EDJE_CC = @edje_cc@ -EDJE_FLAGS = -v -id $(top_srcdir)/data/images - -EDCS = equate.edc text.edc -EDJS = $(EDCS:%.edc=%.edj) -SUFFIXES = .edc .edj - -themedir = $(pkgdatadir)/themes -theme_DATA = $(EDJS) - -all: $(EDCS) - -.edc.edj: - $(EDJE_CC) $(EDJE_FLAGS) $< $@ - desktopdir = $(datadir)/applications desktop_DATA = equate.desktop @@ -25,6 +8,3 @@ icondir = $(datadir)/icons icon_DATA = equate.png EXTRA_DIST = $(EDCS) equate.png equate.desktop - -clean-local: - rm -f $(EDJS) diff --git a/data/equate.edc b/data/equate.edc deleted file mode 100644 index 52955ad..0000000 --- a/data/equate.edc +++ /dev/null @@ -1,271 +0,0 @@ - - -#define BUTTON_TABLE_ITEM(pname, x, y, w, h) \ -item { \ - type: GROUP; \ - source: pname; \ - weight: 0.5 0.5; \ - align: -1 -1; \ - position: x y; \ - span: w h; \ -} - - -#define BUTTON(pname, label, emits) \ -group { name: "button/"pname; \ - images { \ - image: "btn_normal.png" COMP; \ - image: "btn_pressed.png" COMP; \ - } \ - parts { \ - part { name: "button_image"; \ - mouse_events: 1; \ - description { state: "default" 0.0; \ - rel1.offset: 3 3; \ - rel2.offset: -4 -4; \ - image { \ - normal: "btn_normal.png"; \ - border: 7 7 7 7; \ - } \ - \ - } \ - description { state: "clicked" 0.0; \ - inherit: "default" 0.0; \ - image.normal: "btn_pressed.png"; \ - image.border: 7 7 7 7; \ - } \ - } \ - \ - part { \ - name: "elm.text"; \ - type: TEXT; \ - effect: SHADOW; \ - mouse_events: 0; \ - scale: 1; \ - description { state: "default" 0.0; \ - visible: 1; \ - rel1.offset: 4 4; \ - rel2.offset: -5 -5; \ - color: 255 255 255 240; \ - color3: 20 20 20 128; \ - /* color: 172 179 191 255; */ \ - /* color3: 0 0 0 30; */ \ - text { \ - font: "Sans"; \ - size: 25; \ - min: 1 1; \ - align: 0.5 0.5; \ - text_class: "button"; \ - text: label; \ - } \ - } \ - } \ - part { \ - name: "over1"; \ - mouse_events: 0; \ - type: RECT; \ - description { \ - state: "default" 0.0; \ - rel2.relative: 1.0 0.5; \ - color: 0 0 0 0; \ - } \ - description { state: "disabled" 0.0; \ - inherit: "default" 0.0; \ - } \ - } \ - part { name: "over2"; \ - mouse_events: 1; \ - repeat_events: 1; \ - ignore_flags: ON_HOLD; \ - type: RECT; \ - description { \ - state: "default" 0.0; \ - color: 0 0 0 0; \ - } \ - description { \ - state: "disabled" 0.0; \ - inherit: "default" 0.0; \ - visible: 0; \ - } \ - } \ - part { name: "over3"; \ - mouse_events: 1; \ - repeat_events: 1; \ - type: RECT; \ - description { state: "default" 0.0; \ - color: 255 255 255 0; \ - } \ - description { state: "clicked" 0.0; \ - inherit: "default" 0.0; \ - color: 255 255 255 0; \ - } \ - } \ - \ - \ - } \ - programs { \ - program { \ - name: "button_click"; \ - signal: "mouse,down,1"; \ - source: "over2"; \ - action: STATE_SET "clicked" 0.0; \ - target: "button_image"; \ - } \ - \ - program { \ - name: "button_unclick"; \ - signal: "mouse,up,1"; \ - source: "over3"; \ - action: STATE_SET "default" 0.0; \ - target: "button_image"; \ - } \ - program { \ - name: "button_click2"; \ - signal: "mouse,down,1"; \ - source: "over3"; \ - action: STATE_SET "clicked" 0.0; \ - target: "over3"; \ - } \ - program { \ - name: "button_unclick2"; \ - signal: "mouse,up,1"; \ - source: "over3"; \ - action: STATE_SET "default" 0.0; \ - transition: DECELERATE 0.5; \ - target: "over3"; \ - } \ - program { \ - name: "button_unclick3"; \ - signal: "mouse,clicked,1"; \ - source: "over2"; \ - action: SIGNAL_EMIT emits ""; \ - } \ - } \ -} - -images { - image: "bg.png" COMP; - image: "shading.png" COMP; - image: "brushed_texture.png" COMP; - image: "metalsphere.png" COMP; - image: "entry_disabled.png" COMP; - image: "entry_light_overlay.png" COMP; -} -collections { - - BUTTON("add", "+", "OP_ADD"); - BUTTON("min", "-", "OP_SUB"); - BUTTON("mul", "*", "OP_MUT"); - BUTTON("div", "/", "OP_DIV"); - - BUTTON("seven", "7", "NUM_7"); - BUTTON("height", "8", "NUM_8"); - BUTTON("nine", "9", "NUM_9"); - BUTTON("clear", "C", "OP_CLR"); - - BUTTON("four", "4", "NUM_4"); - BUTTON("five", "5", "NUM_5"); - BUTTON("six", "6", "NUM_6"); - BUTTON("obrak", "(", "OP_OBRAK"); - - BUTTON("one", "1", "NUM_1"); - BUTTON("two", "2", "NUM_2"); - BUTTON("three", "3", "NUM_3"); - BUTTON("cbrak", ")", "OP_CBRAK"); - - BUTTON("zero", "0", "NUM_0"); - BUTTON("point", ".", "OP_DEC"); - BUTTON("equal", "=", "OP_EQU"); - - group { - name: "Main"; - - parts { - part { - name: "bg"; - type: RECT; - mouse_events: 0; - description - { - state: "default" 0.0; - visible: 1; - color: 255 255 255 255; - } - } - - part { - name: "EquateAnswer"; - type: TEXT; - mouse_events: 0; - description - { - state: "default" 0.0; - visible: 1; - rel1 { - relative: 0.0 0.0; - offset: 2 0; - } rel2 { - relative: 1.0 0.0; - offset: -1 0; - - } - fixed: 1 1; - align: 0.5 0; - color: 0 0 0 255; - color3: 192 192 192 255; - text - { - text: ""; - font: "Sans"; - size: 30; - //fit: 0 0; - min: 1 1; - align: 1.0 0.5; - } - } - } - - part { - name : "table_description"; - type : TABLE; - description { - state : "default" 0.0; - fixed: 0 1; - rel1.to: "EquateAnswer"; - rel1.relative: 0 1; - table { - homogeneous: TABLE; - padding: 0 0; - } - } - table { - items { - BUTTON_TABLE_ITEM("button/add", 0, 0, 1, 1); - BUTTON_TABLE_ITEM("button/min", 1, 0, 1, 1); - BUTTON_TABLE_ITEM("button/mul", 2, 0, 1, 1); - BUTTON_TABLE_ITEM("button/div", 3, 0, 1, 1); - - BUTTON_TABLE_ITEM("button/seven", 0, 1, 1, 1); - BUTTON_TABLE_ITEM("button/height", 1, 1, 1, 1); - BUTTON_TABLE_ITEM("button/nine", 2, 1, 1, 1); - BUTTON_TABLE_ITEM("button/clear", 3, 1, 1, 1); - - BUTTON_TABLE_ITEM("button/four", 0, 2, 1, 1); - BUTTON_TABLE_ITEM("button/five", 1, 2, 1, 1); - BUTTON_TABLE_ITEM("button/six", 2, 2, 1, 1); - BUTTON_TABLE_ITEM("button/obrak", 3, 2, 1, 1); - - BUTTON_TABLE_ITEM("button/one", 0, 3, 1, 1); - BUTTON_TABLE_ITEM("button/two", 1, 3, 1, 1); - BUTTON_TABLE_ITEM("button/three", 2, 3, 1, 1); - BUTTON_TABLE_ITEM("button/cbrak", 3, 3, 1, 1); - - BUTTON_TABLE_ITEM("button/zero", 0, 4, 1, 1); - BUTTON_TABLE_ITEM("button/point", 1, 4, 1, 1); - BUTTON_TABLE_ITEM("button/equal", 2, 4, 2, 1); - } - } - } - } - -} diff --git a/data/images/.cvsignore b/data/images/.cvsignore deleted file mode 100644 index 22a4e72..0000000 --- a/data/images/.cvsignore +++ /dev/null @@ -1,3 +0,0 @@ -Makefile -Makefile.in - diff --git a/data/images/Makefile.am b/data/images/Makefile.am deleted file mode 100644 index ab6db60..0000000 --- a/data/images/Makefile.am +++ /dev/null @@ -1,14 +0,0 @@ - -MAINTAINERCLEANFILES = Makefile.in - -EXTRA_DIST = \ -bg.png \ -brushed_texture.png \ -btn_normal.png \ -btn_pressed.png \ -entry_disabled.png \ -entry_light_overlay.png \ -metalsphere.png \ -shading.png \ -text_button.png \ -text_display.png diff --git a/data/images/bg.png b/data/images/bg.png deleted file mode 100644 index 8415d46c1f708555e032f63da49c45d6e3404be7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1114 zcmV-g1f~0lP)00004XF*Lt006O% z3;baP00006VoOIv0L%c)0LQ}%1J_AJK~#9!?OM%l;xG^%J5CEqdg0hZ54=QgegC&WJ+(qYAVNs| zn>`GjdhH|>)ZN9|`hZ-IW6w7~U)*>A5^oFuUS3|7%Vk-Xd7g95<4IlDeb;_NO9kVM zv3R`eI%7=RwpCTF*X!5U*VSqz0ARUXK0iM%7K{0OE`*?mFWq%~90y|&jgu(W9y`uC zt@Yt>Sg+Ts)vBth6M%<@hs9#?`1n|spEO5 z(B3(RQtV49^E_8dm1TK%cLx9h0J1Eb&1OYWJUu-XMZq~I{pev|bzhrUQEP1g3`J-^ zt+g+uM~pGuM?)C+2w|h&JkNy?oO6tJfwLK7_xJZjQDj*L04SqXVhq+=RHb)I5(SFJ z7NG?ZRp8{nQ4|-{IRT*Noa3C=b$vV@(U8_!axn!Jji5A6HEXRuIgX`X3?uVL5=Qts zp)0rBtx`&B-FfXR89Ah1jPTObC#7S3gdfmaYo%1%wn{1A-Q!DNH+bo^uCIk2P)Z#R z2d%ZWHed{#)=SSF-obruBDWizA;_g0)RLT z1o4m7x@j6ec#;7?Ata^rr{2_|E!O@si7{Z1L+O=tYp2d$?SBg)Z2oEF#yxcoX9Xi`=Nj?gYSEOEqQ$03Y*pCENSE#*RX+hzn@3 z3^E9GoQbu1s1{L;?{oYU^+Z*vHc|k9l=65yqMLl%#0Coh_y}Y3_hK7zoo}gN0&V1+ zYuk3W+wJ%JrfIM=MF2ou*W2w@YaIZ%G)Uq=k7If$) zx7)qFz0K!yjI%HD!w{d0NXIkkERXrM)0@qvX_^y&_xE=Up^?P>I-OrV^Xwv+B-UCf gWz#fORlx+>FBUZcYCk65od5s;07*qoM6N<$f~0c!$N&HU diff --git a/data/images/brushed_texture.png b/data/images/brushed_texture.png deleted file mode 100644 index 0a78068885ae754872a9d39ac6ab46dec02a1c4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87845 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
PF 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

KPCA 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 diff --git a/data/images/btn_normal.png b/data/images/btn_normal.png deleted file mode 100644 index 487d22cb2eb3cfe1d25ee165e7954e71171ff1af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 589 zcmV-T0Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipk- z6&?vICY=EQ00GTOL_t(o!|j-{YU4l~W^Ro}qw~pRa&3(H#?0q9LPYc^g!tX>_kS|;BM}wE%F>|Zi?cPLD^u5>XK`8~THJG`s zx9~gZ4gffg69^%W zhQ2f)gn;8X0jgDCj5!HhGD;o5yWI|_s_K~Ya-k`>`@mmbM4P9uS+nnjZh7zp*xXw%qKism5hWM2$UpOYpPSI;h+Hc&{k} z;Q0^=-}mo}qByy&P!t7x-@h-x+cZtDj4{hR&!Ln$v>56PV+@p1$nzY=m}Q!#R{*x9 zwX-bCF5)=8jiTr&2m(H4L{an<$MJ2JWf#nR1^`sqinnipIo0)wzU=2euSEjD4nRRf b8UX$RbjIty#bmtz00000NkvXXu0mjf0Z#+S diff --git a/data/images/btn_pressed.png b/data/images/btn_pressed.png deleted file mode 100644 index b1d4285e1808d2895576d1c350cd0b9eff07cf3a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 456 zcmV;(0XP1MP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipk- z6(1w%hGmuj00BrzL_t(o!|hlxYQsPfoVmRmS0%W0=T`cGD}hU)_oOxM@*Mv_N|6^B zwFVU~+z7iej+9Li*|@L+0=aN<1INPMvJA7++z=g9)dH}%4d2znFFg&(2B$%)>eDnG zmu30Zw(V3^$LIl)8xi@4qUcpsHzW^KRhuM9v|g`s=iEp{K(fzVs4CjF#qoHoCzDB% z=Xq%W*s7}L-usb=oE!Tb01y#)??+Wt%>h``UC#QlydeohWCj2R0E{uu7zn3X_EM)I zVQ?qdd$7GLtBKSBk4!@@V=?VaQRUIS&Ah|y? zcFw&I#q>1G0BGVkUXZK@U|Yv=ya3P`l1)(*t1Qc=&bcMYZQtmI{>vr|-9hL2ESt000019wkN0)d)_Dcs1;BHAURl>sw4nb4;Ius-wB>sOynh0$Tj0L}xNpzYmTw4f0N@P3 z?*M)U@TpY=u_wU0CO{3K0`LUjw#D-K{QSI{&*yY~eNBb{KLGf#1^=>Dg2|o$AA$fc zt>pv21Ax2vd|u6FvwE>uXaHIO_zl2k0DlAce06p8=h@jAj*pKqnM|ORf)D~qsZH-v zO4M}?DP`j)gn$s@)pz%|-PRm-9bes0ncc?M&)}n3*IVE1vQ)Y6ny=g~^Zf<@B4V{M z^@s>sYb=*b+}zy!Y{vveYvsxWgQusbI5|1N;o%|1<1wU^n~xb_7x)n9zH<9)_roE; zke~}8w!q>NfeUg7pcny&C<<(skJcJQgynJx0DssqL19U~03eQzjxe20F`Z5^8jYZo zdPM*s#482xf$am|rw$#x^q5D}!5mqdiJEFS>e74Dz4C0|O}ivTg#kVAl&d)PGrQvN>%d=~<66u`JIt}+1F z;7CNLQpzt{>#0(zC}MKz`xr9V1c=qoweT1LIB~$P+`!PJa-Y+bah~622rh|C9s6GG zc|t@Z)kO88$PJwAPR&hYQGbXaA;3ej{(o=-seau$oHm^HuFLU}hf~K~l2Qt-wNOe4 z$&tLSlKB>vw99Ak_0zTQU5-m8W`c->nbu2=#O&Z9vIi$sCp0hL<)Eh41iFq(Y+5<= zA>Z-=Vo`5bFu2!-06*4W7t*``e`v$u^e4M8GM5}Vf6O;9Ig;O(1YGbrYXe*o^%)<| zePYj=Q~>UShUyQcBsqf^ny050a=Kc3U&+r^wxLvutpF)jrB=66{?k`KMZ#PX_`v28 zJvZ3oJX`GEsWpTlV<@@nU@AtKT}1bx4VPS37iu3{733}&<+zfZ<>`=$#rl?ABGIn$ zl)6-c>&*ivhsDIiyw`pjTr{=aKnA#<&XyBx}uIgVv;mR`AW3}@iD?j>h>m~weB z1>z8hGhV)aiY`*_TV}LZt$gbU_Nt+;Kl|Z){fFAPE0P?rbGCvx(SKL#&uQ0{%sI0F zlSRVvg}D)UmslXj7w=+Pno8h^4KmmIyC_;!go6CA?yiO~!JG@1m$7jER5lIfWIhk)xtf*1)?gy^%t#8H60*3X?y zb(umIXi|i~p~)V-4|Qg?7|kYvJJ<#YlPwg=3bO0@Ky=GuF@_KLkkWKrl;O-mxJuxb zbN2pCJx=NuXV&8*z;^(TXi|qkMF03wlnh{6>kWW5AZD=by=WhpZoOC_nIeI2`_xB- zA>2UDJU^E3nUeXOTtAl>vESCS)KbdYq=*%0vP1uEUBLqpZF0yA*luQtJNRy5NGxeI zl?-A7$jLECNqp{peC{eJCm2gj({ileSLS938w~AwCNUI1O+>X)ss>OOt>6FJ65(#S zT%xKfj7B2}A+{{u%??Us0*C5^faQ`Pmk2}eL39D%Rn=VUx9j-ag4?gDV~n|~Dgbzq zQdU}Pt(2+@H1CSh#l^*PHk(Zsi^VShF5B$UOCs98DDwV~&5I&Z%6lSuQc8UTur{-R z^=vky`F#EiV6nkg z*qiXI7tyeH;DUh$JZZSA{dsjWB{Gf&K`JSVQs#S3fFMQclj4cbi4ZA&{`G%|s6s>_ zA$Y9{Q3Xof_K66f5fUdzxIjXL#4AK2G)zF4AQ~ZSyB=SF_y!4AZ@0BhK)85ainpT| zDMceh0+w9(rW;ql|BPtKE_;*GhkMZGspy32ABX#YfW4H z*yhq+z=Kbu9CzvQc>nESzCj()C;PZdg8XQcf zeC}(Ftb;tix4Z(R{CjiwZ_U^C7YBX+1ChS~xEB#7pepWL#k+z)0-#ZfZx;90lX!`M zUQ1oaF5-PxAY99N6A~V!k+m&loTR#w zm&W140O@N2>TQ7mkv=9qCNQWF2JcrPD1}sr7vj-Jg*#!PBS0SqAQDJfh^&ApfdC{S zAOOpKl!dq$03*z6Q2{LzD)8qS8(gm<@-=~PAns0hAOL>>`3s1Ar*B^p@hW=xk!rkL zWcr{Qt}4?9MZAb!ejFrR6yYKguB!1Gpp!_LRKg`dqliuc8dUV6(5MKPAQ}WZMMzYU z5THSwfrbFlAYMm^24{m3AQAz+cr6n|CO|HLOn_V=@EW)Pc=It#-mZPP0=SU8i1!6& zb(jJ1BDe#%K{x~924Dd=1Gs^lT`{!IlI|q|M%+lYz;Y=gjQ=$g?poWV&Uhn=vOc&&K6F(-N6xv*q0^-Hh|Q+44R! z&CEaiH5Z(}CHYHKc_R-kz#YJM0RHslfBq`y+gA>_PAWQu5(;Pu9h`=XG#VxWf=bKP zCt19f&2cQ_u{kdmP-0gqn6;h?n6+*JzB*{QmcFXlY}<6;BY;%OeOu&K+BZOoP^{xO z2#PRZY3jv=X{{50Bnj zUf(+x%VQ1bOD71q6NIzpqWhmCVEJVF_~JaiBq;X&JwIIl$d$Dc0P{?lKJ+K_@4&9> z2*jgv_~Ha`Fv+#FVE0;I{QRn^b-ey^1NhttPwI~I;Mr%EfuHcs-5B{q$qogAdFCr} z5?>K0TB7Lm!XJ=VEW|6;;cS9?P0WMR3c}KayVhvGG!}pz*h^y#^1vGO?&0V^av=PC zG7sn0lFz}1WuBhWwBttWNl+fSz4ZNej6eBll>!e*9{J<2>q7-`;%Wlj)j2yL=s4H zpyUJJB%P_-^o`CzcU}v;c4l6iN!JF{wk(Z?W1#(^NrYMB26|V}bAu7^xwA&kT-E-) zd8!m+{xGlvgnb?fWTz@5S83t$k#hM0JJDIMs7Z+iV80%a;u zyTtnggwTMm1K}81fmQ&Pfgsom(Lx2#y63gPHj46!f??18HxU5A<>O1jpzU>i6!FhL z{?0q{La_Li_3x4=1cpycJPw4wPFQ|#Zu`k^O?8dU=dOK!p|tUR+fH5RIMRMQ5r)w_ zp3D``=BiW1wkMO82mpWo@87V+m4kL{Gec5%K;;AbFw-a^HNCk7{WucXwzoWBGzr!u z%eAoxM^>OU^=T9hb*5jN>o5?wd|(NdLB8Nj`$u6TpMZ}SLTB#5DFD{g?*ZW(wPPFh z9pwUK`hp14E)v)i!Ro{NddCAw?p>ra^V0EvDh#!5&3&8ePlK-{Bhw$7>qY{=0ohvy zNuo4}Kn}E@=OH5x1*32SKIX6S``nIiA^_%@eGY&P5#%lkXstWyUD-o^@xJ4pG_#}pJ{aR7->IPW8s_nq%Ksaih#vkT~fQGKf zz-?dv+=%g~CjyY3q>cBv0v?5fd=fHt+PcZvEIcKEolxj%7Dhyn#6SP=+lOCaCTRqW zgS_+JWSzf^9Us%4kib#mr+pyGqHR|TP&HjfL~z6dB(w>kh6kW^1MJ+u-qgQl1$uXoo0uH~4X#?>CycD)4H$3$ z9DGl(17YjQ;sAWwlWb7LB7*ir2#&zdC(*zbU_R6SC#HYZ{Nn#BbjwF> z{C~&(`>fg-a-kCS%pSEn`|D*J8due2&a?+R!>GAiZivK=R=RHqk&O51ktzsst5L6F%VrRzy&?DN{Y z{6vzsX5UV7{`N#0^MH``CVOPc=g!p62d*Ox?m6=RXYAiPq39!>&(Qw8`LB5G%zw)R z1_{L2egZBZ`>rIvEp8w+79sxizkV)y{juuh3zg}EhUtSMMA7)B60g2EG`^|EH$}Lr zgeVd&D&eA{Q4l5-jlMWkqIf&_dc$xL=%mm~5DkD%K{P6$QWlMttw|~nRe^@GO8K!W zSoE5D>ro#ZwO;64QW8o)0B+)+s;ARr;OfVaO%p8o+66)RYjc^Ay0pEze{QybamC)UuYqJyUS`(qU~s|(U&)&QTL_z-B-;$yOr{%{ zZbZI;%R8Ch!Q}@Z&kNyOzX)cSB_O48&xMwfoAm6*b-icZ?gbhxmo=fj?W@$OXa58# z1;;DMui3eRxcSuY1K&`@_rIy`$l$t!UI0?cA$D2_$42B3{D3cg~Fo6t^ zmNu-k(jd{Ae4k;%Gu63|Y&d6Fzb0%*gXk`b6w$J{mfNq|>!RDL{CQi-zP)uXpv^!| zzH;2|z7KGDFZ%%B!E}QQ!AGyt4KQCZ4rVYX-#2I($iAo0_W~y0M`(2~Vwr#28YUmJ zeT?5mb)ETdg(RXOf4c~v|9DWxo3$b98W9q-?3Pv)W*I69niMLp(6UvE%tdgD>yZS} z0Kg|#ECG_h8~{mWmAQZOVcm}h-va_RsREJ08>K{BuI18xswmWh9Mh6DJZDGVcO{oi zp^uHBE0|2ab-?OI(b>VS=UZN_46C)VR5pD2ILkRLkSpg~g@8lgN68-!!a|yDGl9DZ zpw<436_BmalxtiNtO$aFl8e_ZfG`8*06LJ_YfYd{kemRS!5n%}feVnr zci1#;ojutv0YwciD4ukzLc#$btD1!Y;LQFG1w`K&`~c8FE|wvC@twd0bW7#BN5KlT zmFw*x1U+%9JAX&1fKj~P5&88zvpokuGgwVOJB{C20kgupT7fW#Ik2vjvRVe>0aiWs z`viz2P$I-KpbL=8_HP6ilDY-l7Jr^;$ukQ?YwqQ2uVLuG$9Az!y9J!N1Ku9Iz*={Z z%jTeVOSo_8ZZ#h)Zll+5%bR}N2$u~*x88?uw7+f%AD!1*gi`+tTOSZ(spzmV00000 LNkvXXu0mjfotCY` diff --git a/data/images/metalsphere.png b/data/images/metalsphere.png deleted file mode 100644 index 6f8865ea0f270f24a098b3b7a3c4aa3d8254bbf1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2683 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 diff --git a/data/images/shading.png b/data/images/shading.png deleted file mode 100644 index ba22b294627607a721008bd4b128511e525a67e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3177 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 B^%wvE diff --git a/data/images/text_button.png b/data/images/text_button.png deleted file mode 100644 index d7084b2bb8affc8200b072acbc24c5fcdf171e93..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh1|;P@bT0xa&H|6fVg?3oArNM~bhqvgP>{XE z)7O>#3M0Fima;*1I|oom%G1R$q+(8TNUP)$jgoR1p!R zl(4FZDx~f6LH?o@oe$(_5nkI>5nkI>5oPIzS!@P82Bu5`QcVlYM&) zJe}ciI9Gt9p-uG7HPHRM2^3jd-TMc!+7nV z`T}w1*B}2>Mm^w=CgX^pU0Sq+ey^lXP%lWCKntoDC=;S3b$=!FgIbXCm|DU2$mKmu zk5C@b>0OlR1C$HsL#G+MfJA$t9ZapD79g~OvgihzUT}?zDDD<|zZM9)=GWVhy1i8c z_yTnX551q;6|SGK`V93GK0m?ygkArE`V?uac)fhN3Bza<7Q9 zl)217Br&*RGsukB0x~0wIA*-*@d)uM9<4759&bt>BYPO%gA*_HC~J9(D70OLeQ|_n z*SAj6JBKyLNN1>Xh(LV?Pf=%c60bq#@|=ahGi}t%I?cMR*Yl1C?;WD!rYCkRUpDvt zcL1~40`8H%pKvRVCe{oOHBz}65u$CCabO6bj z9S)@6nqQVuD<36XDRRp9hjTP5EBQBMcTO;@2JS0~p$uLL43bkNT-z*uftsY-oX@R+ zg=ov?ZFPe2aGtZgThF(r`XRqx-8c1`1JRuU=n7F?&ISF9zgY#$maSlQ2tzE0jY%oX z$`CCCIV~OS6hvlRCd4Y}6>2W&lyH(J0k>wwcvFgx%TSwt~HSUx;5tC9vHQh5!Hn M07*qoM6N<$f|`|N-~a#s diff --git a/data/text.edc b/data/text.edc deleted file mode 100644 index f7a21a1..0000000 --- a/data/text.edc +++ /dev/null @@ -1,359 +0,0 @@ -images { - image, "text_button.png" LOSSY 95; - image, "text_display.png" LOSSY 95; -} -collections { - group { - name, "Main"; - min, 110 160; - max, 110 160; - parts { - part { - name, "bg"; - type, RECT; - mouse_events, 0; - description - { - state, "default" 0.0; - visible, 1; - rel1 { - relative, 0.0 0.0; - offset, 0 0; - } rel2 { - relative, 1.0 1.0; - offset, 0 0; - } - color, 0 0 0 255; - } - } - part { - name, "answer_buf_clip"; - type, RECT; - mouse_events, 0; - description - { - state, "default" 0.0; - visible, 1; - rel1 { - relative, 0.0 0.0; - offset, 5 5; - } rel2 { - relative, 1.0 0.0; - offset, -5 30; - } - color, 255 255 255 255; - } - description - { - state, "hidden" 0.0; - visible, 1; - rel1 { - relative, 0.0 0.0; - offset, 5 5; - } rel2 { - relative, 1.0 0.0; - offset, -5 30; - } - color, 255 255 255 0; - } - } - part { - name, "answer_buf_rect"; - type, IMAGE; - mouse_events, 0; - clip_to, "answer_buf_clip"; - description - { - state, "default" 0.0; - visible, 1; - rel1 { - relative, 0.0 0.0; - offset, 0 0; - to, "answer_buf_clip"; - } rel2 { - relative, 1.0 1.0; - offset, 0 0; - to, "answer_buf_clip"; - } - image - { - normal, "text_display.png"; - border, 8 8 8 8; - } - color, 255 255 255 255; - } - } - part { - name, "EquateAnswer"; - type, TEXT; - mouse_events, 0; - effect, OUTLINE; - clip_to, "answer_buf_clip"; - description - { - state, "default" 0.0; - visible, 1; - rel1 { - relative, 0.0 0.0; - offset, 5 5; - to, "answer_buf_clip"; - } rel2 { - relative, 1.0 1.0; - offset, -5 -2; - to, "answer_buf_clip"; - } - color, 0 0 0 255; - color3, 192 192 192 255; - text - { - text, ""; - font, "Vera"; - size, 14; - fit, 0 0; - align, 1.0 0.5; - } - } - } - part { - name, "clipped_clear"; - type, RECT; - mouse_events, 0; - description { - state, "default" 0.0; - visible, 1; - rel1 { - relative, 0.0 1.0; - offset, 0 0; - to, "answer_buf_clip"; - } rel2 { - relative, 0.0 1.0; - offset, 24 24; - to, "answer_buf_clip"; - } - color, 255 255 255 255; - } - description { - state, "clicked" 0.0; - visible, 1; - rel1 { - relative, 0.0 1.0; - offset, 0 0; - to, "answer_buf_clip"; - } rel2 { - relative, 0.0 1.0; - offset, 24 24; - to, "answer_buf_clip"; - } - color, 255 255 255 192; - } - } - part { - name, "clear_button_image"; - type, IMAGE; - mouse_events, 1; - clip_to, "clipped_clear"; - description - { - state, "default" 0.0; - visible, 1; - rel1 { - relative, 0.0 1.0; - offset, 0 0; - to, "answer_buf_clip"; - } rel2 { - relative, 0.0 1.0; - offset, 24 24; - to, "answer_buf_clip"; - } - image - { - normal, "text_button.png"; - } - } - } - part { - name, "clear_button_text"; - type, TEXT; - mouse_events, 1; - effect, SOFT_SHADOW; - description - { - state, "default" 0.0; - visible, 1; - rel1 { - relative, 0.0 0.0; - offset, 0 0; - to, "clear_button_image"; - } rel2 { - relative, 1.0 1.0; - offset, 0 0; - to, "clear_button_image"; - } - color, 255 255 255 255; - color3, 96 96 96 255; - text - { - text, "c"; - font, "Vera"; - size, 14; - fit, 0 0; - align, 0.5 0.5; - } - } - description { - state, "clicked" 0.0; - visible, 1; - rel1 { - relative, 0.0 0.0; - offset, 1 1; - to, "clear_button_image"; - } rel2 { - relative, 1.0 1.0; - offset, 1 1; - to, "clear_button_image"; - } - color, 255 255 255 255; - color3, 96 96 96 255; - text { - text, "c"; - font, "Vera"; - size, 14; - fit, 0 0; - align, 0.5 0.5; - } - } - } -#define TEXT_ON(txtrel, txtpname, txtstr) \ - part { name, txtpname; type, TEXT; mouse_events, 0; \ - effect, SOFT_SHADOW; description { \ - state, "default" 0.0; visible, 1; \ - rel1 { relative, 0.0 0.0; offset, 0 0; to, txtrel; } \ - rel2 { relative, 1.0 1.0; offset, 0 0; to, txtrel; } \ - color, 255 255 255 255; color3, 96 96 96 255; \ - text { text, txtstr; font, "Vera"; size, 14; \ - fit, 0 0; align, 0.5 0.5; } } \ - description { \ - state, "clicked" 0.0; visible, 1; \ - rel1 { relative, 0.0 0.0; offset, 1 1; to, txtrel; } \ - rel2 { relative, 1.0 1.0; offset, 1 1; to, txtrel; } \ - color, 255 255 255 255; color3, 96 96 96 255; \ - text { text, txtstr; font, "Vera"; size, 14; \ - fit, 0 0; align, 0.5 0.5; } } } - -#define RIGHT_OF(rel, clipname, pname, ptxtname, txt, bw, bh) \ - part { name, clipname; type, RECT; mouse_events, 0; \ - description { state, "default" 0.0; visible, 1; \ - rel1 { relative, 1.0 0.0; offset, 0 0; to, rel; } \ - rel2 { relative, 1.0 0.0; offset, bw bh; to, rel; } \ - color, 255 255 255 255; } \ - description { state, "clicked" 0.0; visible, 1; \ - rel1 { relative, 1.0 0.0; offset, 0 0; to, rel; } \ - rel2 { relative, 1.0 0.0; offset, bw bh; to, rel; } \ - color, 255 255 255 192; } } \ - part { name, pname; type, IMAGE; mouse_events, 1; \ - clip_to, clipname ; \ - description { state, "default" 0.0; visible, 1; \ - rel1 { relative, 1.0 0.0; offset, 0 0; to, rel; } \ - rel2 { relative, 1.0 0.0; offset, bw bh; to, rel; } \ - image { normal, "text_button.png"; border, 0 0 0 6; } \ - } } \ - TEXT_ON(pname, ptxtname, txt) -#define SOUTH_OF(rel, clipname, pname, ptxtname, txt, bw, bh) \ - part { name, clipname; type, RECT; mouse_events, 0; \ - description { state, "default" 0.0; visible, 1; \ - rel1 { relative, 0.0 1.0; offset, 0 0; to, rel; } \ - rel2 { relative, 0.0 1.0; offset, bw bh; to, rel; } \ - color, 255 255 255 255; } \ - description { state, "clicked" 0.0; visible, 1; \ - rel1 { relative, 0.0 1.0; offset, 0 0; to, rel; } \ - rel2 { relative, 0.0 1.0; offset, bw bh; to, rel; } \ - color, 255 255 255 192; } } \ - part { name, pname; type, IMAGE; mouse_events, 1; \ - clip_to, clipname ; \ - description { state, "default" 0.0; visible, 1; \ - rel1 { relative, 0.0 1.0; offset, 0 0; to, rel; } \ - rel2 { relative, 0.0 1.0; offset, bw bh; to, rel; } \ - image { normal, "text_button.png"; border, 0 2 0 0; } \ - } } \ - TEXT_ON(pname, ptxtname, txt) - - RIGHT_OF("clear_button_image", "clipped_divide", "divide_button_image", - "divide_button_text", "/", 24, 24) - RIGHT_OF("divide_button_image", "clipped_times", "times_button_image", - "times_button_text", "*", 24, 24); - RIGHT_OF("times_button_image", "clipped_minus", "minus_button_image", - "minus_button_text", "-", 24, 24); - SOUTH_OF("clear_button_image", "clipped_seven", "seven_button_image", - "seven_button_text", "7", 24, 24); - RIGHT_OF("seven_button_image", "clipped_eight", "eight_button_image", - "eight_button_text", "8", 24, 24); - RIGHT_OF("eight_button_image", "clipped_nine", "nine_button_image", - "nine_button_text", "9", 24, 24); - RIGHT_OF("nine_button_image", "clipped_plus", "plus_button_image", - "plus_button_text", "+", 24, 48); - SOUTH_OF("seven_button_image", "clipped_four", "four_button_image", - "four_button_text", "4", 24, 24); - RIGHT_OF("four_button_image", "clipped_five", "five_button_image", - "five_button_text", "5", 24, 24); - RIGHT_OF("five_button_image", "clipped_six", "six_button_image", - "six_button_text", "6", 24, 24); - SOUTH_OF("four_button_image", "clipped_one", "one_button_image", - "one_button_text", "1", 24, 24); - RIGHT_OF("one_button_image", "clipped_two", "two_button_image", - "two_button_text", "2", 24, 24); - RIGHT_OF("two_button_image", "clipped_three", "three_button_image", - "three_button_text", "3", 24, 24); - SOUTH_OF("three_button_image", "clipped_decimal", "decimal_button_image", - "decimal_button_text", ".", 24, 24); - SOUTH_OF("one_button_image", "clipped_zero", "zero_button_image", - "zero_button_text", "0", 48, 24); - RIGHT_OF("three_button_image", "clipped_equals", "equals_button_image", - "equals_button_text", "=", 24, 48); - } - programs { -#define BUTTON_CB(pname, bclip, bname, emits, cbin, cbout) \ - program { name, pname; signal, "mouse,clicked,1"; source, bname; \ - action, SIGNAL_EMIT emits ""; } \ - program { name, cbout; signal, "mouse,down,1"; source, bname; \ - action, STATE_SET "clicked" 0.0; target, bclip; \ - transition, LINEAR 0.1; } \ - program { name, cbin; signal, "mouse,up,1"; source, bname; \ - action, STATE_SET "default" 0.0; target, bclip; \ - transition, DECELERATE 0.2; } - BUTTON_CB("clear_clicked", "clear_button_text", \ - "clear_button_image", "OP_CLR", "clearin", "clearout") - BUTTON_CB("divide_clicked", "divide_button_text", \ - "divide_button_image", "OP_DIV", "dividein", "divideout") - BUTTON_CB("multiply_clicked", "times_button_text", \ - "times_button_image", "OP_MUT", "multiplyin", "multiplyout") - BUTTON_CB("addition_clicked", "plus_button_text", \ - "plus_button_image", "OP_ADD", "additionin", "additionout") - BUTTON_CB("subtraction_clicked", "minus_button_text", \ - "minus_button_image", "OP_SUB", "minusin", "minusout") - BUTTON_CB("equals_clicked", "equals_button_text", \ - "equals_button_image", "OP_EQU", "clippedin", "clippedout") - BUTTON_CB("decimal_clicked", "decimal_button_text", \ - "decimal_button_image", "OP_DEC", "decimalin", "decimalout") - BUTTON_CB("zero_clicked", "zero_button_text", \ - "zero_button_image", "NUM_0", "zeroin", "zerout") - BUTTON_CB("one_clicked", "one_button_text", \ - "one_button_image", "NUM_1", "onein", "oneout") - BUTTON_CB("two_clicked", "two_button_text", \ - "two_button_image", "NUM_2", "twoin", "twoout") - BUTTON_CB("three_clicked", "three_button_text", \ - "three_button_image", "NUM_3", "threein", "threeout") - BUTTON_CB("four_clicked", "four_button_text", \ - "four_button_image", "NUM_4", "fourin", "fourout") - BUTTON_CB("five_clicked", "five_button_text", \ - "five_button_image", "NUM_5", "fivein", "fiveout") - BUTTON_CB("six_clicked", "six_button_text", \ - "six_button_image", "NUM_6", "sixin", "sixout") - BUTTON_CB("seven_clicked", "seven_button_text", \ - "seven_button_image", "NUM_7", "sevenin", "sevenout") - BUTTON_CB("eight_clicked", "eight_button_text", \ - "eight_button_image", "NUM_8", "eightin", "eightout") - BUTTON_CB("nine_clicked", "nine_button_text", \ - "nine_button_image", "NUM_9", "ninein", "nineout") - } - } -} diff --git a/src/main.c b/src/main.c index d5ef992..b1d5d81 100644 --- a/src/main.c +++ b/src/main.c @@ -5,8 +5,7 @@ #include "calc.h" static Evas_Object *win; -static Evas_Object *ly; - +static Evas_Object *entry; static const struct { @@ -56,188 +55,106 @@ static const struct static void -_signal_cb(void *data, Evas_Object * o, const char *emission, const - char *source) +_calc_do(int op) { - int val = 0; + double result; + char buf[BUFLEN]; - if (data) - { - double result; - char buf[BUFLEN]; - - val = (int) data; - switch (val) - { - case EQ_EXIT: - elm_exit(); - break; - case OP_CLR: - equate_clear(); - break; - case OP_DIV: - equate_append("/"); - break; - case OP_MUT: - equate_append("*"); - break; - case OP_ADD: - equate_append("+"); - break; - case OP_SUB: - equate_append("-"); - break; - case OP_EQU: - snprintf(buf, BUFLEN, "%.10g", equate_eval()); - edje_object_part_text_set(o, "EquateAnswer", buf); - return; - break; - case OP_DEC: - equate_append("."); - break; - case OP_OBRAK: - equate_append("("); - break; - case OP_CBRAK: - equate_append(")"); - break; - case OP_SIN: - equate_append("sin"); - break; - case OP_COS: - equate_append("cos"); - break; - case OP_TAN: - equate_append("tan"); - break; - case OP_ROOT: - equate_append("sqrt"); - break; - case OP_POW: - equate_append("^"); - break; - case OP_LOG: - equate_append("log"); - break; - case OP_LN: - equate_append("ln"); - break; - case OP_EXP: - equate_append("exp"); - break; - case NUM_0: - equate_append("0"); - break; - case NUM_1: - equate_append("1"); - break; - case NUM_2: - equate_append("2"); - break; - case NUM_3: - equate_append("3"); - break; - case NUM_4: - equate_append("4"); - break; - case NUM_5: - equate_append("5"); - break; - case NUM_6: - equate_append("6"); - break; - case NUM_7: - equate_append("7"); - break; - case NUM_8: - equate_append("8"); - break; - case NUM_9: - equate_append("9"); - break; - default: - E(1, "Unknown edje signal operator %d", val); - break; - /* etc */ - } - edje_object_part_text_set(o, "EquateAnswer", equate_string_get()); - - } -} - - -static void -_edje_callbacks_define(Evas_Object * o) -{ - /** Equate Application Callbacks **/ - /* EQ_EXIT - Quit Equate */ - edje_object_signal_callback_add(o, "EQ_EXIT", "*", _signal_cb, - (void *) EQ_EXIT); - /** Equate Operation Callbacks **/ - /* OP_CLR - Clear Display */ - edje_object_signal_callback_add(o, "OP_CLR", "*", _signal_cb, - (void *) OP_CLR); - /* OP_DIV - Division Operator */ - edje_object_signal_callback_add(o, "OP_DIV", "*", _signal_cb, - (void *) OP_DIV); - /* OP_MUT - Mutplication Operator */ - edje_object_signal_callback_add(o, "OP_MUT", "*", _signal_cb, - (void *) OP_MUT); - /* OP_ADD - Addition Operator */ - edje_object_signal_callback_add(o, "OP_ADD", "*", _signal_cb, - (void *) OP_ADD); - /* OP_SUB - Subtraction Operator */ - edje_object_signal_callback_add(o, "OP_SUB", "*", _signal_cb, - (void *) OP_SUB); - /* OP_EQU - Equals Operator */ - edje_object_signal_callback_add(o, "OP_EQU", "*", _signal_cb, - (void *) OP_EQU); - /* OP_DEC - Decimal Operator */ - edje_object_signal_callback_add(o, "OP_DEC", "*", _signal_cb, - (void *) OP_DEC); - /* OP_SIN - Sin of x in degrees */ - edje_object_signal_callback_add(o, "OP_SIN", "*", _signal_cb, - (void *) OP_SIN); - /* OP_COS - Cos of x in degree */ - edje_object_signal_callback_add(o, "OP_COS", "*", _signal_cb, - (void *) OP_COS); - /* OP_TAN - Tan of x in degrees */ - edje_object_signal_callback_add(o, "OP_TAN", "*", _signal_cb, - (void *) OP_TAN); - /* OP_ROOT - The square root of x */ - edje_object_signal_callback_add(o, "OP_ROOT", "*", _signal_cb, - (void *) OP_ROOT); - /* OP_POW - Raise x to the y power */ - edje_object_signal_callback_add(o, "OP_POW", "*", _signal_cb, - (void *) OP_POW); - /* OP_LOG - Logarithm */ - edje_object_signal_callback_add(o, "OP_LOG", "*", _signal_cb, - (void *) OP_LOG); - /* OP_LN - the natural logarithm */ - edje_object_signal_callback_add(o, "OP_LN", "*", _signal_cb, (void *) OP_LN); - /* OP_EXP - e to the x */ - edje_object_signal_callback_add(o, "OP_EXP", "*", _signal_cb, - (void *) OP_EXP); - /* OP_OBRAK - open bracket */ - edje_object_signal_callback_add(o, "OP_OBRAK", "*", _signal_cb, - (void *) OP_OBRAK); - /* OP_CBRAK - close bracket */ - edje_object_signal_callback_add(o, "OP_CBRAK", "*", _signal_cb, - (void *) OP_CBRAK); - - /** Equate Number Callbacks **/ - edje_object_signal_callback_add(o, "NUM_0", "*", _signal_cb, (void *) NUM_0); - edje_object_signal_callback_add(o, "NUM_1", "*", _signal_cb, (void *) NUM_1); - edje_object_signal_callback_add(o, "NUM_2", "*", _signal_cb, (void *) NUM_2); - edje_object_signal_callback_add(o, "NUM_3", "*", _signal_cb, (void *) NUM_3); - edje_object_signal_callback_add(o, "NUM_4", "*", _signal_cb, (void *) NUM_4); - edje_object_signal_callback_add(o, "NUM_5", "*", _signal_cb, (void *) NUM_5); - edje_object_signal_callback_add(o, "NUM_6", "*", _signal_cb, (void *) NUM_6); - edje_object_signal_callback_add(o, "NUM_7", "*", _signal_cb, (void *) NUM_7); - edje_object_signal_callback_add(o, "NUM_8", "*", _signal_cb, (void *) NUM_8); - edje_object_signal_callback_add(o, "NUM_9", "*", _signal_cb, (void *) NUM_9); - /* NUM_PI - 3.14159 */ - edje_object_signal_callback_add(o, "NUM_PI", "*", _signal_cb, (void *) NUM_PI); + switch (op) + { + case EQ_EXIT: + elm_exit(); + break; + case OP_CLR: + equate_clear(); + break; + case OP_DIV: + equate_append("/"); + break; + case OP_MUT: + equate_append("*"); + break; + case OP_ADD: + equate_append("+"); + break; + case OP_SUB: + equate_append("-"); + break; + case OP_EQU: + snprintf(buf, BUFLEN, "<align=right>%.10g</align>", equate_eval()); + elm_object_text_set(entry, buf); + return; + break; + case OP_DEC: + equate_append("."); + break; + case OP_OBRAK: + equate_append("("); + break; + case OP_CBRAK: + equate_append(")"); + break; + case OP_SIN: + equate_append("sin"); + break; + case OP_COS: + equate_append("cos"); + break; + case OP_TAN: + equate_append("tan"); + break; + case OP_ROOT: + equate_append("sqrt"); + break; + case OP_POW: + equate_append("^"); + break; + case OP_LOG: + equate_append("log"); + break; + case OP_LN: + equate_append("ln"); + break; + case OP_EXP: + equate_append("exp"); + break; + case NUM_0: + equate_append("0"); + break; + case NUM_1: + equate_append("1"); + break; + case NUM_2: + equate_append("2"); + break; + case NUM_3: + equate_append("3"); + break; + case NUM_4: + equate_append("4"); + break; + case NUM_5: + equate_append("5"); + break; + case NUM_6: + equate_append("6"); + break; + case NUM_7: + equate_append("7"); + break; + case NUM_8: + equate_append("8"); + break; + case NUM_9: + equate_append("9"); + break; + default: + E(1, "Unknown operator %d", op); + break; + /* etc */ + } + snprintf(buf, BUFLEN, "<align=right>%s</align>", equate_string_get()); + elm_object_text_set(entry, buf); } static Eina_Bool @@ -250,37 +167,100 @@ _key_down_cb(void *data, int type, void *event) { if (!strcmp(_keymap[i].keyname, ev->key)) { - _signal_cb((void*)_keymap[i].op, elm_layout_edje_get(ly), NULL, NULL); + _calc_do(_keymap[i].op); } } return EINA_TRUE; } +static void +_bt_clicked(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + int val = (int) data; + _calc_do(val); +} + +#define BUTTON_ADD(label, x, y, w, h, op) \ + bt = elm_button_add(tb); \ + elm_object_text_set(bt, label); \ + evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); \ + evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL); \ + evas_object_smart_callback_add(bt, "clicked", _bt_clicked, (void *)op); \ + elm_table_pack(tb, bt, x, y, w, h); \ + evas_object_show(bt); \ + + +static Evas_Object * +_gui_standard(Evas_Object *parent) +{ + Evas_Object *tb, *bt; + tb = elm_table_add(win); + elm_table_homogeneous_set(tb, EINA_TRUE); + evas_object_size_hint_weight_set(tb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + evas_object_show(tb); + + BUTTON_ADD("C", 0, 0, 1, 1, OP_CLR); + BUTTON_ADD("(", 1, 0, 1, 1, OP_CBRAK); + BUTTON_ADD(")", 2, 0, 1, 1, OP_OBRAK); + BUTTON_ADD("/", 3, 0, 1, 1, OP_DIV); + + BUTTON_ADD("7", 0, 1, 1, 1, NUM_7); + BUTTON_ADD("8", 1, 1, 1, 1, NUM_8); + BUTTON_ADD("9", 2, 1, 1, 1, NUM_9); + BUTTON_ADD("x", 3, 1, 1, 1, OP_MUT); + + BUTTON_ADD("4", 0, 2, 1, 1, NUM_4); + BUTTON_ADD("5", 1, 2, 1, 1, NUM_5); + BUTTON_ADD("6", 2, 2, 1, 1, NUM_6); + BUTTON_ADD("-", 3, 2, 1, 1, OP_SUB); + + BUTTON_ADD("1", 0, 3, 1, 1, NUM_1); + BUTTON_ADD("2", 1, 3, 1, 1, NUM_2); + BUTTON_ADD("3", 2, 3, 1, 1, NUM_3); + BUTTON_ADD("+", 3, 3, 1, 1, OP_ADD); + + BUTTON_ADD("0", 0, 4, 2, 1, NUM_0); + BUTTON_ADD(".", 2, 4, 1, 1, OP_DEC); + BUTTON_ADD("=", 3, 4, 1, 1, OP_EQU); + + return tb; + +} + static void _create_gui(void) { char buf[1024]; + Evas_Object *tb, *bx; - win = elm_win_add(NULL, "equate", ELM_WIN_BASIC); - elm_win_title_set(win, "Equate"); + win = elm_win_util_standard_add("equate", "Equate"); elm_win_autodel_set(win, EINA_TRUE); - elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); - ly = elm_layout_add(win); - snprintf(buf, sizeof(buf), "%s/themes/equate.edj", elm_app_data_dir_get()); - elm_layout_file_set(ly, buf, "Main"); - evas_object_size_hint_weight_set(ly, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - evas_object_size_hint_align_set(ly, EVAS_HINT_FILL, EVAS_HINT_FILL); - elm_win_resize_object_add(win, ly); - evas_object_show(ly); + bx = elm_box_add(win); + evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_win_resize_object_add(win, bx); + evas_object_show(bx); + + entry = elm_entry_add(win); + elm_entry_scrollable_set(entry, EINA_TRUE); + evas_object_size_hint_weight_set(entry, EVAS_HINT_EXPAND, 0.0); + evas_object_size_hint_align_set(entry, EVAS_HINT_FILL, 0.5); + elm_scroller_policy_set(entry, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF); + elm_object_text_set(entry, "0"); + elm_entry_single_line_set(entry, EINA_TRUE); + elm_box_pack_end(bx, entry); + evas_object_show(entry); + + tb = _gui_standard(win); + evas_object_size_hint_weight_set(tb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + evas_object_size_hint_align_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_box_pack_end(bx, tb); ecore_event_handler_add (ECORE_EVENT_KEY_DOWN, _key_down_cb, NULL); evas_object_show(win); evas_object_resize(win, 240, 320); - - _edje_callbacks_define(elm_layout_edje_get(ly)); } EAPI_MAIN int