/usr/share/hplip/ui5/upgradedialog.py is in hplip-data 3.16.11+repack0-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | # -*- coding: utf-8 -*-
#
# (c) Copyright 2001-2015 HP Development Company, L.P.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# Authors: Amarnath Chitumalla
#
#Global
import os
import time
import signal
# Local
from base.g import *
from base import device, utils, pkit, os_utils
from .ui_utils import *
# Qt
from PyQt5.QtCore import *
from PyQt5.QtGui import *
# Ui
from .upgradedialog_base import Ui_Dialog
MANUAL_INSTALL_LINK = "http://hplipopensource.com/hplip-web/install/manual/index.html"
class UpgradeDialog(QDialog, Ui_Dialog):
def __init__(self, parent, distro_tier, msg):
QDialog.__init__(self, parent)
self.distro_tier = distro_tier
self.msg = msg
self.result = False
self.setupUi(self, distro_tier, msg)
self.initUi()
def initUi(self):
# connect signals/slots
self.NextButton.clicked.connect(self.NextButton_clicked)
self.CancelButton.clicked.connect(self.CancelButton_clicked)
# self.connect (self.comboBox, SIGNAL ("currentIndexChanged (const QString&)"), self.slotIndexChanged)
self.installRadioBtton.toggled[bool].connect(self.installRadioBtton_toggled)
self.remindRadioBtton.toggled[bool].connect(self.remindRadioBtton_toggled)
self.dontRemindRadioBtton.toggled[bool].connect(self.dontRemindRadioBtton_toggled)
signal.signal(signal.SIGINT, signal.SIG_DFL)
# Application icon
self.setWindowIcon(QIcon(load_pixmap('hp_logo', '128x128')))
def installRadioBtton_toggled(self, radio_enabled):
if radio_enabled is True:
self.installRadioBtton.setChecked(True)
else:
self.installRadioBtton.setChecked(False)
def remindRadioBtton_toggled(self, radio_enabled):
if radio_enabled is True:
self.remindRadioBtton.setChecked(True)
self.daysSpinBox.setEnabled(True)
else:
self.remindRadioBtton.setChecked(False)
self.daysSpinBox.setEnabled(False)
def dontRemindRadioBtton_toggled(self, radio_enabled):
if radio_enabled is True:
self.dontRemindRadioBtton.setChecked(True)
else:
self.dontRemindRadioBtton.setChecked(False)
def NextButton_clicked (self):
if self.dontRemindRadioBtton.isChecked():
log.debug("HPLIP Upgrade, selected Don't remind again radiobutton")
user_conf.set('upgrade', 'notify_upgrade', 'false')
msg= "Check for HPLIP updates is disabled. To enable it again, change 'Settings' in 'HP systemtray' "
SuccessUI(self, self.__tr(msg))
elif self.remindRadioBtton.isChecked():
schedule_days = str(self.daysSpinBox.value())
log.debug("HPLIP Upgrade, selected remind later radiobutton days= %d" %(int(schedule_days)))
next_time = time.time() + (int(schedule_days) *24 * 60 *60)
user_conf.set('upgrade', 'pending_upgrade_time', str(int(next_time)))
else:
log.debug("HPLIP Upgrade, selected Install radiobutton distro_type=%d" %self.distro_tier)
self.NextButton.setEnabled(False)
if self.distro_tier != 1: # not tier 1 distro
log.debug("OK pressed for tier 2 distro pressed")
utils.openURL(MANUAL_INSTALL_LINK)
## TBD::open browser
else:
terminal_cmd = utils.get_terminal()
if terminal_cmd is not None and utils.which("hp-upgrade"):
cmd = terminal_cmd + " 'hp-upgrade -w'"
os_utils.execute(cmd)
self.result = True
else:
log.error("Failed to run hp-upgrade command from terminal =%s "%terminal_cmd)
FailureUI(self, self.__tr("Failed to run hp-upgrade"))
self.close()
def CancelButton_clicked(self):
log.debug("User exit")
self.close()
def __tr(self,s,c = None):
return qApp.translate("UpgradeDialog",s,c)
|