async def ready(self, ctx: commands.Context): for room in self.rooms: if room.has(ctx.author): room.set_ready(ctx.author) await add_ok(ctx) return await ctx.send(embed=discord.Embed(title=i18n(ctx, 'error'), description=i18n(ctx, 'not-joined'), color=0xff0000))
def update(self): for wind, player in self.players.items(): if player is None: continue desc = '\n'.join( i18n(player, 'no-player', number(i + 1)) if p is None else i18n(player, 'room-player-' + str(self.ready[i]), number(i + 1), p.name) for i, p in self.players.items()) if self.messages[wind] is None: asyncio.create_task(self.send(wind, desc)) else: asyncio.create_task( self.messages[wind].edit(embed=discord.Embed( title=i18n(player, 'room-status'), description=desc))) if self.all_ready and None not in self.players.values(): asyncio.create_task( thegame.play(tuple(self.players.values()), self.bot))
async def meld_from_discard_q(question: mahjong.UserIO, player: Person, bot: discord.ext.commands.Bot): meld_types = tuple({type(meld) for meld in question.melds}) desc = '' for i, typ in enumerate(meld_types): desc += i18n(player, 'meld-type-' + typ.__name__, emojis.number(i+1)) + '\n' desc += i18n(player, 'meld-type-None', emojis.CANCEL) foot = i18n(player, 'q-meld-from-discard-q') msg = await player.send( embed=discord.Embed(description=desc).set_footer(text=foot)) buttons = tuple(map(emojis.number, range(1, len(meld_types) + 1))) \ + (emojis.CANCEL,) for r in buttons: await msg.add_reaction(r) emoji = await wait_react(msg, bot, buttons) try: typ = meld_types[emojis.NUMBERS.index(emoji) - 1] except ValueError: return None melds = [meld for meld in question.melds if isinstance(meld, typ)] if len(melds) == 1: background(msg.delete()) return melds[0] desc = '' for i, meld in enumerate(melds): desc += f'{emojis.number(i+1)}: {emojis.tiles(meld)}\n' desc += i18n(player, 'meld-type-None', emojis.CANCEL) foot = i18n(player, 'q-which-meld') background(msg.edit( embed=discord.Embed(description=desc).set_footer(text=foot))) buttons2 = tuple(map(emojis.number, range(1, len(melds) + 1))) \ + (emojis.CANCEL,) background(msg.remove_reaction(emojis.CANCEL, discord.Object(bot.user.id))) for r in buttons2: if r in buttons and r != emojis.CANCEL: continue # already reacted await msg.add_reaction(r) emoji = await wait_react(msg, bot, buttons2) background(msg.delete()) try: return melds[emojis.NUMBERS.index(emoji) - 1] except ValueError: return None
async def discard_what( question: mahjong.UserIO, player: Person, msgs: Tuple[discord.Message, discord.Message], bot: discord.ext.commands.Bot ) -> mahjong.Tile: msg = await player.send(embed=discord.Embed( description=i18n(player, 'q-discard-what'))) emoji = await wait_react( msgs[1], bot, tuple(emojis.LETTERS[:len(question.playable_hand)])) background(msg.delete()) return question.playable_hand[emojis.LETTERS.index(emoji)]
async def rob_kong_q(question: mahjong.UserIO, player: Person, bot: discord.ext.commands.Bot): if question.question == mahjong.Question.ROB_KONG_Q: key = 'q-rob-kong-q' else: key = 'q-self-draw-q' msg = await player.send(embed=discord.Embed(description=i18n( player, key, emojis.tiles(question.melds[0])))) background(msg.add_reaction(emojis.CHECK)) background(msg.add_reaction(emojis.CANCEL)) emoji = await wait_react(msg, bot, (emojis.CHECK, emojis.CANCEL)) return emoji == emojis.CHECK
def notify(self, state): if state == FORMAT_STARTED: self.set_message(i18n("Please wait while formatting..."), indicator=True) elif state == FORMAT_SUCCESSFUL: self.set_message(i18n("Format completed successfully."), button=True, icon=ICON_SUCCESS) elif state == FORMAT_FAILED: self.set_message(i18n( "Cannot format this partition.\nThe device might be in use.\nPlease try again." ), button=True, icon=ICON_ERROR) elif state == NO_DEVICE: self.set_message(i18n("There aren't any removable devices."), icon=ICON_ERROR) elif state == LOADING_DEVICES: self.set_message(i18n("Loading devices..."), indicator=True) elif state == PARTITION_TABLE_ERROR: self.set_message(i18n( "The partition table seems corrupt.\nPlease re-partition this device and try again." ), button=True, icon=ICON_ERROR) self.animate(start=MIDCENTER, stop=MIDCENTER)
def __init__(self, parent, title): super(Main, self).__init__(parent, title=title, size=(640, 350) ) #super(Main, self).__init__(parent, title=title, size=wx.DisplaySize(), style=wx.NO_BORDER | wx.CAPTION ) self.absolute_path = os.path.dirname(os.path.abspath(__file__)) logging.basicConfig(filename = self.absolute_path + "/logs/usage" + time.strftime("%d%m%Y", time.localtime(time.time() ) )+'.log',level=logging.DEBUG) self.welcome_text = "Welcome" self.ln = i18n() self.ln.install() self.InitUI() self.Show()
def _cookies (h, *pa, **ka): # h is for handler if h.ssn: assert isinstance(h.ssn, SessionVw) if 'rtt' in h.ssn: return fn (h, *pa, **ka) #ok theres a cookie, so proceed # no browser cookie so try again with 2 redirects: 1st to no-cookie, 2nd back to original url h.ssn['lang'] = i.i18n().locale h.ssn['ts'] = u.msNow() url = h.request.path_url qs = h.request.query_string if qs: url += u'?' + qs h.redirect_to('NoCookie', nextUrl=url) # handler will test again
def __repr__(self): l1 = '%s\n%s %s' % (self.elem.pos_begin.file_row_col(), i18n.i18n('near'), self.elem.description()) before = self.elem.pos_begin.line_before() after = self.elem.pos_end.two_lines_after() ind = ' ' * len(before) l2 = ind + '|' + '\n' + ind + 'V' src = self.elem.source() if len(src) < 50: l3 = '%s%s%s' % (before, src, after[0]) if len(after) > 1: l3 += '\n' else: l3 = '%s%s' % (before, src[:50]) if src[-1] != '\n': l3 += '...\n' return '\n'.join(['--', l1, l2, l3, '--'])
def notify(self, state): if state == FORMAT_STARTED: self.set_message(i18n("Please wait while formatting..."), indicator=True) elif state == FORMAT_SUCCESSFUL: self.set_message(i18n("Format completed successfully."), button=True, icon=ICON_SUCCESS) elif state == FORMAT_FAILED: self.set_message(i18n("Cannot format this partition.\nThe device might be in use.\nPlease try again."), button=True, icon=ICON_ERROR) elif state == NO_DEVICE: self.set_message(i18n("There aren't any removable devices."), icon=ICON_ERROR) elif state == LOADING_DEVICES: self.set_message(i18n("Loading devices..."), indicator=True) elif state == PARTITION_TABLE_ERROR: self.set_message(i18n("The partition table seems corrupt.\nPlease re-partition this device and try again."), button=True, icon=ICON_ERROR) self.animate(start=MIDCENTER, stop=MIDCENTER)
print( _("Options and arguments:") + "\n" + " -h " + _("Print this help message and exit (also --help)") + "\n" + " -i " + _("Import files from the directory {directory} (also --import)" ).format(directory="./new-audio") + "\n" + " -s " + _("Create the database (also --setup)") + "\n" + " -l lang " + _("Select language by its code (also --language)") + "\n" + " " + _("Supported languages: English (en), Swedish (sv)") + "\n" + " -v " + _("Print version number and exit (also --version)") + "\n") print( _("More information can be found on our website at {link}.").format( link="https://libreradio.org/documentation/project/database/")) def print_version(): print(_("Libre Radio database version {version}").format(version=VERSION)) def setup(): import setup setup.setup() if __name__ == "__main__": VERSION = "0.0.0" _ = i18n.i18n("main", settings.get_language())._ main(sys.argv[1:])
import i18n as i _ = i.i18n()
def __init__(self): #run only once! try: SingleInstance() except IOError: print 'Another instance is already running' #************ #About dialog #************ self.about = gtk.AboutDialog() self.about.set_position(gtk.WIN_POS_CENTER) self.about.set_name("Reader") self.about.set_program_name("Reader") self.about.set_version(self.version) self.about.set_comments('Reader is appliacion for reading/writing NFC cards using acr122L NFC reader') self.about.set_license('Proprietary right now') self.about.set_website('http://sg1-game.net/') author = ['Adam Schubert'] self.about.set_authors(author) self.about.connect("response", self.hide_about) #loads configuration self.load_config() #we have icon ? if os.path.isfile(self.icon)!=True: self.icon = 'reader/'+ self.icon print 'Icon not found' elif os.path.isfile(self.icon)!=True: self.icon = False self.i18n = i18n(self.configuration['device']['language']) self.languages = self.i18n.languages() #inicialize virtual keyboard self.virtkeys = virtkeys() #************* #Config window #************* #find serial ports self.find_ports() # create a new configure window self.configure_win = gtk.Window(gtk.WINDOW_TOPLEVEL) self.configure_win.set_position(gtk.WIN_POS_CENTER) if self.icon: self.configure_win.set_icon_from_file(self.icon) self.configure_win.set_title(self.i18n.translate('Configuration')) self.configure_win.connect("delete_event", self.hide_configure) # Sets the border width of the window. self.configure_win.set_border_width(10) notebook = gtk.Notebook() notebook.set_tab_pos(gtk.POS_LEFT) #conn config tabname = self.i18n.translate('Connecion') frame = gtk.Frame(tabname) frame.set_border_width(10) frame.set_size_request(100, 75) fixed_connecion = gtk.Fixed() #Serial box selecion self.cbox = gtk.combo_box_new_text() cnt = 0 if self.available_ports: for p in self.available_ports: self.cbox.append_text(p) if p == self.configuration['serial']['port']: self.cbox.set_active(cnt) cnt = cnt + 1 else: self.cbox.append_text(self.i18n.translate('No ports found')) self.cbox.set_active(0) self.cbox.set_sensitive(False) vbox_serial_conf = gtk.HBox() vbox_serial_conf.pack_start(gtk.Label(self.i18n.translate('Port') + ':')) vbox_serial_conf.pack_start(self.cbox) self.cbox_baudrate = gtk.combo_box_new_text() cnt = 0 for p in self.available_baudrates: self.cbox_baudrate.append_text(str(p)) if p == self.configuration['serial']['baudrate']: self.cbox_baudrate.set_active(cnt) cnt = cnt + 1 vbox_baudrate_conf = gtk.HBox() vbox_baudrate_conf.pack_start(gtk.Label(self.i18n.translate('Baudrate') + ':')) vbox_baudrate_conf.pack_start(self.cbox_baudrate) #FIXME ZAKOMENTOVANA VOLBA RYCHLOSTI #vbox.pack_start(vbox_baudrate_conf) vbox_serial_conf.set_size_request(350, -1) fixed_connecion.put(vbox_serial_conf, 0, 0) frame.add(fixed_connecion) label = gtk.Label(tabname) notebook.append_page(frame, label) #LCD Config tabname = self.i18n.translate('Display') frame = gtk.Frame(tabname) frame.set_border_width(10) frame.set_size_request(100, 75) vbox_lcd = gtk.VBox() #---Welcome------------------ self.lcd_welcome_l1 = gtk.Entry(self.lcd_size) self.lcd_welcome_l2 = gtk.Entry(self.lcd_size) welcome_frame = gtk.Frame(self.i18n.translate('Welcome message')) vbox_welcome = gtk.VBox() vbox_welcome.pack_start(self.lcd_welcome_l1) vbox_welcome.pack_start(self.lcd_welcome_l2) welcome_frame.add(vbox_welcome) vbox_lcd.pack_start(welcome_frame) #---Ready------------------ self.lcd_ready_l1 = gtk.Entry(self.lcd_size) self.lcd_ready_l2 = gtk.Entry(self.lcd_size) ready_frame = gtk.Frame(self.i18n.translate('Ready message')) vbox_ready = gtk.VBox() vbox_ready.pack_start(self.lcd_ready_l1) vbox_ready.pack_start(self.lcd_ready_l2) ready_frame.add(vbox_ready) vbox_lcd.pack_start(ready_frame) #---Reading------------------ self.lcd_reading_l1 = gtk.Entry(self.lcd_size) self.lcd_reading_l2 = gtk.Entry(self.lcd_size) reading_frame = gtk.Frame(self.i18n.translate('Reading message')) vbox_reading = gtk.VBox() vbox_reading.pack_start(self.lcd_reading_l1) vbox_reading.pack_start(self.lcd_reading_l2) reading_frame.add(vbox_reading) vbox_lcd.pack_start(reading_frame) #---Done------------------ self.lcd_done_l1 = gtk.Entry(self.lcd_size) self.lcd_done_l2 = gtk.Entry(self.lcd_size) done_frame = gtk.Frame(self.i18n.translate('Done message')) vbox_done = gtk.VBox() vbox_done.pack_start(self.lcd_done_l1) vbox_done.pack_start(self.lcd_done_l2) done_frame.add(vbox_done) vbox_lcd.pack_start(done_frame) #---Error------------------ self.lcd_error_l1 = gtk.Entry(self.lcd_size) self.lcd_error_l2 = gtk.Entry(self.lcd_size) error_frame = gtk.Frame(self.i18n.translate('Error message')) vbox_error = gtk.VBox() vbox_error.pack_start(self.lcd_error_l1) vbox_error.pack_start(self.lcd_error_l2) error_frame.add(vbox_error) vbox_lcd.pack_start(error_frame) frame.add(vbox_lcd) label = gtk.Label(tabname) notebook.append_page(frame, label) #Output tabname = self.i18n.translate('Output') frame = gtk.Frame(tabname) frame.set_border_width(10) frame.set_size_request(100, 75) fixed_output = gtk.Fixed() #Keyboard send string self.keyboard_string = gtk.Entry(0) hbox_keyboard = gtk.HBox() hbox_keyboard.pack_start(gtk.Label(self.i18n.translate('Keyboard output string'))) hbox_keyboard.pack_start(self.keyboard_string) hbox_keyboard.set_size_request(350, -1) fixed_output.put(hbox_keyboard, 0, 0) #language self.langbox = gtk.combo_box_new_text() cnt = 0 if self.languages: for l in self.languages: self.langbox.append_text(l) if l == self.configuration['device']['language']: self.langbox.set_active(cnt) cnt = cnt + 1 else: self.langbox.append_text(self.i18n.translate('No laguage files found')) self.langbox.set_active(0) self.langbox.set_sensitive(False) hbox_lang = gtk.HBox() hbox_lang.pack_start(gtk.Label(self.i18n.translate('Language'))) hbox_lang.pack_start(self.langbox) hbox_lang.set_size_request(350, -1) fixed_output.put(hbox_lang, 0, 50) frame.add(fixed_output) label = gtk.Label(tabname) notebook.append_page(frame, label) #Card #tabname = 'Card' #frame = gtk.Frame(tabname) #frame.set_border_width(10) #frame.set_size_request(100, 75) #self.block = gtk.Entry(3) #vbox_card = gtk.VBox() #block_label= gtk.Label('Block') #block_box = gtk.HBox() #block_box.pack_start(block_label) #block_box.pack_start(self.block) #key_box = gtk.HBox() #key_label= gtk.Label('Key') #key_box.pack_start(key_label) #for i in range(1,6): # self.key = gtk.Entry(3) # self.key.set_width_chars(3) # key_box.pack_start(self.key) #vbox_card.pack_start(block_box) #vbox_card.pack_start(key_box) #frame.add(vbox_card) #label = gtk.Label(tabname) #notebook.append_page(frame, label) #table.attach(notebook, 0,6,0,1) fixed = gtk.Fixed() notebook.set_size_request(500,500) fixed.put(notebook, 0, 0) #Configure OK button button_ok_config = gtk.Button(stock=gtk.STOCK_OK) button_ok_config.connect("clicked", self.set_config, None) fixed.put(button_ok_config, 350, 513) button_storno_config = gtk.Button(stock=gtk.STOCK_CANCEL) button_storno_config.connect("clicked", self.hide_configure, None) fixed.put(button_storno_config, 155, 513) self.configure_win.set_resizable(False) self.configure_win.add(fixed) #************ #Write window #************ # create a new write window self.write_win = gtk.Window(gtk.WINDOW_TOPLEVEL) self.write_win.set_position(gtk.WIN_POS_CENTER) self.write_win.set_title(self.i18n.translate('Write data')) self.write_win.connect("delete_event", self.hide_write) # Sets the border width of the window. self.write_win.set_border_width(10) self.button = gtk.Button(stock=gtk.STOCK_OK) self.button.connect("clicked", self.set_write, None) self.write_data = gtk.Entry(16) self.write_data.connect("activate", self.set_write, None) vbox = gtk.VBox() vbox.pack_start(self.write_data) vbox.pack_start(self.button) self.write_win.add(vbox) #***************** #Check card window #***************** # create a new check window self.check_card_window = gtk.Window(gtk.WINDOW_TOPLEVEL) self.check_card_window.set_position(gtk.WIN_POS_CENTER) self.check_card_window.set_title(self.i18n.translate('Check card')) self.check_card_window.connect("delete_event", self.hide_check_card) # Sets the border width of the window. self.check_card_window.set_border_width(10) self.button = gtk.Button(stock=gtk.STOCK_OK) self.button.connect("clicked", self.hide_check_card, None) vbox = gtk.VBox() self.check_uid = gtk.Label() self.check_data = gtk.Label() vbox.pack_start(self.check_uid) vbox.pack_start(self.check_data) vbox.pack_start(self.button) self.check_card_window.add(vbox) #************ #Systray ICON #************ self.statusicon = gtk.StatusIcon() if self.icon: self.statusicon.set_from_file(self.icon) #self.statusicon.connect("activate",self.configure) #************ #systray MENU #************ menu = gtk.Menu() #connect self.menuItemConn = gtk.ImageMenuItem(gtk.STOCK_CONNECT) self.menuItemConn.connect('activate', self.connect, self.statusicon) menu.append(self.menuItemConn) #disconnect self.menuItemDconn = gtk.ImageMenuItem(gtk.STOCK_DISCONNECT) self.menuItemDconn.connect('activate', self.disconnect, self.statusicon) self.menuItemDconn.set_sensitive(False) menu.append(self.menuItemDconn) #read self.menuItemRead = gtk.ImageMenuItem(self.i18n.translate('Read')) self.menuItemRead.connect('activate', self.read_card, self.statusicon) self.menuItemRead.set_sensitive(False) menu.append(self.menuItemRead) #write self.menuItemWrite = gtk.ImageMenuItem(self.i18n.translate('Write')) self.menuItemWrite.connect('activate', self.write, self.statusicon) self.menuItemWrite.set_sensitive(False) menu.append(self.menuItemWrite) #Check card self.menuItemCheck = gtk.ImageMenuItem(self.i18n.translate('Check card')) self.menuItemCheck.connect('activate', self.check_card, self.statusicon) self.menuItemCheck.set_sensitive(False) menu.append(self.menuItemCheck) #configure self.menuItemConf = gtk.ImageMenuItem(gtk.STOCK_PREFERENCES) self.menuItemConf.connect('activate', self.configure, self.statusicon) menu.append(self.menuItemConf) #Polling self.menuItemPolling = gtk.CheckMenuItem(self.i18n.translate('Enable Polling')) self.menuItemPolling.set_sensitive(False) self.menuItemPolling.connect('activate', self.polling, self.statusicon) menu.append(self.menuItemPolling) #backlight self.menuItemBlight = gtk.CheckMenuItem(self.i18n.translate('Enable Backlight')) self.menuItemBlight.set_sensitive(False) if self.configuration['lcd']['lcd_backlight']: self.menuItemBlight.set_active(True) self.menuItemBlight.connect('activate', self.back_light, self.statusicon) menu.append(self.menuItemBlight) #About self.menuItemQit = gtk.ImageMenuItem(gtk.STOCK_ABOUT) self.menuItemQit.connect('activate', self.show_about, self.statusicon) menu.append(self.menuItemQit) #quit button self.menuItemQit = gtk.ImageMenuItem(gtk.STOCK_QUIT) self.menuItemQit.connect('activate', self.destroy, self.statusicon) menu.append(self.menuItemQit) self.statusicon.connect("popup-menu",self.popup_menu_cb, menu) if self.first_run: self.configure()
data["artists_mbid"] = [] for artist_mbid in metadata["MusicBrainz/Artist Id"]: data["artists_mbid"].append(str(artist_mbid)) except KeyError: data["artists_mbid"] = None try: data["album_title"] = str(metadata["WM/AlbumTitle"][0]) except KeyError: data["album_title"] = None try: data["album_mbid"] = str(metadata["MusicBrainz/Album Id"][0]) except KeyError: data["album_mbid"] = None try: data["album_year"] = str(metadata["WM/OriginalReleaseYear"][0]) except KeyError: data["album_year"] = None return data def transcode(source_path, new_path, delete_files): ffmpeg.input(source_path).output(new_path).run(quiet=True) # Delete original file if the user wants to do so if delete_files: os.remove(source_path) _ = i18n.i18n("file_import", settings.get_language())._
async def send(self, wind: Wind, desc: str): self.messages[wind] = await self.players[wind].send( embed=discord.Embed(title=i18n(self.players[wind], 'room-status'), description=desc))
# Renan Çakırerk <renan at pardus.org.tr> # # 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 Library 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. # (See COPYING) from i18n import i18n # Application Data appName = "quickformat" programName = i18n("Quick Format") version = "1.0.0" description = i18n("Removable Device Formatting Tool") license = "GPLv2" copyright = i18n("(c) 2011 TUBITAK/BILGEM") text = i18n(None) homePage = "http://www.pardus.org.tr/eng/projects" bugEmail = "*****@*****.**" catalog = appName
def row_col(self): return '%s %s, %s %s' % (i18n.i18n('line'), self.row, i18n.i18n('column'), self.col)
else: assert False, "Paramètre inconnu" general.configuration = Configuration() #Charge la configuration par défaut general.configuration.charge(os.path.join(".","configuration","defaut.cfg")) if fichierConfig == None: #Si on a une configuration utilisateur, on écrase celle par défaut general.configuration.charge(os.path.join(".","configuration","utilisateur.cfg"), erreurSiExistePas=False) else: #Si on a un fichier de config donné par ligne de commande, on l'utilise general.configuration.charge(fichierConfig, erreurSiExistePas=False) #On initialise l'internationalisation general.i18n = i18n(langue=general.configuration.getConfiguration("affichage","langue", "langue", "french", str)) from pandac.PandaModules import * #Change le titre de la fenêtre loadPrcFileData("",u"window-title Planète".encode("iso8859")) #Change le dossier où sera stocké les données temporaires loadPrcFileData("","model-cache-dir ./data/cache/") #Debug si les nuages déconnent #loadPrcFileData("","hardware-point-sprites 0") #Change la résolution de la fenêtre resolution = general.configuration.getConfiguration("affichage", "general", "resolution", "640 480", str) if resolution == "0 0": print "Avertissement :: resolution de 0, démarrage sans fenêtre" loadPrcFileData("",u"window-type none")
def __init__(self, parent): PAbstractBox.__init__(self, parent) self.verticalLayout = QtGui.QVBoxLayout(self) self.verticalLayout.setSpacing(20) self.verticalLayout.setObjectName("verticalLayout") spacerItem = QtGui.QSpacerItem(20, 139, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout.addItem(spacerItem) self.horizontalLayout_2 = QtGui.QHBoxLayout() self.horizontalLayout_2.setSpacing(10) self.horizontalLayout_2.setObjectName("horizontalLayout_2") spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_2.addItem(spacerItem1) self.icon = QtGui.QLabel(self) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(32) sizePolicy.setVerticalStretch(32) sizePolicy.setHeightForWidth(self.icon.sizePolicy().hasHeightForWidth()) self.icon.setSizePolicy(sizePolicy) self.icon.setMinimumSize(QtCore.QSize(32, 32)) self.icon.setMaximumSize(QtCore.QSize(32, 32)) self.icon.setText("") self.icon.setPixmap(QtGui.QPixmap(ICON_SUCCESS)) self.icon.setAlignment(QtCore.Qt.AlignCenter) self.icon.setObjectName("icon") self.horizontalLayout_2.addWidget(self.icon) self.busy = QProgressIndicator(self, "white") self.busy.setFixedSize(30, 30) self.horizontalLayout_2.addWidget(self.busy) self.label = QtGui.QLabel(self) self.label.setText(" ") self.label.setMinimumHeight(30) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth()) self.label.setSizePolicy(sizePolicy) self.label.setAlignment(QtCore.Qt.AlignCenter) # Word wrap self.label.setWordWrap(False) self.label.setIndent(0) self.label.setObjectName("label") self.horizontalLayout_2.addWidget(self.label) spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_2.addItem(spacerItem2) self.verticalLayout.addLayout(self.horizontalLayout_2) self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem3) self.okButton = QtGui.QPushButton(self) self.okButton.setStyleSheet("color: #222222") self.okButton.setObjectName("okButton") self.okButton.setText(i18n("OK")) self.okButton.hide() self.horizontalLayout.addWidget(self.okButton) spacerItem4 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem4) self.verticalLayout.addLayout(self.horizontalLayout) spacerItem5 = QtGui.QSpacerItem(20, 138, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout.addItem(spacerItem5) self._animation = 2 self._duration = 500 self.okButton.clicked.connect(self.hideBox)
def __init__(self, parent): PAbstractBox.__init__(self, parent) self.verticalLayout = QtGui.QVBoxLayout(self) self.verticalLayout.setSpacing(20) self.verticalLayout.setObjectName("verticalLayout") spacerItem = QtGui.QSpacerItem(20, 139, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout.addItem(spacerItem) self.horizontalLayout_2 = QtGui.QHBoxLayout() self.horizontalLayout_2.setSpacing(10) self.horizontalLayout_2.setObjectName("horizontalLayout_2") spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_2.addItem(spacerItem1) self.icon = QtGui.QLabel(self) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(32) sizePolicy.setVerticalStretch(32) sizePolicy.setHeightForWidth( self.icon.sizePolicy().hasHeightForWidth()) self.icon.setSizePolicy(sizePolicy) self.icon.setMinimumSize(QtCore.QSize(32, 32)) self.icon.setMaximumSize(QtCore.QSize(32, 32)) self.icon.setText("") self.icon.setPixmap(QtGui.QPixmap(ICON_SUCCESS)) self.icon.setAlignment(QtCore.Qt.AlignCenter) self.icon.setObjectName("icon") self.horizontalLayout_2.addWidget(self.icon) self.busy = QProgressIndicator(self, "white") self.busy.setFixedSize(30, 30) self.horizontalLayout_2.addWidget(self.busy) self.label = QtGui.QLabel(self) self.label.setText(" ") self.label.setMinimumHeight(30) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.label.sizePolicy().hasHeightForWidth()) self.label.setSizePolicy(sizePolicy) self.label.setAlignment(QtCore.Qt.AlignCenter) # Word wrap self.label.setWordWrap(False) self.label.setIndent(0) self.label.setObjectName("label") self.horizontalLayout_2.addWidget(self.label) spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_2.addItem(spacerItem2) self.verticalLayout.addLayout(self.horizontalLayout_2) self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem3) self.okButton = QtGui.QPushButton(self) self.okButton.setStyleSheet("color: #222222") self.okButton.setObjectName("okButton") self.okButton.setText(i18n("OK")) self.okButton.hide() self.horizontalLayout.addWidget(self.okButton) spacerItem4 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem4) self.verticalLayout.addLayout(self.horizontalLayout) spacerItem5 = QtGui.QSpacerItem(20, 138, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout.addItem(spacerItem5) self._animation = 2 self._duration = 500 self.okButton.clicked.connect(self.hideBox)