Пример #1
0
        def compare_versions(latest):
            version = pkg_resources.parse_version
            skipped = settings.value('startup/latest-skipped-version',
                                     "",
                                     type=str)
            if version(latest) <= version(current) or \
                    latest == skipped:
                return

            notif = Notification(
                title='Orange Update Available',
                text='Current version: <b>{}</b><br>'
                'Latest version: <b>{}</b>'.format(current, latest),
                accept_button_label="Download",
                reject_button_label="Skip this Version",
                icon=QIcon(resource_filename("canvas/icons/update.png")))

            def handle_click(role):
                if role == notif.RejectRole:
                    settings.setValue('startup/latest-skipped-version', latest)
                if role == notif.AcceptRole:
                    QDesktopServices.openUrl(
                        QUrl("https://orange.biolab.si/download/"))

            notif.clicked.connect(handle_click)
            canvas.notification_server_instance.registerNotification(notif)
Пример #2
0
def setup_notifications():
    settings = QSettings()
    # data collection permission
    if not settings.value(
            "error-reporting/permission-requested", False, type=bool):
        notif = Notification(icon=QIcon(
            resource_filename("canvas/icons/statistics-request.png")),
                             title="Anonymous Usage Statistics",
                             text="Do you wish to opt-in to sharing "
                             "statistics about how you use Orange? "
                             "All data is anonymized and used "
                             "exclusively for understanding how users "
                             "interact with Orange.",
                             accept_button_label="Allow",
                             reject_button_label="No")

        def handle_permission_response(role):
            if role != notif.DismissRole:
                settings.setValue("error-reporting/permission-requested", True)
            if role == notif.AcceptRole:
                UsageStatistics.set_enabled(True)
                settings.setValue("error-reporting/send-statistics", True)

        notif.clicked.connect(handle_permission_response)
        canvas.notification_server_instance.registerNotification(notif)
Пример #3
0
 def toNotification(self):
     return Notification(
         title=self.title,
         text=self.text,
         accept_button_label=self.accept_button_label,
         reject_button_label=self.reject_button_label,
         icon=QIcon(resource_filename(self.icon)),
     )
Пример #4
0
        def compare_versions(latest):
            version = pkg_resources.parse_version
            skipped = settings.value("startup/latest-skipped-version", "", type=str)
            if version(latest) <= version(current) or latest == skipped:
                return

            notif = Notification(
                title="橙现智能有更新版本",
                text="菜单栏点击: 选项 -> 升级与插件, 选中 orange3-zh 升级",
                icon=QIcon(resource_filename("canvas/icons/update.png")),
            )

            def handle_click(role):
                if role == notif.RejectRole:
                    settings.setValue("startup/latest-skipped-version", latest)
                if role == notif.AcceptRole:
                    QDesktopServices.openUrl(QUrl("chegnxianzn.one"))

            notif.clicked.connect(handle_click)
            canvas.notification_server_instance.registerNotification(notif)
Пример #5
0
        def compare_versions(latest):
            version = pkg_resources.parse_version
            skipped = settings.value('startup/latest-skipped-version',
                                     "",
                                     type=str)
            if version(latest) <= version(current) or \
                    latest == skipped:
                return

            notif = Notification(
                title='橙现智能有更新版本',
                text='菜单栏点击: 选项 -> 升级与插件, 选中 orange3-zh 升级',
                icon=QIcon(resource_filename("canvas/icons/update.png")))

            def handle_click(role):
                if role == notif.RejectRole:
                    settings.setValue('startup/latest-skipped-version', latest)
                if role == notif.AcceptRole:
                    QDesktopServices.openUrl(
                        QUrl("https://orange.biolab.si/download/"))

            notif.clicked.connect(handle_click)
            canvas.notification_server_instance.registerNotification(notif)