From 48653a6ea575b867ca955b51ef7a652169224084 Mon Sep 17 00:00:00 2001 From: George Vasilakos Date: Sun, 22 Jan 2012 10:51:31 +0200 Subject: [PATCH] add share buttons --- LeleDroid/res/drawable-hdpi/ic_menu_share.png | Bin 0 -> 2340 bytes LeleDroid/res/layout-land/details.xml | 4 + LeleDroid/res/layout/details.xml | 4 + LeleDroid/res/layout/info.xml | 85 ++++++++++-------- LeleDroid/res/values-en/strings.xml | 5 +- LeleDroid/res/values/strings.xml | 4 + .../src/com/vasilakos/LeleDroid/Details.java | 51 ++++++++--- .../src/com/vasilakos/LeleDroid/Info.java | 19 +++- 8 files changed, 121 insertions(+), 51 deletions(-) create mode 100644 LeleDroid/res/drawable-hdpi/ic_menu_share.png diff --git a/LeleDroid/res/drawable-hdpi/ic_menu_share.png b/LeleDroid/res/drawable-hdpi/ic_menu_share.png new file mode 100644 index 0000000000000000000000000000000000000000..da3cbc1809f1299c3aaa909eadef5636cc187988 GIT binary patch literal 2340 zcmV+<3ETFGP)v1poj50%A)?L;wJ)jUzGu000SaNLh0L002k;002k;M#*bF000QHNklxFy*?Tt0?q)XuViE)rbx>LyMXjl}oz_;X*op{b(iyyj(r^iT&iS7Hu>m289bFQ2 z+C0BM_UxSZJ^P&ZJLl~8ofnwaw5Bz!X-(^YTm-;N`0DwW=5jJDtporG5&#?rF@*S+ z%2RO?#6aSU1PLggyb1vTB}xFKAApEM{Fk#O1mYkT0Mf<0$*Is;d=G2ok(Bl3!mxYs za2k!kPvzTW0QeaCggH7s0|4A6-!21G)U@EuYXj@er&FtCVED?aL)@s`gz`u7Mhcm) z=DlKG(XoI=pjvs*006^K#|%^A2Olt0Dgcc;uPeJh|HZs`0rS)?tAJY#ypk#rz(ylb z)>uJTyq23-z*YY!vR3|_vw)|Ks|^5f=E9KT3;-bC_>2)?it}g16|3GWUHmz0b5bcby zjje2AKzGNhxrK$y9n9bE{RwBqQ_iF?)wMXUD|fJvW>(W359mz{v5hgdvqOY6yIz|G z>Ja(_$c1iYI62C;(xsEp{-Xg-6f)GDI_jF94kR#tZ=X-3+Dx!55kt z5#yu73~QCFD;CDYk&_s(RUk%Ymv`1MBti_2BO(GU{nU5YyQWqHL9`m)HTmu;{WQRc z7#|&CNYt>b>)dQ&WippF0Z=|Nr}TI|Ln6e9Xw@w&+Cx*f2>`lHG!^Z!uvMQpI>ZK+ z4ji6C8A%&bo?2w4k1cFvD_bvqUf6EY>&2QO=Tcy~VYvZtE?qNJFIx2Rk%>M69>JFCI&>ERxn~&LK97vB?TjOT0k_7iwiQw9eRvStYTRYB}HN~ zHJT#)6~oqTTJJ3sF14~u|k;^p}1)k>J(cRurMW`17@y_%n6V*(;9o_h1oi=REP z>r|BP9l%_P$<2j`W8eL?`OUjIgERV;hS|ix82t3HR^+kv&bmADSSx(=kBezyn7zwr z$KaV39w~o!!W-&edQj72kA1}vCmnaddUs-i#hyj3O^CGeLodDb(@!6L^w1?-mqfU=0KU#bfqMO@9BO6s8Lp_Hx zo>vxOk`3t~oCct4X>iCT8dNW%=X>2B%?Hk;GmS<7pv=^Nr2|Li_j;ovUN)#M5gh7T z3OEf+b`JE#IsxE->AWep$4!rjeztEVXPleObf(wcQ@H7o;EJ|Y&Z_&E#`JTuX?!lP zZOE;=8QgQ;^r8u)OMpopG-8WNim8*xTu&@XZ_7p^4WZRy~`;kg5ugK0VbY_6kOlnbk{(nc%GMVbB> zvzg<2Cv7m}pVu5*_@)GCQ~h!Vcr}&E`rNE@k7*UUjg@q=noc@dNjodVdNpfgT^^NJ zQ?KX|_~qY(6w14m_W2LKR!FOAXBC~S9>qx~?X;?ExZ<}v=09y%BXjC4oyIK+usJJN z-J&`~6`f0ix+W|`LuMsoImx3 zmH}YOW^V}{Y9%MaL5Etx%^s!z%ckB?HUOsB+?(l89kkOi20I;esGDi^aTbt0^@fVE zSkmR1ax?958z;sdH?zi~%Xdq~Q*Y=v9#Vj9*;YC6T;CwwAx*g*K*c$f7=V`It*Sj_5`iemwGC?BV_cGT0NmWv90PPwqC^^AmuW_K!!CV$E?vHl3cB|&=mn&@^nD_NF6 zl(C%E^mBX5TXP?hyb|%o*VS&=3E(vu_#~rmP3&-!*v4Acuz>;5-oJl|nob;)fzGe9 z1F{`JR03#FGhhB?pJP{7_ny5CFWsllp+tnGgz2wUuLF2|wBbOR5 - - - - - - + + - - - - - - \ No newline at end of file diff --git a/LeleDroid/res/values-en/strings.xml b/LeleDroid/res/values-en/strings.xml index 69905e9..69bd8c7 100644 --- a/LeleDroid/res/values-en/strings.xml +++ b/LeleDroid/res/values-en/strings.xml @@ -12,6 +12,9 @@ Delete Delete confirmation Grade ranges + Share + Check LeleDroid, an amazing application for Android!\n +You will find it free at the Android Market and at End date Start date @@ -39,7 +42,7 @@ LeleDroid Widget Configuration Text color - Χρώμα παρασκηνίου + Background color Display soldiers\' military rank Display soldiers\' name Display soldiers\' military rank image diff --git a/LeleDroid/res/values/strings.xml b/LeleDroid/res/values/strings.xml index 4dc6e30..400d881 100644 --- a/LeleDroid/res/values/strings.xml +++ b/LeleDroid/res/values/strings.xml @@ -12,6 +12,10 @@ Διαγραφή Επιβεβαίωση διαγραφής Κλίμακα βαθμών + Κοινοποίηση + Δες το LeleDroid, μια καταπληκτική εφαρμογή για Android!\n + Θα τη βρεις δωρεάν στο Android Market και στο + Ημερομηνία απόλυσης Ημερομηνία κατάταξης diff --git a/LeleDroid/src/com/vasilakos/LeleDroid/Details.java b/LeleDroid/src/com/vasilakos/LeleDroid/Details.java index 34a4860..bd50920 100644 --- a/LeleDroid/src/com/vasilakos/LeleDroid/Details.java +++ b/LeleDroid/src/com/vasilakos/LeleDroid/Details.java @@ -1,5 +1,6 @@ package com.vasilakos.LeleDroid; +import java.text.DecimalFormat; import java.util.GregorianCalendar; import org.achartengine.ChartFactory; import org.achartengine.GraphicalView; @@ -41,6 +42,8 @@ public class Details extends Activity { TextView posostoTv; ProgressBar posostoPB; Str str; + + DecimalFormat twoDigit; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -57,7 +60,9 @@ public void onCreate(Bundle savedInstanceState) { monthsTv = (TextView) findViewById(R.id.months); posostoPB = (ProgressBar) findViewById(R.id.posostoProgress); posostoTv = (TextView) findViewById(R.id.pososto); - + + twoDigit = new DecimalFormat("#,##0.00"); + setLabels(); MyCount counter = new MyCount(Long.parseLong((String) secondsTv @@ -130,11 +135,11 @@ public void setChart(Integer adeia, Integer ipiretisimoYpoloipo, if (adeia < 0) { adeia = 0; } - + if (ipiretisimoYpoloipo == 0 && adeia == 0 && perasan == 0) { perasan = 1; } - + String[] labels = { adeia.toString(), ipiretisimoYpoloipo.toString(), perasan.toString() }; GraphicalView mChartView; @@ -161,25 +166,45 @@ public void onClick(View v) { } }); } - + public boolean onCreateOptionsMenu(Menu menu) { - menu.add(0, 1, 0, R.string.delete).setIcon(R.drawable.ic_menu_delete); + menu.add(0, 1, 0, R.string.share).setIcon(R.drawable.ic_menu_share); menu.add(0, 2, 0, R.string.edit).setIcon(R.drawable.ic_menu_edit); + menu.add(0, 3, 0, R.string.delete).setIcon(R.drawable.ic_menu_delete); return true; } - + public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case 1: - deleteButtonClicked(null); + shareButtonClicked(); return true; case 2: editButtonClicked(null); return true; + case 3: + deleteButtonClicked(null); + return true; } return false; } + public void shareButtonClicked() { + Intent intent = new Intent(Intent.ACTION_SEND); + + intent.setType("text/plain"); + intent.putExtra(Intent.EXTRA_SUBJECT, + getResources().getString(R.string.share)); + intent.putExtra( + Intent.EXTRA_TEXT, + getResources().getString(str.getVathmo()) + " " + str.getName() + + "\n" + str.getRestDays() + " " + + getResources().getString(R.string.plusToday) + + " (" + twoDigit.format(str.getPososto()) + "%)" + ); + startActivity(Intent.createChooser(intent, getString(R.string.share))); + } + public void editButtonClicked(View v) { Bundle b = new Bundle(); Intent edit = new Intent(this, com.vasilakos.LeleDroid.Properties.class); @@ -219,24 +244,26 @@ public void deleteButtonOk() { public void setName(Float totalPososto) { ImageView img = (ImageView) findViewById(R.id.vathmosImg); - + img.setOnClickListener(new OnClickListener() { - + public void onClick(View v) { - Intent view = new Intent(getBaseContext(), com.vasilakos.LeleDroid.Vathmoi.class); + Intent view = new Intent(getBaseContext(), + com.vasilakos.LeleDroid.Vathmoi.class); startActivity(view); } }); img.setImageDrawable(getResources().getDrawable(str.getImg())); - nameTv.setText(getResources().getString(str.getVathmo()) + " " + str.getName()); + nameTv.setText(getResources().getString(str.getVathmo()) + " " + + str.getName()); } public void setPososto(Float totalPososto) { if (totalPososto < 0) totalPososto = (float) 0; posostoPB.setProgress(totalPososto.intValue()); - posostoTv.setText(totalPososto.intValue() + "%"); + posostoTv.setText(twoDigit.format(totalPososto) + "%"); } public void setRestOfTv() { diff --git a/LeleDroid/src/com/vasilakos/LeleDroid/Info.java b/LeleDroid/src/com/vasilakos/LeleDroid/Info.java index 8f7e121..3ec81b8 100644 --- a/LeleDroid/src/com/vasilakos/LeleDroid/Info.java +++ b/LeleDroid/src/com/vasilakos/LeleDroid/Info.java @@ -105,13 +105,25 @@ public void onClick(DialogInterface arg0, int arg1) { }); alertbox.show(); } + + public void shareButtonClicked() { + Intent intent = new Intent(Intent.ACTION_SEND); + + intent.setType("text/plain"); + intent.putExtra(Intent.EXTRA_SUBJECT, + getResources().getString(R.string.share)); + intent.putExtra(Intent.EXTRA_TEXT,getResources().getString(R.string.shareAppText) + " " + getResources().getString(R.string.site) ); + + startActivity(Intent.createChooser(intent, getString(R.string.share))); + } public boolean onCreateOptionsMenu(Menu menu) { menu.add(0, 1, 0, R.string.licence).setIcon( R.drawable.ic_menu_info_details); - menu.add(0, 2, 0, R.string.donate).setIcon(R.drawable.ic_menu_star); + menu.add(0, 2, 0, R.string.share).setIcon(R.drawable.ic_menu_share); menu.add(0, 3, 0, R.string.vathmoiInfo).setIcon( R.drawable.ic_menu_view); + menu.add(0, 4, 0, R.string.donate).setIcon(R.drawable.ic_menu_star); return true; } @@ -121,11 +133,14 @@ public boolean onOptionsItemSelected(MenuItem item) { licenceButtonClicked(null); return true; case 2: - donateButtonClicked(null); + shareButtonClicked(); return true; case 3: vathmoiButtonClicked(null); return true; + case 4: + donateButtonClicked(null); + return true; } return false; }