コード例 #1
0
 def __create_menu(self, data):
     for text, func in data:
         if type(func) in (list, tuple):
             submenu = Menu()
             for _text, _ in func:
                 _id = self.__text_and_item_data[_text].id
                 sitem = MenuItem(submenu, _id, _text)
                 submenu.AppendItem(sitem)
             self.AppendSubMenu(submenu, text)
         else:
             if text == self.SEPARATOR_TEXT:
                 self.AppendSeparator()
             else:
                 data = self.__text_and_item_data[text]
                 item = MenuItem(self, data.id, text)
                 self.AppendItem(item)
コード例 #2
0
ファイル: mxwsapp_updater.py プロジェクト: SVSagi/mxwst
    def notifyInApp(self):
        self.setUpdateData()

        if self.newData == None or self.get_update_fail == True:
            return

        update_string = ""
        update_changes = ""

        update_final_ver = self.getUpdateValue("updates", "latest_final_main")
        update_final_build = self.getUpdateValue("updates",
                                                 "latest_final_build")
        update_beta_ver = self.getUpdateValue("updates", "latest_beta_main")
        update_beta_build = self.getUpdateValue("updates", "latest_beta_build")

        if bool(self.getUpdateValue("updates", "update")):
            if bool(self.cur_app_isbeta):
                if decimal.Decimal(update_beta_ver) > decimal.Decimal(
                        self.cur_app_version):
                    update_string = update_beta_ver + "b" + update_beta_build
                    update_changes = self.getUpdateValue(
                        "updates", "beta_changes")

                if decimal.Decimal(update_beta_build) > decimal.Decimal(
                        self.cur_app_build):
                    update_string = update_beta_ver + "b" + update_beta_build
                    update_changes = self.getUpdateValue(
                        "updates", "beta_changes")
            else:
                if decimal.Decimal(update_final_ver) > decimal.Decimal(
                        self.cur_app_version):
                    update_string = update_final_ver + "b" + update_final_build
                    update_changes = self.getUpdateValue(
                        "updates", "final_changes")

                if decimal.Decimal(update_final_build) > decimal.Decimal(
                        self.cur_app_build):
                    update_string = update_final_ver + "b" + update_final_build
                    update_changes = self.getUpdateValue(
                        "updates", "final_changes")

        if bool(self.getUpdateValue("updates", "notification")):
            self.notify_msg = self.getUpdateValue("updates",
                                                  "notification_msg")

        if self.parent.close_after_update:
            self.parent.Destroy()

        if update_string != "":
            from wx import Menu, MenuItem, EVT_MENU

            self.parent.update_ver = update_string + (
                "beta" if self.cur_app_isbeta else "")
            self.parent.update_changes = ("\n".join(
                update_changes.split('\\n')))

            updateMenu = Menu()
            updateMenu.AppendItem(
                MenuItem(updateMenu, 300, 'Version ' + update_string))
            self.parent.Bind(EVT_MENU, self.parent.showUpdate, id=300)
            self.parent.menuBar.Append(updateMenu, "Update Available ")

        if self.parent.close_after_update:
            self.parent.Destroy()