From 60b4e4e223b3fa6b8f12a9cb96b20a04b26c4e05 Mon Sep 17 00:00:00 2001 From: Danny Campbell Date: Fri, 16 Apr 2010 22:42:34 -0600 Subject: [PATCH] Added Diablo refresh code. imgfetch.py added, contains function portrait_filename( char_id ). This function downloads the portrait if necessary. --- avatar.png | Bin 13260 -> 0 bytes imgfetch.py | 21 +++++++++++++++++++++ imgs/avatar.jpg | Bin 0 -> 1754 bytes imgs/error.jpg | Bin 0 -> 2391 bytes mevemon.py | 6 +++--- ui/diablo/ui.py | 23 ++++++++++++++--------- 6 files changed, 38 insertions(+), 12 deletions(-) delete mode 100644 avatar.png create mode 100644 imgfetch.py create mode 100644 imgs/avatar.jpg create mode 100644 imgs/error.jpg diff --git a/avatar.png b/avatar.png deleted file mode 100644 index 39ac428045373cc53cc3b94d7d678c0693092cce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13260 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 KMNUMnLSTYZ*`IF! diff --git a/imgfetch.py b/imgfetch.py new file mode 100644 index 0000000..760b6be --- /dev/null +++ b/imgfetch.py @@ -0,0 +1,21 @@ +import urllib +import os.path + +def portrait_filename( char_id ): + + filename = "imgs/%s.jpg" % char_id + + if os.path.isfile( filename ): + return filename + + try: + img = urllib.urlopen( "http://img.eve.is/serv.asp?s=64&c=%s" % char_id ).read() + except IOError: + return 'imgs/error.jpg' + + fp = open( filename, 'w' ) + fp.write( img ) + fp.close() + return filename + +print portrait_filename( '797400947' ) diff --git a/imgs/avatar.jpg b/imgs/avatar.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9a609d80bd3491a52ef9770f72b4ac7531638707 GIT binary patch literal 1754 zcmbW!c{tR090%~<+(*PPO&Us?nT*M_?qgZyXf)|qcZeF(X2&raWSmbVg)%}Z^N4ca zl4uAUA=5$5%*f`J${EsScB*}LpJ)Ht-S_ADe*gJ?p3n1nJzvRyWEha&N2AjK5C{N3 z(gGxdfF%Hj!r(9{91epc5O5?~9*st!(Af2IGV&X-N=h5CI2?X6Nfob5P{HB0YHlTL zSJ$9uY*M9aQOQ~)vIhC<5D)@^KqJwLXtW|3kHeGyb0qfx3=-H4?1q500bmRWf&ocd z09EOpFwnOEe+C4GNcTk`QRsEjhH7~L41z$wPzVeLg-W|4rSAX~15;4bHis+PG7#H1 zSe@wPn@EC1Wzz<`u6d%aXTTX08n;nt6P~nPovcC8(>E|QGXBxhY7fnNFMXfAgQJu4 zVHa2C@n24O{mSwV3_2Ce4G9g4IU9TKd|Z4&O6uh+X;-hM^Rshu^YRM{i;8bo-Knm* zE2yn&e$dj|_OM;}sJo}PumAagNIWt+Ha;;q^=kU{!s5H7<(2oVA3lC{fdI&Nmh}D( z`-cl7b%CK!2o&+v1p;%W2ZDjZ)U@FW=C%k1M{%1@G!ko(e6z9%MbNdI-{2Y0g~k!} zMo0@^Y2Rf34tC~$$^L@uHR8-%dIBHI?lTqqNxO7`rGHHjRh%pSzGJ z0lbIeERo4Hm!~GFo^Ekv2bQ|`V0bu_6oZpZAssr#WqyWFdx-{#A<33O4tFR5nQ*pQ zddZ3_HCH$#Z<>11m&iy`>DN#8;c!&Ng!tTtbFNyiZy0Dr>b|kBrPWlAJWfJ4%Zf9G zqUcO5!Q!;qT$U?$;CQshF(c&J%H?u7 z$8b^?e(iOO4bc!He6eq)^CuIYc8qJ)YG%irL!Df%H%_}QE$OiXwSEbDcTZutSyyEC z*!@85x^qNiQV1N21I)-#GU|HQea(^z_5LuUGxEGBwZU~nr=By0;0UM`*X z(+l@;xzV*#e_dn?T_YnmA$VRl3aPTZ+-hDbWWg>59JZKmV+voYG1WTr;k(e!?#_Eu zm#nfX*cCxTX6i?^+5#tyHX9z}EPdHgltIsXHqOpJKXX-{ws?Jn0HrTh5VoTEzl%*S zg!n0-wjAdwyp;f%$JZh-{Fe1l+mwu)S>ID7e1oDDSvotH+H4Hn!c`e9Z#%KZk9pz~ zB0^dzJ<6)rK}`*AxaZ}~UcTUN_R~TruYx2bq{tO862|M*i2QT4%0^-kDc6oR#sh7B z({tw)+p~8jWe2y;%P0{W^f9x!_I0EC!55~XV?`n{D{xv|U-Py?6K&=)6r++U*mC8; zXSY65Rkz>ITJht8`vckn8O7C;JNoe5i*%qa!6p<038V|m!cR@sXRRdmWS{ZF`9$1` z_b}$PtDHf7@kx@~8I~}0f?|3(OJgdqzV3Q;UMZ!K+1`GhE1Q~if2sUltJtZ8xnksB zL8wVU8pO&8-o46!Ea<@kk!ZjW6Ep z9P(MWYCVe`})kA0Z_gv*$ z1h~>P4=^ody@H?mc!u_+?4X@3Y;WdG=Chcm9Fuv@QHS(3Z_|x{Ve+eDEsAQDS22I? NP;D#4ecNe?=nsay1Bn0t literal 0 HcmV?d00001 diff --git a/imgs/error.jpg b/imgs/error.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b997ecae79a5516d1a971107fe2418820d54b125 GIT binary patch literal 2391 zcmb_c2~ZPP7=F7sHY6b=BoQ2shBShZYF>ftgo?uEaE>B35xlMKfpZY52Gr9m0A<6(4z~8)4jA>29 zm{6~wa(gJ7Lusg}94=*HwB;nEEH11>3r?+jK^b$vl$aP8SqU|p@?e9WoIQJoJgzW; zfhADC$#JJV&K3_57N-qx5kk7q5g777GHi9jHbASIB{OGN*r0C^sWIPefY z3``Di5ylWj2E2Ss7MtK$ae3I=L3q~~Z-PRAF);?t#90KJ z!(#B=U{J(hI@nHS%?gSV%U7kkvL)MdihMs*NL6JTw`qn=wSL5eO!d<{&$LGOQ3p?@ zInLg(DBAx*uF1o$F1StCUA(!xKIv{xfK%3?EvJ8|X!zrKp1HE|-iyUC$y;|GK6A0@ ze(&_akl5AfyN>)+b*=qR5x{ZSEtBerV6)t*796J9GGPa+UIh0piEW!)J>te zW7w4Gr6UENH}ow%6E^xaX1;5zrJ>0Agn9wAMS5LXvAC#gV1wDb zIHYvE-jP^bdG)u8qe~h>$LZY;j`ucq^}hBt%w3wF~N`e&!GPB^3kC1gEj^PH)J2X2G z=#l{p17sVnQ2O~rEL1HBP|ov5E`UpB&Gz-j;ddIZHyKoczOvA;B{HHO5I_VO&kcy9 zw8q5w>VQS)w(1k~I`kecy-n123+kOwt>LkET3l_S!348j!AB9TGiu={B7-<`wJ8z$ zv5gQ*G;tKpLfEiK2f_|s2O4tA6R^rjkHOI ztG2&eJ?BHTKhU(YlFHmt~)0_C34-%V~(fRK5hxl?`W=R zoOv@o_x^#gU!w)}XwUE?k!NG-##fd`mt=VKtG|jkb9~B}SD~q$=bBHfD$O>lK19G};8uC|OnIzd)Me+6bj8B*y literal 0 HcmV?d00001 diff --git a/mevemon.py b/mevemon.py index ce7cc63..ce0f5d9 100644 --- a/mevemon.py +++ b/mevemon.py @@ -42,7 +42,7 @@ class mEveMon(): def get_characters( self ): ui_char_list = [] print 'get_characters() called.' - placeholder_chars = [("Character 1", "avatar.png"), ("Character 2", "avatar.png")] + placeholder_chars = [("Please check your API settings.", "imgs/error.jpg")] api = eveapi.EVEAPIConnection() uid = self.get_uid() api_key = self.get_api_key() @@ -56,11 +56,11 @@ class mEveMon(): return placeholder_chars except Exception, e: print "The sky is falling! Unknown error: ", str( e ) - raise + return placeholder_chars print "grabbing character list:" for character in api_char_list.characters: print character - ui_char_list.append( ( character.name, "avatar.png" ) ) + ui_char_list.append( ( character.name, "imgs/avatar.jpg" ) ) return ui_char_list else: return placeholder_chars diff --git a/ui/diablo/ui.py b/ui/diablo/ui.py index 8c4eaf0..72b33d7 100644 --- a/ui/diablo/ui.py +++ b/ui/diablo/ui.py @@ -32,21 +32,24 @@ class mEveMonUI(): win.set_menu(menu) # will probably need to refer to http://maemo.org/community/maemo-developers/gtktreeview_issue/ for sample code again when we make these clickable --danny - model = self.create_model() - treeview = gtk.TreeView( model = model ) - treeview.set_model(model) + self.char_model = self.create_char_model() + treeview = gtk.TreeView( model = self.char_model ) + treeview.set_model(self.char_model) self.add_columns_to_treeview(treeview) win.add(treeview) win.show_all() - def create_model(self): + def create_char_model(self): lstore = gtk.ListStore(gtk.gdk.Pixbuf, gobject.TYPE_STRING) #get icon and name and put in a liststore - # temporary hard-coding until we can fetch the data with eveapi - # something like: + self.fill_char_model(lstore) + + return lstore + + def fill_char_model(self, lstore): char_list = self.controller.get_characters() #char_list = [("Character 1", "avatar.png"), ("Character 2", "avatar.png")] @@ -54,7 +57,9 @@ class mEveMonUI(): liter = lstore.append() lstore.set(liter, 1, name, 0, self.set_pix(icon)) - return lstore + def update_model(self, lstore): + lstore.clear() + self.fill_char_model(lstore) def set_pix(self, filename): pixbuf = gtk.gdk.pixbuf_new_from_file(filename) @@ -117,6 +122,7 @@ class mEveMonUI(): if result == gtk.RESPONSE_OK: self.controller.set_api_key(apiEntry.get_text()) self.controller.set_uid(uidEntry.get_text()) + self.update_model(self.char_model) dialog.destroy() @@ -135,9 +141,8 @@ class mEveMonUI(): dialog.destroy() def refresh_clicked(self, button, window): - pass + self.update_model(self.char_model) - def create_menu(self, window): # changed from hildon.AppMenu --danny -- 1.7.9.5