Changeset 3814


Ignore:
Timestamp:
Mar 3, 2017, 3:03:37 PM (2 years ago)
Author:
hectorgh
Message:

wip

Location:
lliurex-store/trunk/fuentes/lliurex-store-gui
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • lliurex-store/trunk/fuentes/lliurex-store-gui/Core.py

    r3796 r3814  
    88import LoadingBox
    99import SearchBox
     10import LliurexStoreManager
     11
     12
    1013
    1114RSRC_DIR="./"
     
    4952        def init(self):
    5053               
     54                self.dprint("Creating store manager...")
     55                self.store=LliurexStoreManager.LliurexStoreManager()
    5156                self.dprint("Creating loading screen...")
    5257                self.loading_box=LoadingBox.LoadingBox()
  • lliurex-store/trunk/fuentes/lliurex-store-gui/DetailsBox.py

    r3807 r3814  
    5252                self.install_button_label=Gtk.Label("Install")
    5353                self.install_button.add(self.install_button_label)
    54                 self.install_stack=Gtk.Stack()
    55                 self.install_stack.set_transition_type(Gtk.StackTransitionType.CROSSFADE)
    56                 self.install_stack.set_transition_duration(500)
    57                 self.install_stack.add_titled(self.install_button,"button","Install")
     54                self.install_button.connect("clicked",self.install_clicked)
     55               
    5856                vbox=Gtk.VBox()
    5957                self.install_label=Gtk.Label("Installing...")
    60                 self.install_label.set_name("DETAILS_LABEL")
    6158                vbox.pack_start(self.install_label,False,False,0)
    6259                vbox.set_valign(Gtk.Align.FILL)
     
    6865                self.install_pbar.set_halign(Gtk.Align.FILL)
    6966                vbox.pack_start(self.install_pbar,True,True,0)
    70                
     67
     68                hbox=Gtk.HBox()
     69                self.uninstall_button=Gtk.Button("Uninstall")
     70                self.uninstall_button.connect("clicked",self.uninstall_clicked)
     71                self.open_button=Gtk.Button("Open")
     72                self.open_button.connect("clicked",self.open_clicked)
     73                self.open_button.set_margin_right(10)
     74                hbox.pack_start(self.open_button,True,True,0)
     75                hbox.pack_start(self.uninstall_button,True,True,0)
     76               
     77               
     78               
     79                self.install_stack=Gtk.Stack()
     80                self.install_stack.set_transition_type(Gtk.StackTransitionType.CROSSFADE)
     81                self.install_stack.set_transition_duration(500)
     82                self.install_stack.add_titled(self.install_button,"install","Install")
    7183                self.install_stack.add_titled(vbox,"progress","Progress")
    72                 self.install_button.connect("clicked",self.install_clicked)
    73                
     84                self.install_stack.add_titled(hbox,"installed","Open/Uninstall")
    7485               
    7586               
     
    256267                info["aspect_ratio"]=False
    257268                info["pkg_name"]=pkg.name
     269                info["installed"]=pkg.installed
    258270               
    259271               
     
    275287                self.full_description_label.set_text(pkg.full_description)
    276288                self.core.main_window.location_label.set_text(pkg.section)
     289               
     290                if info["installed"]:
     291                        self.install_stack.set_visible_child_name("installed")
     292                else:
     293                        self.install_stack.set_visible_child_name("install")
     294                       
     295               
     296               
    277297               
    278298                info["image_url"]=pkg.icon_url
     
    396416               
    397417                self.install_button.set_name("INSTALL_BUTTON")
     418                self.install_label.set_name("DETAILS_LABEL")
     419                self.uninstall_button.set_name("UNINSTALL_BUTTON")
     420                self.open_button.set_name("INSTALL_BUTTON")
    398421               
    399422        #def set-css_info
     
    407430        def install_clicked(self,widget):
    408431               
     432                self.install_label.set_text("Installing...")
    409433                self.install_stack.set_visible_child_name("progress")
    410                 self.install_pbar.set_text("HOLA")
     434               
    411435                t=threading.Thread(target=self.install_pkg)
    412436                t.daemon=True
    413437                t.start()
    414                 GLib.timeout_add(100,self.pulse_pbar,t)
     438                GLib.timeout_add(100,self.pulse_pbar,t,"installed")
    415439               
    416440               
    417441        #def install_clicked
    418442       
    419         def pulse_pbar(self,t):
     443        def uninstall_clicked(self,widget):
     444               
     445                self.install_label.set_text("Uninstalling...")
     446                self.install_stack.set_visible_child_name("progress")
     447               
     448                t=threading.Thread(target=self.uninstall_pkg)
     449                t.daemon=True
     450                t.start()
     451                GLib.timeout_add(100,self.pulse_pbar,t,"install")
     452               
     453               
     454        #def install_clicked
     455       
     456               
     457        def pulse_pbar(self,t,target):
    420458               
    421459                if t.is_alive():
     
    423461                        return True
    424462               
    425                 self.install_button_label.set_text("Installed")
    426                 self.install_stack.set_visible_child_name("button")
     463                self.install_stack.set_visible_child_name(target)
    427464               
    428465                return False
     
    432469        def install_pkg(self):
    433470               
    434                 time.sleep(3)
     471                time.sleep(2)
    435472               
    436473        #def
    437474       
    438 
     475       
     476        def uninstall_pkg(self):
     477               
     478                time.sleep(2)
     479               
     480        #def
     481       
     482       
     483       
     484        def open_clicked(self,widget):
     485               
     486                print("Opening...")
     487               
     488        #def open_clicked
     489       
     490
  • lliurex-store/trunk/fuentes/lliurex-store-gui/MainMenu.py

    r3807 r3814  
    88
    99import gettext
    10 import urllib2
     10import urllib.request as urllib2
     11import shutil
    1112import json
    1213import random
     
    2122
    2223HOME_CONTENT_URL="http://lliurex.net/xenial/store/home_content.json"
    23 HOME_CONTENT_URL="file:///srv/svn/xenial/lliurex-store/trunk/fuentes/lliurex-store-gui/home_content.json"
     24HOME_CONTENT_URL="http://svn.lliurex.net/xenial/lliurex-store/trunk/fuentes/lliurex-store-gui/home_content.json"
    2425TMP_STORE_DIR="/tmp/.lliurex-store/"
    2526
     
    102103                        self.core.dprint("Downloading home_content.json...")
    103104                       
     105                       
    104106                        req=urllib2.Request(HOME_CONTENT_URL,headers=header)
    105107                        res=urllib2.urlopen(req)
     108                       
    106109                        f=open(TMP_STORE_DIR+"home_content.json","w")
    107                         f.write(res.read())
     110                        f.write(res.read().decode("utf-8"))
    108111                        f.close()
     112                       
    109113                       
    110114                        f=open(TMP_STORE_DIR+"home_content.json")
     
    114118                except Exception as e:
    115119                       
    116                         print e
     120                        print(e)
    117121               
    118122               
     
    255259        def category_clicked(self,widget,category):
    256260               
    257                 print category
     261                print(category)
    258262               
    259263        #def category_clicked
  • lliurex-store/trunk/fuentes/lliurex-store-gui/Package.py

    r3796 r3814  
    2626                self.screenshots=dic.setdefault("screenshots",[])
    2727                self.related_packages=dic.setdefault("related_packages",[])
     28                self.installed=dic.setdefault("installed",False)
    2829                       
    2930               
     
    3334        def pprint(self):
    3435               
    35                 print "BANNER_URL:",self.banner_url
    36                 print "BANNER_ID:",self.banner_id
    37                 print "VERSION:",self.version
    38                 print "CATEGORY:",self.category
    39                 print "LICENSE:",self.license
    40                 print "SIZE:",self.size
    41                 print "WEBSITE:",self.website
    42                 print "NAME",self.name
    43                 print "DEBIAN_NAME",self.debian_name
    44                 print "SHORT_DESCRIPTION",self.short_description
    45                 print "SECTION:",self.section
    46                 print "ICON_URL:",self.icon_url
    47                 print "ICON_ID:",self.icon_id
    48                 print "PREVIEW_IMAGE:",self.video_preview_image
    49                 print "VIDEO_ID:",self.video_id
    50                 print "VIDEO_URL:",self.video_url
    51                 print "SCREENSHOT_URL:",self.screenshot_url
    52                 print "SCREENSHOT_ID:",self.screenshot_id
    53                 print "VIDEOS:",self.videos
    54                 print "SCREENSHOTS:",self.screenshots
    55                 print "RELATED_PACKAGES:",self.related_packages
     36                print(("BANNER_URL:",self.banner_url))
     37                print(("BANNER_ID:",self.banner_id))
     38                print(("VERSION:",self.version))
     39                print(("CATEGORY:",self.category))
     40                print(("LICENSE:",self.license))
     41                print(("SIZE:",self.size))
     42                print(("WEBSITE:",self.website))
     43                print(("NAME",self.name))
     44                print(("DEBIAN_NAME",self.debian_name))
     45                print(("SHORT_DESCRIPTION",self.short_description))
     46                print(("SECTION:",self.section))
     47                print(("ICON_URL:",self.icon_url))
     48                print(("ICON_ID:",self.icon_id))
     49                print(("PREVIEW_IMAGE:",self.video_preview_image))
     50                print(("VIDEO_ID:",self.video_id))
     51                print(("VIDEO_URL:",self.video_url))
     52                print(("SCREENSHOT_URL:",self.screenshot_url))
     53                print(("SCREENSHOT_ID:",self.screenshot_id))
     54                print(("VIDEOS:",self.videos))
     55                print(("SCREENSHOTS:",self.screenshots))
     56                print(("RELATED_PACKAGES:",self.related_packages))
    5657               
    5758        #def pprint
  • lliurex-store/trunk/fuentes/lliurex-store-gui/Screenshot.py

    r3773 r3814  
    22gi.require_version('Gtk', '3.0')
    33from gi.repository import Gtk,GdkPixbuf,GLib,GObject
    4 import urllib2
     4import urllib.request as urllib2
    55import threading
    66import os
     
    111111        def get_size(self):
    112112               
    113                 print self.image_info["x"]
    114                 print self.image_info["y"]
     113                print(self.image_info["x"])
     114                print(self.image_info["y"])
    115115               
    116116        #def get_size
     
    192192                                req=urllib2.Request(self.image_info["image_url"],headers=header)
    193193                                res=urllib2.urlopen(req)
    194                                 f=open(self.image_dir+self.image_info["image_id"],"w")
     194                                f=open(self.image_dir+self.image_info["image_id"],"wb")
    195195                                f.write(res.read())
    196196                                f.close()
     
    201201                                       
    202202                        except Exception as e:
     203                                print(e)
    203204                                self.image_info["image_path"]="/usr/share/icons/Vibrancy-Colors/mimetypes/256/package.svg"
    204205                                self.image_info["custom_frame"]=True
  • lliurex-store/trunk/fuentes/lliurex-store-gui/lliurex-store.css

    r3796 r3814  
    206206                        background-image:-gtk-gradient (linear, left top, left bottom, from (#449fff),  to (#449fff));;
    207207                }
     208               
     209               
     210                #UNINSTALL_BUTTON {
     211                        border-width: 0;
     212                        border-radius: 0px;
     213                        box-shadow: none;
     214                        border-color: transparent;
     215                        border: none;
     216                        color: white;
     217                        font: Roboto 16;
     218                        background-color: #F44336;
     219                        text-shadow: none;
     220                       
     221                }
     222               
     223                #UNINSTALL_BUTTON:hover {
     224                        background-color: #E57373;
     225                }
     226               
     227                #OPEN_BUTTON {
     228                        border-width: 0;
     229                        border-radius: 0px;
     230                        box-shadow: none;
     231                        border-color: transparent;
     232                        border: none;
     233                        color: white;
     234                        font: Roboto 16;
     235                        background-color: #4CAF50;
     236                        text-shadow: none;
     237                       
     238                }
     239               
     240                #OPEN_BUTTON:hover {
     241                        background-color: #81C784;
     242                }
     243               
     244               
     245                               
     246
     247
     248
    208249               
    209250                @keyframes rotate-colors {
  • lliurex-store/trunk/fuentes/lliurex-store-gui/lliurex-store.py

    r3796 r3814  
    1 #!/usr/bin/env python
     1#!/usr/bin/env python3
     2import sys
     3sys.path.append('/srv/svn/xenial/lliurex-store/trunk/fuentes/lliurex-appstore.install/usr/share/lliurex-store')
    24
    35import Core
Note: See TracChangeset for help on using the changeset viewer.